Clean up CPlugin member variables.
This commit is contained in:
+29
-19
@@ -50,6 +50,7 @@
|
||||
#include "IGameConfigs.h"
|
||||
#include "NativeOwner.h"
|
||||
#include "ShareSys.h"
|
||||
#include "PhraseCollection.h"
|
||||
#include <bridge/include/IScriptManager.h>
|
||||
|
||||
class CPlayer;
|
||||
@@ -140,7 +141,7 @@ public:
|
||||
bool IsDebugging();
|
||||
PluginStatus GetStatus();
|
||||
bool IsSilentlyFailed();
|
||||
void SetSilentlyFailed(bool sf);
|
||||
void SetSilentlyFailed();
|
||||
const sm_plugininfo_t *GetPublicInfo();
|
||||
bool SetPauseState(bool paused);
|
||||
unsigned int GetSerial();
|
||||
@@ -251,31 +252,40 @@ protected:
|
||||
bool UpdateInfo();
|
||||
void SetTimeStamp(time_t t);
|
||||
void DependencyDropped(CPlugin *pOwner);
|
||||
|
||||
private:
|
||||
PluginType m_type;
|
||||
// This information is static for the lifetime of the plugin.
|
||||
char m_filename[PLATFORM_MAX_PATH];
|
||||
PluginStatus m_status;
|
||||
bool m_bSilentlyFailed;
|
||||
unsigned int m_serial;
|
||||
sm_plugininfo_t m_info;
|
||||
char m_errormsg[256];
|
||||
time_t m_LastAccess;
|
||||
IdentityToken_t *m_ident;
|
||||
Handle_t m_handle;
|
||||
bool m_WasRunning;
|
||||
IPhraseCollection *m_pPhrases;
|
||||
List<String> m_RequiredLibs;
|
||||
List<String> m_Libraries;
|
||||
StringHashMap<void *> m_Props;
|
||||
|
||||
PluginStatus m_status;
|
||||
|
||||
// Statuses that are set during failure.
|
||||
bool m_SilentFailure;
|
||||
bool m_FakeNativesMissing;
|
||||
bool m_LibraryMissing;
|
||||
CVector<AutoConfig *> m_configs;
|
||||
bool m_bGotAllLoaded;
|
||||
int m_FileVersion;
|
||||
char m_DateTime[256];
|
||||
IPluginRuntime *m_pRuntime;
|
||||
char m_errormsg[256];
|
||||
|
||||
// Internal properties that must by reset if the runtime is evicted.
|
||||
ke::AutoPtr<IPluginRuntime> m_pRuntime;
|
||||
ke::AutoPtr<CPhraseCollection> m_pPhrases;
|
||||
IPluginContext *m_pContext;
|
||||
sp_pubvar_t *m_MaxClientsVar;
|
||||
StringHashMap<void *> m_Props;
|
||||
CVector<AutoConfig *> m_configs;
|
||||
IdentityToken_t *m_ident;
|
||||
bool m_bGotAllLoaded;
|
||||
int m_FileVersion;
|
||||
|
||||
// Information that survives past eviction.
|
||||
List<String> m_RequiredLibs;
|
||||
List<String> m_Libraries;
|
||||
time_t m_LastAccess;
|
||||
Handle_t m_handle;
|
||||
char m_DateTime[256];
|
||||
|
||||
// Cached.
|
||||
sm_plugininfo_t m_info;
|
||||
};
|
||||
|
||||
class CPluginManager :
|
||||
|
||||
Reference in New Issue
Block a user