diff --git a/Modules/Core/ComponentInterface/ComponentBase.h b/Modules/Core/ComponentInterface/include/ComponentBase.h similarity index 87% rename from Modules/Core/ComponentInterface/ComponentBase.h rename to Modules/Core/ComponentInterface/include/ComponentBase.h index 77571d97e4efa5c3a988015cef84a774c9a39123..1fb89f4a62dfb4a8e3925960819538c3e2140357 100644 --- a/Modules/Core/ComponentInterface/ComponentBase.h +++ b/Modules/Core/ComponentInterface/include/ComponentBase.h @@ -10,8 +10,8 @@ namespace elx class ComponentBase { public: virtual interfaceStatus ConnectFrom(const char *, ComponentBase*) = 0; - protected: - virtual ~ComponentBase(){}; + //protected: + virtual ~ComponentBase() {}; }; } // end namespace elx #endif // #define ComponentBase_h \ No newline at end of file diff --git a/Modules/Core/ComponentInterface/Example3rdPartyCode.h b/Modules/Core/ComponentInterface/include/Example3rdPartyCode.h similarity index 100% rename from Modules/Core/ComponentInterface/Example3rdPartyCode.h rename to Modules/Core/ComponentInterface/include/Example3rdPartyCode.h diff --git a/Modules/Core/ComponentInterface/Example4thPartyCode.h b/Modules/Core/ComponentInterface/include/Example4thPartyCode.h similarity index 100% rename from Modules/Core/ComponentInterface/Example4thPartyCode.h rename to Modules/Core/ComponentInterface/include/Example4thPartyCode.h diff --git a/Modules/Core/ComponentInterface/GDOptimizer3rdPartyComponent.h b/Modules/Core/ComponentInterface/include/GDOptimizer3rdPartyComponent.h similarity index 94% rename from Modules/Core/ComponentInterface/GDOptimizer3rdPartyComponent.h rename to Modules/Core/ComponentInterface/include/GDOptimizer3rdPartyComponent.h index c584235d0b7311cd6a1db54c57076439c520f028..1d281e9b9fa7541e14721693433c8f307937578a 100644 --- a/Modules/Core/ComponentInterface/GDOptimizer3rdPartyComponent.h +++ b/Modules/Core/ComponentInterface/include/GDOptimizer3rdPartyComponent.h @@ -18,7 +18,7 @@ namespace elx { public: GDOptimizer3rdPartyComponent(); - ~GDOptimizer3rdPartyComponent(); + virtual ~GDOptimizer3rdPartyComponent(); Example3rdParty::GDOptimizer3rdParty* theImplementation; Metric3rdPartyWrapper* MetricObject; //virtual int ConnectFrom(const char *, ComponentBase*); diff --git a/Modules/Core/ComponentInterface/GDOptimizer4thPartyComponent.h b/Modules/Core/ComponentInterface/include/GDOptimizer4thPartyComponent.h similarity index 94% rename from Modules/Core/ComponentInterface/GDOptimizer4thPartyComponent.h rename to Modules/Core/ComponentInterface/include/GDOptimizer4thPartyComponent.h index 29f03e9639b0f223992d1aeea24c655995e17875..eff1bb78cd856c4f9b6ae6088c2b5d555fb05077 100644 --- a/Modules/Core/ComponentInterface/GDOptimizer4thPartyComponent.h +++ b/Modules/Core/ComponentInterface/include/GDOptimizer4thPartyComponent.h @@ -18,7 +18,7 @@ namespace elx { public: GDOptimizer4thPartyComponent(); - ~GDOptimizer4thPartyComponent(); + virtual ~GDOptimizer4thPartyComponent(); Example4thParty::GDOptimizer4thParty* theImplementation; Metric4thPartyWrapper* MetricObject; //virtual int ConnectFrom(const char *, ComponentBase*); diff --git a/Modules/Core/ComponentInterface/Interfaces.hxx b/Modules/Core/ComponentInterface/include/Interfaces.hxx similarity index 100% rename from Modules/Core/ComponentInterface/Interfaces.hxx rename to Modules/Core/ComponentInterface/include/Interfaces.hxx diff --git a/Modules/Core/ComponentInterface/Metric3rdPartyWrapper.h b/Modules/Core/ComponentInterface/include/Metric3rdPartyWrapper.h similarity index 100% rename from Modules/Core/ComponentInterface/Metric3rdPartyWrapper.h rename to Modules/Core/ComponentInterface/include/Metric3rdPartyWrapper.h diff --git a/Modules/Core/ComponentInterface/Metric4thPartyWrapper.h b/Modules/Core/ComponentInterface/include/Metric4thPartyWrapper.h similarity index 100% rename from Modules/Core/ComponentInterface/Metric4thPartyWrapper.h rename to Modules/Core/ComponentInterface/include/Metric4thPartyWrapper.h diff --git a/Modules/Core/ComponentInterface/SSDMetric3rdPartyComponent.h b/Modules/Core/ComponentInterface/include/SSDMetric3rdPartyComponent.h similarity index 93% rename from Modules/Core/ComponentInterface/SSDMetric3rdPartyComponent.h rename to Modules/Core/ComponentInterface/include/SSDMetric3rdPartyComponent.h index e789950ac4e3223f4d613a8edbd4e7c110e3a3e2..860398a559b4862de5c5a9bc923e669b652b8f04 100644 --- a/Modules/Core/ComponentInterface/SSDMetric3rdPartyComponent.h +++ b/Modules/Core/ComponentInterface/include/SSDMetric3rdPartyComponent.h @@ -16,7 +16,7 @@ namespace elx { public: SSDMetric3rdPartyComponent(); - ~SSDMetric3rdPartyComponent(); + virtual ~SSDMetric3rdPartyComponent(); Example3rdParty::SSDMetric3rdParty* theImplementation; int GetValue(); int GetDerivative(); diff --git a/Modules/Core/ComponentInterface/SSDMetric4thPartyComponent.h b/Modules/Core/ComponentInterface/include/SSDMetric4thPartyComponent.h similarity index 93% rename from Modules/Core/ComponentInterface/SSDMetric4thPartyComponent.h rename to Modules/Core/ComponentInterface/include/SSDMetric4thPartyComponent.h index 26685c74fd4f941ebc339a78e4471fc6f71ce2b3..c07ff0abce595d7f55e6dda9c8aaaed38d19237c 100644 --- a/Modules/Core/ComponentInterface/SSDMetric4thPartyComponent.h +++ b/Modules/Core/ComponentInterface/include/SSDMetric4thPartyComponent.h @@ -16,7 +16,7 @@ namespace elx { public: SSDMetric4thPartyComponent(); - ~SSDMetric4thPartyComponent(); + virtual ~SSDMetric4thPartyComponent(); Example4thParty::SSDMetric4thParty* theImplementation; int GetValue(); }; diff --git a/Modules/Core/ComponentInterface/Example3rdPartyCode.cxx b/Modules/Core/ComponentInterface/src/Example3rdPartyCode.cxx similarity index 100% rename from Modules/Core/ComponentInterface/Example3rdPartyCode.cxx rename to Modules/Core/ComponentInterface/src/Example3rdPartyCode.cxx diff --git a/Modules/Core/ComponentInterface/Example4thPartyCode.cxx b/Modules/Core/ComponentInterface/src/Example4thPartyCode.cxx similarity index 100% rename from Modules/Core/ComponentInterface/Example4thPartyCode.cxx rename to Modules/Core/ComponentInterface/src/Example4thPartyCode.cxx diff --git a/Modules/Core/ComponentInterface/GDOptimizer3rdPartyComponent.cxx b/Modules/Core/ComponentInterface/src/GDOptimizer3rdPartyComponent.cxx similarity index 100% rename from Modules/Core/ComponentInterface/GDOptimizer3rdPartyComponent.cxx rename to Modules/Core/ComponentInterface/src/GDOptimizer3rdPartyComponent.cxx diff --git a/Modules/Core/ComponentInterface/GDOptimizer4thPartyComponent.cxx b/Modules/Core/ComponentInterface/src/GDOptimizer4thPartyComponent.cxx similarity index 100% rename from Modules/Core/ComponentInterface/GDOptimizer4thPartyComponent.cxx rename to Modules/Core/ComponentInterface/src/GDOptimizer4thPartyComponent.cxx diff --git a/Modules/Core/ComponentInterface/Metric3rdPartyWrapper.cxx b/Modules/Core/ComponentInterface/src/Metric3rdPartyWrapper.cxx similarity index 100% rename from Modules/Core/ComponentInterface/Metric3rdPartyWrapper.cxx rename to Modules/Core/ComponentInterface/src/Metric3rdPartyWrapper.cxx diff --git a/Modules/Core/ComponentInterface/Metric4thPartyWrapper.cxx b/Modules/Core/ComponentInterface/src/Metric4thPartyWrapper.cxx similarity index 100% rename from Modules/Core/ComponentInterface/Metric4thPartyWrapper.cxx rename to Modules/Core/ComponentInterface/src/Metric4thPartyWrapper.cxx diff --git a/Modules/Core/ComponentInterface/SSDMetric3rdPartyComponent.cxx b/Modules/Core/ComponentInterface/src/SSDMetric3rdPartyComponent.cxx similarity index 100% rename from Modules/Core/ComponentInterface/SSDMetric3rdPartyComponent.cxx rename to Modules/Core/ComponentInterface/src/SSDMetric3rdPartyComponent.cxx diff --git a/Modules/Core/ComponentInterface/SSDMetric4thPartyComponent.cxx b/Modules/Core/ComponentInterface/src/SSDMetric4thPartyComponent.cxx similarity index 100% rename from Modules/Core/ComponentInterface/SSDMetric4thPartyComponent.cxx rename to Modules/Core/ComponentInterface/src/SSDMetric4thPartyComponent.cxx diff --git a/Modules/Core/ComponentInterface/componenthandshake.cxx b/Modules/Core/ComponentInterface/src/componenthandshake.cxx similarity index 100% rename from Modules/Core/ComponentInterface/componenthandshake.cxx rename to Modules/Core/ComponentInterface/src/componenthandshake.cxx diff --git a/Modules/Core/elxModuleCore.cmake b/Modules/Core/elxModuleCore.cmake index 24e93a5aced2900241b50cb7df509fa9c1c03b00..f0db2453ac04f145970f8d3a8691f5a432a2e261 100644 --- a/Modules/Core/elxModuleCore.cmake +++ b/Modules/Core/elxModuleCore.cmake @@ -4,6 +4,7 @@ set( MODULE elxModuleCore ) set( ${MODULE}_INCLUDE_DIRS ${${MODULE}_SOURCE_DIR}/Common/include ${${MODULE}_SOURCE_DIR}/Blueprints/include + ${${MODULE}_SOURCE_DIR}/ComponentInterface/include ) # Export libraries @@ -14,8 +15,18 @@ set( ${MODULE}_LIBRARIES # Module source files set( ${MODULE}_SOURCE_FILES ${${MODULE}_SOURCE_DIR}/Blueprints/src/elxBlueprint.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/Example3rdPartyCode.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/Example4thPartyCode.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/GDOptimizer3rdPartyComponent.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/GDOptimizer4thPartyComponent.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/Metric3rdPartyWrapper.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/Metric4thPartyWrapper.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/SSDMetric3rdPartyComponent.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/SSDMetric4thPartyComponent.cxx + ${${MODULE}_SOURCE_DIR}/ComponentInterface/src/componenthandshake.cxx ) + # Compile library add_library( ${MODULE} STATIC "${${MODULE}_SOURCE_FILES}" ) diff --git a/Testing/Unit/CMakeLists.txt b/Testing/Unit/CMakeLists.txt index 06f783c2367e33d4d65317703aa29297a624bbe4..a20706ab79020617154a3afd278dd70243093549 100644 --- a/Testing/Unit/CMakeLists.txt +++ b/Testing/Unit/CMakeLists.txt @@ -6,6 +6,7 @@ set( ElastixUnitTestFilenames elxExampleUnitTest.cxx elxBlueprintTest.cxx + elxComponentInterfaceTest.cxx ) # ---------------------------------------------------------------------