Files
SmallGame_Cocos2dx/Classes/Common/Mask.cpp
T
2014-08-20 16:15:02 +08:00

46 lines
697 B
C++

#include "Mask.h"
void CBitMask::setMask(int nMask)
{
mnMask |= nMask;
}
void CBitMask::setMask(short sHi, short sLow)
{
mnMask = (sHi << 16) + sLow;
}
bool CBitMask::isMask(int nMask)
{
bool b = ((mnMask&nMask) == nMask);
if(b)
return true;
return false;
}
void CBitMask::removeMask(int nMask)
{
/* ^运算
11111111
^ 00001000
------------
11110111
*/
int nTemp = (0xffffffff) ^ nMask;
mnMask &= nTemp;
}
void CBitMask::clrMask()
{
mnMask &= ~mnMask;
}
inline int CBitMask::getMask() const
{
return mnMask;
}
int CBitMask::getMaskHi()
{
return mnMask >> 16;
}
int CBitMask::getMaskLow()
{
return mnMask & 0x0000ffff;
}