82 lines
1.7 KiB
C++
82 lines
1.7 KiB
C++
#ifndef _PSAPINT_PROCINFO_HPP_
|
|
#define _PSAPINT_PROCINFO_HPP_
|
|
#ifndef _COMMON_WINDOWS_HPP_
|
|
#include <common/windows.hpp>
|
|
#endif
|
|
#ifndef _COMMON_ARRAY_HPP_
|
|
#include <common/array.hpp>
|
|
#endif
|
|
#ifndef _PSAPINT_PROCESSID_HPP_
|
|
#include <psapint/procid.hpp>
|
|
#endif
|
|
#ifndef _PSAPINT_MODULEINFO_HPP_
|
|
#include <psapint/modinfo.hpp>
|
|
#endif
|
|
|
|
class ProcessInfo;
|
|
typedef Array<ProcessInfo> ProcessInfoList;
|
|
|
|
class ProcessInfo : public ModuleInfoList
|
|
{
|
|
public:
|
|
ProcessInfo(void);
|
|
ProcessInfo(const ProcessID &processID);
|
|
ProcessInfo(const ProcessInfo &someProcessInfo);
|
|
virtual ~ProcessInfo();
|
|
ProcessInfo &operator=(const ProcessInfo &someProcessInfo);
|
|
bool operator==(const ProcessInfo &someProcessInfo)const;
|
|
const ProcessID &processID(void)const;
|
|
void processID(const ProcessID &processID);
|
|
private:
|
|
ProcessID mProcessID;
|
|
};
|
|
|
|
inline
|
|
ProcessInfo::ProcessInfo(void)
|
|
{
|
|
}
|
|
|
|
inline
|
|
ProcessInfo::ProcessInfo(const ProcessInfo &someProcessInfo)
|
|
: mProcessID(someProcessInfo.mProcessID), ModuleInfoList(someProcessInfo)
|
|
{
|
|
}
|
|
|
|
inline
|
|
ProcessInfo::ProcessInfo(const ProcessID &processID)
|
|
: mProcessID(processID)
|
|
{
|
|
}
|
|
|
|
inline
|
|
ProcessInfo::~ProcessInfo()
|
|
{
|
|
}
|
|
|
|
inline
|
|
ProcessInfo &ProcessInfo::operator=(const ProcessInfo &someProcessInfo)
|
|
{
|
|
processID(someProcessInfo.processID());
|
|
(ModuleInfoList &)*this=(ModuleInfoList &)someProcessInfo;
|
|
return *this;
|
|
}
|
|
|
|
inline
|
|
bool ProcessInfo::operator==(const ProcessInfo &someProcessInfo)const
|
|
{
|
|
return (processID()==someProcessInfo.processID()&&
|
|
(ModuleInfoList&)*this==(ModuleInfoList&)someProcessInfo);
|
|
}
|
|
|
|
inline
|
|
const ProcessID &ProcessInfo::processID(void)const
|
|
{
|
|
return mProcessID;
|
|
}
|
|
|
|
inline
|
|
void ProcessInfo::processID(const ProcessID &processID)
|
|
{
|
|
mProcessID=processID;
|
|
}
|
|
#endif |