#include <BDynamicLibCore.h>
This is the abstract class defining the interface used to manage a dynamic library, such as a Windows DLL, a Linux SO, etc. It includes methods to load and unload the library, and also to retrieve proxy objects from the library. A derived class must be implemented for each supported operating system.
Public Member Functions | |
| BDynamicLibCore (const BString &path, EDynamicLibType type) | |
| Constructor. | |
| virtual BDataManagerProxy * | GetDataManagerProxy (void) const =0 |
| Gets the BDataManagerProxy object for this dynamic library. | |
| virtual BDirectTransformerProxy * | GetDirectTransformerProxy (void) const =0 |
| Get the BDirectTransformerProxy object for this dynamic library. | |
| const BString & | GetPath (void) const |
| Gets the path to the dynamic library. | |
| EDynamicLibType | GetType (void) const |
| Gets the dynamic library type. | |
| virtual bool | IsLoaded (void) const =0 |
| Indicates whether or not this dynamic library is currently loaded into memory. | |
| virtual bool | Load (void)=0 |
| Loads the current dynamic library into memory. | |
| virtual void | Unload (void)=0 |
| Removes the current dynamic libarary from memory. | |
| virtual | ~BDynamicLibCore () |
| Destructor. | |
Static Public Member Functions | |
| static BDynamicLibCore * | CreateCore (const BString &path, EDynamicLibType type) |
| Factory constructor for BDynamicLibCore. | |
| static void | DeleteCore (BDynamicLibCore *pCore) |
| Deletes a BDynamicLibCore object. | |
Protected Member Functions | |
| BDynamicLibCore () | |
| Default constructor. | |
Protected Attributes | |
| BString | m_path |
| The path to the dynamic library. | |
| EDynamicLibType | m_type |
| The type of dynamic library contained herein. | |
| BDynamicLibCore | ( | const BString & | path, | |
| EDynamicLibType | type | |||
| ) | [inline] |
Constructor.
| path | The full path to the dynamic library. | |
| type | The type of dynamic library (reader, writer, etc). |
| virtual ~BDynamicLibCore | ( | ) | [inline, virtual] |
Destructor.
| BDynamicLibCore | ( | ) | [inline, protected] |
Default constructor.
This constructor is hidden to prevent its use.
| static BDynamicLibCore* CreateCore | ( | const BString & | path, | |
| EDynamicLibType | type | |||
| ) | [static] |
Factory constructor for BDynamicLibCore.
This will automatically create the appropriate derrived class for the current operating system.
| path | Full path to the dynamic library. | |
| type | The type of dynamic library (reader, writer, etc). |
| static void DeleteCore | ( | BDynamicLibCore * | pCore | ) | [inline, static] |
| virtual BDataManagerProxy* GetDataManagerProxy | ( | void | ) | const [pure virtual] |
Gets the BDataManagerProxy object for this dynamic library.
| virtual BDirectTransformerProxy* GetDirectTransformerProxy | ( | void | ) | const [pure virtual] |
Get the BDirectTransformerProxy object for this dynamic library.
| const BString& GetPath | ( | void | ) | const [inline] |
Gets the path to the dynamic library.
| EDynamicLibType GetType | ( | void | ) | const [inline] |
Gets the dynamic library type.
| virtual bool IsLoaded | ( | void | ) | const [pure virtual] |
Indicates whether or not this dynamic library is currently loaded into memory.
| virtual bool Load | ( | void | ) | [pure virtual] |
Loads the current dynamic library into memory.
| virtual void Unload | ( | void | ) | [pure virtual] |
Removes the current dynamic libarary from memory.
EDynamicLibType m_type [protected] |
The type of dynamic library contained herein.