33 #ifndef GEOMTOOLS_MANAGER_H 34 #define GEOMTOOLS_MANAGER_H 1 42 #include <boost/scoped_ptr.hpp> 43 #include <boost/shared_ptr.hpp> 110 virtual int reset() = 0;
140 std::vector<std::string> _geom_setup_requirements_;
164 const std::string&
get_name()
const;
167 const std::string&
get_id()
const;
209 virtual void tree_dump(std::ostream & out_ = std::clog,
210 const std::string & title_ =
"",
211 const std::string & indent_ =
"",
212 bool inherit_ =
false)
const;
316 const std::string& plugin_id_,
318 bool only_lock_ =
false);
321 bool only_lock_ =
false);
331 bool is_plugin_a(
const std::string & a_plugin_name)
const;
343 const T&
get_plugin(
const std::string & a_plugin_name)
const;
348 bool has_plugin(
const std::string & a_plugin_name)
const;
351 const std::string& title =
"",
352 const std::string& indent =
"")
const;
361 template <
class PluginClass>
385 virtual void tree_dump(std::ostream & out_ = std::clog,
386 const std::string & title_ =
"",
387 const std::string & indent_ =
"",
388 bool inherit_ =
false)
const;
401 const std::string & command_,
402 const std::string & rules_ =
"",
403 std::ostream & out_ = std::clog);
412 const std::string&
id,
438 std::string _setup_label_;
439 std::string _setup_version_;
440 std::string _setup_description_;
447 bool _mapping_requested_;
451 std::string _world_name_;
453 bool _plugins_factory_preload_;
454 bool _plugins_force_initialization_at_load_;
455 base_plugin::factory_register_type _plugins_factory_register_;
468 #include <geomtools/detail/manager-inl.h> 470 #endif // GEOMTOOLS_MANAGER_H
Not created not initialized.
Definition: manager.h:155
const datatools::properties & get_config() const
Set the configuration.
Internal record plugin handling.
Definition: manager.h:149
void set_name(const std::string &)
Set the name of the plugin.
std::string _id_
The ID (type) of the plugin.
Definition: manager.h:222
datatools::properties _config_
The configuration of the plugin.
Definition: manager.h:224
status_type
Status of a plugin entry.
Definition: manager.h:154
bool is_initialized() const
Check if plugin is initialized.
void set_description(const std::string &)
Set the description of the plugin.
const std::string & get_description() const
Get the description of the plugin.
void _set_status(uint32_t)
Modify the status of the plugin entry.
bool is_created() const
Check if plugin is created.
plugin_entry()
Default constructor.
Created.
Definition: manager.h:156
bool can_be_dropped() const
Check if plugin can be dropped by the manager.
std::string _name_
Name of the plugin.
Definition: manager.h:221
Initialized.
Definition: manager.h:157
const std::string & get_id() const
Get the ID of the plugin.
const std::string & get_name() const
Get the name of the plugin.
plugin_handle_type _handle_
Handle to the plugin.
Definition: manager.h:226
virtual void tree_dump(std::ostream &out_=std::clog, const std::string &title_="", const std::string &indent_="", bool inherit_=false) const
Smart print.
DOCD_CLASS_DECLARATION(my::algo)
Declaration of the OCD support for the my::algo class.
base_plugin & grab()
Return a reference to the mutable plugin.
void set_config(const datatools::properties &)
Get the configuration.
const base_plugin & get() const
Return a reference to the non mutable plugin.
std::string _description_
Description of the plugin.
Definition: manager.h:223
Utilities for logging information.
datatools::properties & grab_config()
Grab the configuration.
~plugin_entry()
Destructor.
#define DATATOOLS_FACTORY_SYSTEM_REGISTER_INTERFACE(BaseType)
Declaration of a system (allocator/functor) factory register as a static member of a base class and s...
Definition: factory_macros.h:52
uint32_t _status_
Status of the plugin.
Definition: manager.h:225
bool has_description() const
Check is the description is not empty.