25 #ifndef __UTILS_SYSTEM_DYNAMIC_MODULE_MODULE_H_ 26 #define __UTILS_SYSTEM_DYNAMIC_MODULE_MODULE_H_ 28 #include <core/exception.h> 45 MODULE_FLAGS_NONE = 0,
46 MODULE_FLAGS_DEFAULT= 0x000E,
49 MODULE_BIND_LAZY = 0x0001,
59 MODULE_BIND_NOW = 0x0002,
65 MODULE_BIND_LOCAL = 0x0000,
73 MODULE_BIND_GLOBAL = 0x0004,
78 MODULE_BIND_MASK = 0x0003,
81 MODULE_BIND_DEEP = 0x0008,
89 MODULE_NODELETE = 0x1000
101 virtual bool close();
103 virtual void unref();
104 virtual bool notref();
105 virtual unsigned int get_ref_count();
106 virtual bool has_symbol(
const char *symbol_name);
107 virtual void * get_symbol(
const char *symbol_name);
108 virtual std::string get_filename();
109 virtual std::string get_base_filename();
110 virtual bool operator==(
const Module &cmod);
112 static const char * get_file_extension();
115 static const char *FILE_EXTENSION;
118 std::string __filename;
121 unsigned int __ref_count;
ModuleOpenException(const char *msg)
Constructor.
BlackBoard::ListenerRegisterFlag operator|(const BlackBoard::ListenerRegisterFlag &a, const BlackBoard::ListenerRegisterFlag &b)
Concatenation of register flags.
Fawkes library namespace.
ModuleFlags
Flags for the loading process.
Dynamic module loader for Linux, FreeBSD, and MacOS X.
Base class for exceptions in Fawkes.