Salome HOME
Porting SALOME COMPONENT module to win32 platform.
[samples/component.git] / src / TestFunctions / DynInvoke.hxx
index 9847ef995a1e0d912e9e6192da93c077b1cfe4d3..4e68df58e8f4d8c0d145d54250abb42ed07467f1 100644 (file)
 #ifndef _DYNINVOKE_
 #define _DYNINVOKE_
 
+#ifdef WIN32
+# if defined DYNINVOKE_EXPORTS || defined DynInvoke_EXPORTS
+#  define DYNINVOKE_EXPORT __declspec( dllexport )
+# else
+#  define DYNINVOKE_EXPORT __declspec( dllimport )
+# endif
+#else
+# define DYNINVOKE_EXPORT
+#endif
+
 struct ServicesAnyData {
 
   std::string Name;
@@ -38,9 +48,9 @@ struct ServicesAnyData {
 // dynamic call for function with list of in parameters, followed 
 // by out parameters with no return value
 
-void DynInvoke(Engines::EngineComponent_ptr obj,
-              const char *method, 
-              ServicesAnyData * inParams, int nInParams,
-              ServicesAnyData * outParams, int nOutParams);
+void DYNINVOKE_EXPORT DynInvoke(Engines::EngineComponent_ptr obj,
+                            const char *method, 
+                            ServicesAnyData * inParams, int nInParams,
+                            ServicesAnyData * outParams, int nOutParams);
 
 #endif