26 #ifndef __TERRALIB_COMMON_INTERNAL_TERRALIB_H 
   27 #define __TERRALIB_COMMON_INTERNAL_TERRALIB_H 
   81     typedef void (*StartupFptr)(void);
 
   88     typedef void (*CleanupFptr)(void);
 
  132     void initialize(
const std::size_t i);
 
  145     void initialize(
const std::string& moduleName);
 
  172     void finalize(
const std::size_t i);
 
  185     void finalize(
const std::string& moduleName);
 
  195     void add(
const Module& m);
 
  202     void remove(
const std::string& moduleName);
 
  209     void remove(
const std::size_t i);
 
  216     std::size_t getNumRegModules() 
const;
 
  225     std::size_t getModuleIdx(
const std::string& moduleName) 
const;
 
  234     const std::string& getModuleName(std::size_t i) 
const;
 
  268 #endif  // __TERRALIB_COMMON_INTERNAL_TERRALIB_H 
Template support for singleton pattern. 
 
CleanupFptr m_cleanupFptr
The module finalization routine. 
 
This internal structure is used to model the basic information about a TerraLib module. 
 
#define TECOMMONEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
std::vector< Module > m_modules
This static function is invoked automatically when the application finishes its execution. 
 
std::string m_name
The module name: an internal value used to identify the module in the system. Must be a unique value...
 
An utility class to control the startup and cleanup of the TerraLib Platform and its resources...
 
Template support for singleton pattern. 
 
Configuration flags for the TerraLib Common Runtime module. 
 
std::vector< bool > m_initialized
The list of modules to be initialized when initialize is called. 
 
StartupFptr m_startFptr
The module initialization routine.