Salome HOME
Copyright update 2021
[samples/component.git] / src / SyrComponent / SyrComponent_Impl.hxx
old mode 100755 (executable)
new mode 100644 (file)
index 35d94f3..72a90bd
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2021  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -6,7 +6,7 @@
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 #ifndef _SYRCOMPONENT_IMPL_HXX_
 #define _SYRCOMPONENT_IMPL_HXX_
 
+#ifdef WIN32
+# if defined SYRCOMPONENTENGINE_EXPORTS || defined SyrComponentEngine_EXPORTS                                                   
+#  define SYRCOMPONENTENGINE_EXPORT __declspec( dllexport )
+# else
+#  define SYRCOMPONENTENGINE_EXPORT __declspec( dllimport )
+# endif
+#else
+# define SYRCOMPONENTENGINE_EXPORT
+#endif
+
 //#include <iostream.h>
 #include <SALOMEconfig.h>
 #include CORBA_SERVER_HEADER(SyrComponent)
 #include CORBA_SERVER_HEADER(SALOME_Component)
 #include "SALOME_Component_i.hxx"
 
-class SyrComponent_Impl :  public POA_SuperVisionTest::SyrComponent ,
-                           public Engines_Component_i {
+class SYRCOMPONENTENGINE_EXPORT SyrComponent_Impl : public POA_SuperVisionTest::SyrComponent,
+                                                      public Engines_Component_i {
 public:
   SyrComponent_Impl() ;
   SyrComponent_Impl( CORBA::ORB_ptr orb ,
@@ -85,8 +95,8 @@ private:
   long _Count ;
 };
 
-class ListOfSyr_Impl :  public POA_SuperVisionTest::ListOfSyr ,
-                        public Engines_Component_i {
+class SYRCOMPONENTENGINE_EXPORT ListOfSyr_Impl :  public POA_SuperVisionTest::ListOfSyr ,
+                                                   public Engines_Component_i {
 public:
   ListOfSyr_Impl( CORBA::ORB_ptr orb ,
                  PortableServer::POA_ptr poa ,
@@ -110,6 +120,7 @@ private:
 };
 
 extern "C"
+  SYRCOMPONENTENGINE_EXPORT
   PortableServer::ObjectId * SyrComponentEngine_factory
                                    ( CORBA::ORB_ptr orb ,
                                      PortableServer::POA_ptr poa , 
@@ -117,8 +128,8 @@ extern "C"
                                      const char *instanceName ,
                                      const char *interfaceName ) ;
 
-class Syr_Impl :  public POA_SuperVisionTest::Syr ,
-                  public SyrComponent_Impl {
+class SYRCOMPONENTENGINE_EXPORT Syr_Impl :  public POA_SuperVisionTest::SyrComponent ,
+                                             public SyrComponent_Impl {
 public:
   Syr_Impl() ;
   Syr_Impl( CORBA::ORB_ptr orb ,