1 #ifndef _NUM_BITMAP_EFFECT_H
2 #define _NUM_BITMAP_EFFECT_H
43 mask_t mask1=numToMask(54);
48 mask_t mask1=numToMask(60);
62 mask_t mask1=numToMask(54);
64 mask1&=mask_t::makeDirect(pl);
68 assert((pl==
BLACK && ret==playerEffect<BLACK>()) ||
69 (pl==
WHITE && ret==playerEffect<WHITE>()));
77 mask_t mask1=numToMask(60);
79 mask1&=mask_t::makeDirect(pl);
82 mask_t mask2=numToMask(54);
88 assert((pl==
BLACK && mask1==playerEffectMask<BLACK>()) ||
89 (pl==
WHITE && mask1==playerEffectMask<WHITE>()));
95 mask>>=numToOffset(shift);
96 mask&=mask_t::makeDirect(0x3f);
97 return static_cast<int>(mask.value());
125 #if OSL_WORDSIZE == 64
126 return mask_t::makeDirect(0xff0000000000uLL);
127 #elif OSL_WORDSIZE == 32
128 return mask_t::makeDirect(0xff00u);
131 #if OSL_WORDSIZE == 64
132 static const int longToNumOffset=-8;
133 #elif OSL_WORDSIZE == 32
134 static const int longToNumOffset=32-8;
138 return mask_t::makeDirect(0x101) << PieceMask::numToOffset(num);
142 assert(32<=num && num<=39);
148 assert(32<=num && num<=39);
170 return selectLong<PTYPE>().any();
172 template <Ptype PTYPE>
bool hasAny()
const
180 #endif // _NUM_BITMAP_EFFECT_H