#ifndef _PSAPINT_PROCINFO_HPP_ #define _PSAPINT_PROCINFO_HPP_ #ifndef _COMMON_WINDOWS_HPP_ #include #endif #ifndef _COMMON_ARRAY_HPP_ #include #endif #ifndef _PSAPINT_PROCESSID_HPP_ #include #endif #ifndef _PSAPINT_MODULEINFO_HPP_ #include #endif class ProcessInfo; typedef Array 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