CProductBase Class Reference

The base class for all plug-in created object. More...

#include <mia/core/product_base.hh>

Inheritance diagram for CProductBase:
[legend]
Collaboration diagram for CProductBase:
[legend]

Public Member Functions

const char * get_init_string () const
 
void set_init_string (const char *init)
 
void set_module (PPluginModule module)
 
- Public Member Functions inherited from CPropertyFlagHolder
void add (const char *property)
 
Set get_missing_properties (const CPropertyFlagHolder &testset) const
 
bool has (const char *property) const
 
bool has_all_in (const CPropertyFlagHolder &testset) const
 
virtual ~CPropertyFlagHolder ()
 

Additional Inherited Members

- Public Types inherited from CPropertyFlagHolder
typedef std::set< const char * > Set
 define the type of the set of flags More...
 

Detailed Description

The base class for all plug-in created object.

Base of all objects that are created from within plug-ins using a factory method. It also holds the creator string for the instance of the created object.

Remarks
The pointer to the modules should take care that the module is valid until the object is destroyed.

Definition at line 40 of file product_base.hh.

Member Function Documentation

◆ get_init_string()

const char* CProductBase::get_init_string ( ) const
Returns
the init string used to create this instance

◆ set_init_string()

void CProductBase::set_init_string ( const char *  init)

Set the string used to create this object using its factory.

Parameters
initinit string

◆ set_module()

void CProductBase::set_module ( PPluginModule  module)

Set the plugin module which holds the code for this object

Parameters
module
Remarks
In a perfect world, the module could be unloaded after all instances of the class using its code are destroyed. Unfortunately, the destructor still required the code after dereferencing the module.

The documentation for this class was generated from the following file: