00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef __DEMOPAJA_DLLINTERFACEC_H__
00016 #define __DEMOPAJA_DLLINTERFACEC_H__
00017
00018 #include <windows.h>
00019 #include "PajaTypes.h"
00020 #include "ClassDescC.h"
00021 #include "DemopajaVersion.h"
00022
00023 namespace PluginClass {
00024
00025
00026 typedef PajaTypes::int32 (*GetClassdescCountF)();
00027 typedef ClassDescC* (*GetClassdescF)( PajaTypes::int32 );
00028 typedef PajaTypes::int32 (*GetApiVersionF)();
00029 typedef char* (*GetDllNameF)();
00030
00031
00033
00035 class DllInterfaceC
00036 {
00037 public:
00038 DllInterfaceC();
00039 virtual ~DllInterfaceC();
00040
00041 bool init( const char* szDllname );
00042 PajaTypes::int32 get_classdesc_count() const;
00043 ClassDescC* get_classdesc( PajaTypes::int32 );
00044 PajaTypes::int32 get_api_version() const;
00045 const char* get_dll_name() const;
00046
00047 private:
00048 HINSTANCE m_hDLL;
00049 GetClassdescCountF m_pGetClassdescCount;
00050 GetClassdescF m_pGetClassdesc;
00051 GetApiVersionF m_pGetApiVersion;
00052 GetDllNameF m_pGetDllName;
00053 };
00054
00055 };
00056
00057 #endif // __DEMOPAJA_DLLINTERFACEC_H__