80 lines
1.8 KiB
C++
80 lines
1.8 KiB
C++
#if defined(__FLAT__)
|
|
#ifndef _COMMON_CREATIONFLAGS_HPP_
|
|
#define _COMMON_CREATIONFLAGS_HPP_
|
|
class CreationFlags
|
|
{
|
|
public:
|
|
enum Flags{DefaultErrorMode=CREATE_DEFAULT_ERROR_MODE,
|
|
NewConsole=CREATE_NEW_CONSOLE,
|
|
NewProcessGroup=CREATE_NEW_PROCESS_GROUP,
|
|
SeperateWOWVDM=CREATE_SEPARATE_WOW_VDM,
|
|
Suspended=CREATE_SUSPENDED,
|
|
UnicodeEnvironment=CREATE_UNICODE_ENVIRONMENT,
|
|
DebugProcess=DEBUG_PROCESS,
|
|
DebugOnlyThisProcess=DEBUG_ONLY_THIS_PROCESS,
|
|
DetachedProcess=DETACHED_PROCESS,
|
|
NormalPriorityClass=NORMAL_PRIORITY_CLASS,
|
|
IdlePriorityClass=IDLE_PRIORITY_CLASS,
|
|
HighPriorityClass=HIGH_PRIORITY_CLASS,
|
|
RealtimePriorityClass=REALTIME_PRIORITY_CLASS};
|
|
CreationFlags(Flags creationFlags=NormalPriorityClass);
|
|
CreationFlags(const CreationFlags &someCreationFlags);
|
|
virtual ~CreationFlags();
|
|
CreationFlags &operator=(const CreationFlags &someCreationFlags);
|
|
WORD operator==(const CreationFlags &someCreationFlags);
|
|
CreationFlags &operator+=(Flags creationFlags);
|
|
operator DWORD(void)const;
|
|
private:
|
|
DWORD mCreationFlags;
|
|
};
|
|
|
|
inline
|
|
CreationFlags::CreationFlags(Flags creationFlags)
|
|
: mCreationFlags(creationFlags)
|
|
{
|
|
}
|
|
|
|
inline
|
|
CreationFlags::CreationFlags(const CreationFlags &someCreationFlags)
|
|
{
|
|
*this=someCreationFlags;
|
|
}
|
|
|
|
inline
|
|
CreationFlags::~CreationFlags()
|
|
{
|
|
}
|
|
|
|
inline
|
|
CreationFlags &CreationFlags::operator=(const CreationFlags &someCreationFlags)
|
|
{
|
|
mCreationFlags=someCreationFlags.mCreationFlags;
|
|
return *this;
|
|
}
|
|
|
|
inline
|
|
WORD CreationFlags::operator==(const CreationFlags &someCreationFlags)
|
|
{
|
|
return mCreationFlags==someCreationFlags.mCreationFlags;
|
|
}
|
|
|
|
inline
|
|
CreationFlags &CreationFlags::operator+=(Flags creationFlags)
|
|
{
|
|
mCreationFlags|=(DWORD)creationFlags;
|
|
return *this;
|
|
}
|
|
|
|
inline
|
|
CreationFlags::operator DWORD(void)const
|
|
{
|
|
return mCreationFlags;
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|