Lines Matching refs:Flags
1 //===- Flags.h ------------------------------------------------------------===//
15 class Flags {
20 Flags(const Flags& pOther) : m_Data(pOther.m_Data) {}
22 explicit Flags(Enum pFlag) : m_Data(pFlag) {}
24 explicit Flags(unsigned int pFlag = 0x0) : m_Data(pFlag) {}
30 Flags operator&(int pMask) const { return Flags(m_Data & pMask); }
32 Flags operator&(unsigned int pMask) const { return Flags(m_Data & pMask); }
34 Flags operator&(Enum pMask) const { return Flags(m_Data & pMask); }
36 Flags& operator&=(unsigned int pMask) {
41 Flags& operator=(Flags pOther) {
46 Flags operator^(Flags pOther) const { return Flags(m_Data ^ pOther.m_Data); }
48 Flags operator^(Enum pOther) const { return Flags(m_Data ^ pOther); }
50 Flags& operator^=(Flags pOther) {
55 Flags& operator^=(Enum pOther) {
60 Flags operator|(Flags pOther) const { return Flags(m_Data | pOther.m_Data); }
62 Flags operator|(Enum pOther) const { return Flags(m_Data | pOther); }
64 Flags& operator|=(Flags pOther) {
69 Flags& operator|=(Enum pOther) {
74 Flags operator~() const { return Flags(~m_Data); }