#pragma once #include "common.h" #include "T2PluginSpecifier.h" class AFX_EXT_CLASS CPlugin { public: CPlugin(DWORD type, T2PluginSpecifier& specifier); virtual ~CPlugin(); virtual DWORD GetPluginStyle() { return 'plug'; } virtual void GetName(CString&); virtual void GetInfoString(CString&); virtual HINSTANCE GetModuleHandle(); DWORD GetType() { return mType; } BOOL IsLoaded() { return mIsLoaded; } protected: BOOL mIsLoaded; DWORD mType; public: // this gets accessed by T2TenantDef::SetCustomerTable without an inline T2PluginSpecifier mSpecifier; // this gets accessed by T2PaletteAnime without an inline HINSTANCE mModuleHandle; T2ImageObj *mImageObj; };