111 lines
2.4 KiB
C++
111 lines
2.4 KiB
C++
#ifndef _PSAPINT_MODULEINFO_HPP_
|
|
#define _PSAPINT_MODULEINFO_HPP_
|
|
#ifndef _COMMON_WINDOWS_HPP_
|
|
#include <common/windows.hpp>
|
|
#endif
|
|
#ifndef _COMMON_ARRAY_HPP_
|
|
#include <common/array.hpp>
|
|
#endif
|
|
|
|
class ModuleInfo;
|
|
typedef Array<ModuleInfo> ModuleInfoList;
|
|
|
|
class ModuleInfo
|
|
{
|
|
public:
|
|
ModuleInfo(void);
|
|
ModuleInfo(const ModuleInfo &someModuleInfo);
|
|
ModuleInfo(HMODULE hModule,const String &strModuleBaseName=String(),const String &strModuleFileName=String());
|
|
virtual ~ModuleInfo();
|
|
ModuleInfo &operator=(const ModuleInfo &someModuleInfo);
|
|
bool operator==(const ModuleInfo &someModuleInfo)const;
|
|
HMODULE module(void)const;
|
|
void module(HMODULE hModule);
|
|
const String &moduleBaseName(void)const;
|
|
void moduleBaseName(const String &strModuleBaseName);
|
|
const String &moduleFileName(void)const;
|
|
void moduleFileName(const String &strModuleFileName);
|
|
private:
|
|
HMODULE mhModule;
|
|
String mModuleBaseName;
|
|
String mModuleFileName;
|
|
};
|
|
|
|
inline
|
|
ModuleInfo::ModuleInfo(void)
|
|
: mhModule(0)
|
|
{
|
|
}
|
|
|
|
inline
|
|
ModuleInfo::ModuleInfo(const ModuleInfo &someModuleInfo)
|
|
: mhModule(someModuleInfo.mhModule), mModuleBaseName(someModuleInfo.mModuleBaseName),
|
|
mModuleFileName(someModuleInfo.mModuleFileName)
|
|
{
|
|
}
|
|
|
|
inline
|
|
ModuleInfo::ModuleInfo(HMODULE hModule,const String &strModuleBaseName,const String &strModuleFileName)
|
|
: mhModule(hModule), mModuleBaseName(strModuleBaseName), mModuleFileName(strModuleFileName)
|
|
{
|
|
}
|
|
|
|
inline
|
|
ModuleInfo::~ModuleInfo()
|
|
{
|
|
}
|
|
|
|
inline
|
|
ModuleInfo &ModuleInfo::operator=(const ModuleInfo &someModuleInfo)
|
|
{
|
|
module(someModuleInfo.module());
|
|
moduleBaseName(someModuleInfo.moduleBaseName());
|
|
moduleFileName(someModuleInfo.moduleFileName());
|
|
return *this;
|
|
}
|
|
|
|
inline
|
|
bool ModuleInfo::operator==(const ModuleInfo &someModuleInfo)const
|
|
{
|
|
return (module()==someModuleInfo.module()&&
|
|
moduleBaseName()==someModuleInfo.moduleBaseName()&&
|
|
moduleFileName()==someModuleInfo.moduleFileName());
|
|
}
|
|
|
|
inline
|
|
HMODULE ModuleInfo::module(void)const
|
|
{
|
|
return mhModule;
|
|
}
|
|
|
|
inline
|
|
void ModuleInfo::module(HMODULE hModule)
|
|
{
|
|
mhModule=hModule;
|
|
}
|
|
|
|
inline
|
|
const String &ModuleInfo::moduleBaseName(void)const
|
|
{
|
|
return mModuleBaseName;
|
|
}
|
|
|
|
inline
|
|
void ModuleInfo::moduleBaseName(const String &strModuleBaseName)
|
|
{
|
|
mModuleBaseName=strModuleBaseName;
|
|
}
|
|
|
|
inline
|
|
const String &ModuleInfo::moduleFileName(void)const
|
|
{
|
|
return mModuleFileName;
|
|
}
|
|
|
|
inline
|
|
void ModuleInfo::moduleFileName(const String &strModuleFileName)
|
|
{
|
|
mModuleFileName=strModuleFileName;
|
|
}
|
|
|
|
#endif |