]> Creatis software - cpPlugins.git/blobdiff - lib/cpPlugins/Interface/Macros.h
...
[cpPlugins.git] / lib / cpPlugins / Interface / Macros.h
index 85a9d089a81ff50a47b2f43e296e52b5bfef92e8..922d036c4a1bd422cabae919f985e1cd9bcee88f 100644 (file)
@@ -1,58 +1,14 @@
 #ifndef __CPPLUGINS__INTERFACE__MACROS__H__
 #define __CPPLUGINS__INTERFACE__MACROS__H__
 
-#include <Pluma/Pluma.hpp>
 #include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
 #include <cpPlugins/Interface/Config.h>
 
 // -------------------------------------------------------------------------
-#define cpPlugins_Id_Macro( name, category )                            \
+#define cpPlugins_Id_Macro( N, C )                                      \
   public:                                                               \
-  virtual std::string GetClassName( ) { return( #name ); }              \
-  virtual std::string GetClassCategory( ) { return( category ); }
-
-// -------------------------------------------------------------------------
-#define CPPLUGINS_PROVIDER_HEADER_BEGIN( TYPE )                 \
-  class cpPlugins_Interface_EXPORT TYPE##Provider               \
-    : public pluma::Provider                                    \
-  {                                                             \
-private:                                                        \
-    friend class pluma::Pluma;                                  \
-    static const unsigned int PLUMA_INTERFACE_VERSION;          \
-    static const unsigned int PLUMA_INTERFACE_LOWEST_VERSION;   \
-    static const std::string PLUMA_PROVIDER_TYPE;               \
-    std::string plumaGetType( ) const                           \
-    { return( PLUMA_PROVIDER_TYPE ); }                          \
-public:                                                         \
-    unsigned int getVersion( ) const                            \
-    { return( PLUMA_INTERFACE_VERSION ); }
-
-// -------------------------------------------------------------------------
-#define CPPLUGINS_PROVIDER_HEADER_END };
-
-// -------------------------------------------------------------------------
-#define CPPLUGINS_PROVIDER_HEADER( TYPE )               \
-  CPPLUGINS_PROVIDER_HEADER_BEGIN( TYPE )               \
-  virtual TYPE::Pointer create( ) const = 0;            \
-  CPPLUGINS_PROVIDER_HEADER_END
-
-// -------------------------------------------------------------------------
-#define CPPLUGINS_PROVIDER_SOURCE( TYPE, Version, LowestVersion )       \
-  PLUMA_PROVIDER_SOURCE( TYPE, Version, LowestVersion )
-
-// -------------------------------------------------------------------------
-#define CPPLUGINS_INHERIT_PROVIDER( TYPE )                              \
-  class TYPE##Provider                                                  \
-    : public cpPlugins::Interface::ProcessObjectProvider                \
-  {                                                                     \
-  public:                                                               \
-    cpPlugins::Interface::Object::Pointer create( ) const               \
-    {                                                                   \
-      TYPE::Pointer a = TYPE::New( );                                   \
-      cpPlugins::Interface::Object::Pointer b = a.GetPointer( );        \
-      return( b );                                                      \
-    }                                                                   \
-  };
+  virtual const char* GetClassName( ) const     { return( #N ); }       \
+  virtual const char* GetClassCategory( ) const { return( #C ); }
 
 /**
  * Based upon: http://www.itk.org/Wiki/Proposals:Explicit_Instantiation