#include "StdAfx.h" #include "TWFlag.h" TWFlag::TWFlag(int nFlg) : w_flag(nFlg) { } TWFlag::~TWFlag() { } TWFlag::operator int()const { return w_flag; } int TWFlag::GetFlag()const { return w_flag; } bool TWFlag::Is(int nVal)const { return (w_flag & nVal) != 0; } bool TWFlag::IsNot(int nVal)const { return (w_flag & nVal) == 0; } bool TWFlag::IsEmptyFlag()const { return w_flag == 0; } bool TWFlag::IsSameFlag(int nVal)const { return w_flag == nVal; } void TWFlag::AddFlag(int nVal) { w_flag |= nVal; } void TWFlag::RemoveFlag(int nVal) { w_flag &= ~nVal; } TWFlag& TWFlag::operator += (int nVal) { w_flag |= nVal; return *this; } TWFlag& TWFlag::operator -= (int nVal) { w_flag &= ~nVal; return *this; } int TWFlag::operator + (int nVal)const { return w_flag | nVal; } int TWFlag::operator - (int nVal)const { return w_flag & (~nVal); } void TWFlag::SetFlag(int nVal) { w_flag = nVal; } void TWFlag::ClearFlag() { w_flag = 0; }