30 #ifndef __TERRALIB_CORE_PLUGIN_CPPPLUGIN_H__
31 #define __TERRALIB_CORE_PLUGIN_CPPPLUGIN_H__
82 #define TERRALIB_CPP_PLUGIN_BEGIN(plugin_class_name) \
83 class plugin_class_name : public te::core::CppPlugin \
87 plugin_class_name(const te::core::PluginInfo& pinfo) \
88 : te::core::CppPlugin(pinfo) \
92 #define TERRALIB_CPP_PLUGIN_STARTUP \
95 #define TERRALIB_CPP_PLUGIN_SHUTDOWN \
98 #define TERRALIB_CPP_PLUGIN_END(plugin_class_name) \
100 TERRALIB_PLUGIN_CALL_BACK_IMPL(plugin_class_name)
103 #define TERRALIB_PLUGIN_EXPORT_MACRO __declspec(dllexport)
105 #define TERRALIB_PLUGIN_EXPORT_MACRO
109 #define TERRALIB_PLUGIN_CALL_BACK_IMPL(PLUGIN_CLASS_NAME) \
110 extern "C" TERRALIB_PLUGIN_EXPORT_MACRO te::core::CppPlugin* te_cpp_plugin_get_instance(const te::core::PluginInfo& pinfo); \
112 te::core::CppPlugin* te_cpp_plugin_get_instance(const te::core::PluginInfo& pinfo) \
114 return new PLUGIN_CLASS_NAME(pinfo); \
The base class for plugins in TerraLib.
The base class for plugins in TerraLib.
The base class for C++ plugins.
CppPlugin(const PluginInfo &pinfo)
Default constructor.
virtual ~CppPlugin()
Virtual destructor.
bool initialized() const
It returns true or false if the CppPlugin was initialized.
const PluginInfo & info() const
It returns the PluginInfo of the CppPlugin.
Basic information about a plugin.