CppUnit project page FAQ

DynamicLibraryManager.h
Go to the documentation of this file.
1#ifndef CPPUNIT_PLUGIN_DYNAMICLIBRARYMANAGER_H
2#define CPPUNIT_PLUGIN_DYNAMICLIBRARYMANAGER_H
3
5#include <string>
6
7#if !defined(CPPUNIT_NO_TESTPLUGIN)
8
10
11
35{
36public:
37 typedef void *Symbol;
38 typedef void *LibraryHandle;
39
45 DynamicLibraryManager( const std::string &libraryFileName );
46
49
55 Symbol findSymbol( const std::string &symbol );
56
57private:
63 void loadLibrary( const std::string &libraryName );
64
69 void releaseLibrary();
70
77 LibraryHandle doLoadLibrary( const std::string &libraryName );
78
86
93 Symbol doFindSymbol( const std::string &symbol );
94
103 std::string getLastErrorDetail() const;
104
107
110
111private:
113 std::string m_libraryName;
114};
115
116
118
119#endif // !defined(CPPUNIT_NO_TESTPLUGIN)
120
121#endif // CPPUNIT_PLUGIN_DYNAMICLIBRARYMANAGER_H
#define CPPUNIT_NS_END
Definition: Portability.h:106
#define CPPUNIT_NS_BEGIN
Definition: Portability.h:105
Manages dynamic libraries.
Definition: DynamicLibraryManager.h:35
~DynamicLibraryManager()
Releases the loaded library..
Definition: DynamicLibraryManager.cpp:17
void releaseLibrary()
Definition: DynamicLibraryManager.cpp:64
void loadLibrary(const std::string &libraryName)
Definition: DynamicLibraryManager.cpp:44
std::string m_libraryName
Definition: DynamicLibraryManager.h:113
LibraryHandle m_libraryHandle
Definition: DynamicLibraryManager.h:112
void * LibraryHandle
Definition: DynamicLibraryManager.h:38
Symbol findSymbol(const std::string &symbol)
Returns a pointer on the specified symbol exported by the library.
Definition: DynamicLibraryManager.cpp:24
void operator=(const DynamicLibraryManager &copy)
Prevents the use of the copy operator.
void * Symbol
Definition: DynamicLibraryManager.h:37
Symbol doFindSymbol(const std::string &symbol)
DynamicLibraryManager(const DynamicLibraryManager &copy)
Prevents the use of the copy constructor.
LibraryHandle doLoadLibrary(const std::string &libraryName)
std::string getLastErrorDetail() const

Send comments to:
CppUnit Developers