NW4F G3d
Loading...
Searching...
No Matches
g3d_Flag.h File Reference

Go to the source code of this file.

Namespaces

namespace  nw
namespace  nw::g3d
namespace  nw::g3d::ut

Macros

#define NW_G3D_FLAG_DECLARE(mbit, mname)
#define NW_G3D_FLAG_VALUE_DECLARE(mbit, msize, mname)
#define NW_G3D_GET_FLAG_VALUE(mflags, mname, mtype)
#define NW_G3D_SET_FLAG_VALUE(mflags, mname, mval)

Functions

template<typename TFlags, typename TMask, typename TCheck>
NW_G3D_INLINE bool nw::g3d::ut::CheckFlag (TFlags flags, TMask mask, TCheck check)
template<typename TFlags, typename TMask>
NW_G3D_INLINE bool nw::g3d::ut::CheckFlag (TFlags flags, TMask mask)
template<typename TFlags, typename TMask, typename TValue>
NW_G3D_INLINE TFlags nw::g3d::ut::CreateFlagValue (TValue value, int shift, TMask mask)
template<typename TResult, typename TFlags, typename TMask>
NW_G3D_INLINE TResult nw::g3d::ut::GetFlagValue (TFlags flags, int shift, TMask mask)
template<typename TFlags, typename TMask, typename TValue>
NW_G3D_INLINE TFlags nw::g3d::ut::SetFlagValue (TFlags flags, int shift, TMask mask, TValue value)
template<typename TFlags, typename TMask>
NW_G3D_INLINE TFlags nw::g3d::ut::InvertFlag (TFlags flags, TMask mask)
template<typename TValue>
NW_G3D_INLINE void nw::g3d::ut::FillBits (bit32 *pBitArray, int count, TValue value)
template<typename TResult>
NW_G3D_INLINE TResult nw::g3d::ut::IsBitOn (const bit32 *pBitArray, int wordIndex, int bitIndex)
template<typename TResult>
NW_G3D_INLINE TResult nw::g3d::ut::IsBitOn (const bit32 *pBitArray, int index)
template<typename TValue>
NW_G3D_INLINE void nw::g3d::ut::SetBit (bit32 *pBitArray, int wordIndex, int bitIndex, TValue value)
template<typename TValue>
NW_G3D_INLINE void nw::g3d::ut::SetBit (bit32 *pBitArray, int index, TValue value)

Macro Definition Documentation

◆ NW_G3D_FLAG_DECLARE

#define NW_G3D_FLAG_DECLARE ( mbit,
mname )
Value:
FLAG_##mname##_SHIFT = (mbit), \
FLAG_##mname = 0x1 << (mbit)

◆ NW_G3D_FLAG_VALUE_DECLARE

#define NW_G3D_FLAG_VALUE_DECLARE ( mbit,
msize,
mname )
Value:
FLAG_##mname##_VALUE_SHIFT = (mbit), \
FLAG_##mname##_VALUE_MASK = (((0x1ul << (msize)) - 1) << (mbit))

◆ NW_G3D_GET_FLAG_VALUE

#define NW_G3D_GET_FLAG_VALUE ( mflags,
mname,
mtype )
Value:
GetFlagValue<mtype>((mflags), (FLAG_##mname##_VALUE_SHIFT), (FLAG_##mname##_VALUE_MASK))

◆ NW_G3D_SET_FLAG_VALUE

#define NW_G3D_SET_FLAG_VALUE ( mflags,
mname,
mval )
Value:
((mflags) = SetFlagValue( \
(mflags), (FLAG_##mname##_VALUE_SHIFT), (FLAG_##mname##_VALUE_MASK), (mval)))