vtkDynamicLoader.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00036 #ifndef __vtkDynamicLoader_h
00037 #define __vtkDynamicLoader_h
00038 #include "vtkObject.h"
00039
00040
00041
00042
00043 #if defined(__hpux)
00044 # include <dl.h>
00045 typedef shl_t vtkLibHandle;
00046 #elif defined(_WIN32)
00047 typedef HMODULE vtkLibHandle;
00048 #else
00049 typedef void* vtkLibHandle;
00050 #endif
00051
00052
00053
00054
00055 class VTK_COMMON_EXPORT vtkDynamicLoader : public vtkObject
00056 {
00057 public:
00058 static vtkDynamicLoader* New();
00059 vtkTypeRevisionMacro(vtkDynamicLoader,vtkObject);
00060
00061
00064 static vtkLibHandle OpenLibrary(const char*);
00065
00067
00069 static int CloseLibrary(vtkLibHandle);
00070
00072
00074 static void* GetSymbolAddress(vtkLibHandle, const char*);
00075
00077 static const char* LibPrefix();
00078
00080 static const char* LibExtension();
00081
00083 static const char* LastError();
00084
00085 protected:
00086 vtkDynamicLoader() {};
00087 ~vtkDynamicLoader() {};
00088
00089
00090 private:
00091 vtkDynamicLoader(const vtkDynamicLoader&);
00092 void operator=(const vtkDynamicLoader&);
00093 };
00094
00095 #endif