クラス テンプレート osl::misc::GeneralMask< Integer >

#include <mask.h>

すべてのメンバ一覧

Public メソッド

 GeneralMask ()
GeneralMask & operator&= (const GeneralMask &r)
GeneralMask & operator|= (const GeneralMask &r)
GeneralMask & operator^= (const GeneralMask &r)
GeneralMask & operator-= (const GeneralMask &r)
GeneralMask & operator+= (const GeneralMask &r)
GeneralMask & operator<<= (int shift)
GeneralMask & operator>>= (int shift)
const GeneralMask operator~ () const
int bsf () const
int bsr () const
int takeOneBit ()
 non-zeroのmaskのsetされているビットをLSBから探し,その番号を返す 副作用としてmaskの対応するビットをクリアする
bool hasMultipleBit () const
 non-zeroのmaskが複数ビットセットされているかどうかを返す.
int countBit2 () const
 non-zeroのmaskにセットされているビットの数を2まで数える.
int countBit () const
 mask にセットされているビットの数を数える. あまり速くない.
GeneralMask lowestBit () const
 non-zeroのmaskのsetされているビットをLSBから探し,そのビットだけがsetされたmaskを返す.
bool none () const
bool any () const
Integer value () const

Static Public メソッド

static const GeneralMask makeDirect (Integer value)

Private メソッド

 GeneralMask (Integer value)

Private 変数

Integer mask

説明

template<class Integer>
class osl::misc::GeneralMask< Integer >

mask.h の 14 行で定義されています。


コンストラクタとデストラクタ

template<class Integer>
osl::misc::GeneralMask< Integer >::GeneralMask ( Integer  value  )  [inline, private]

mask.h の 18 行で定義されています。

template<class Integer>
osl::misc::GeneralMask< Integer >::GeneralMask (  )  [inline]

関数

template<class Integer>
bool osl::misc::GeneralMask< Integer >::any (  )  const [inline]

mask.h の 96 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::none().

template<class Integer>
int osl::misc::GeneralMask< Integer >::bsf (  )  const [inline]

mask.h の 59 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
int osl::misc::GeneralMask< Integer >::bsr (  )  const [inline]

mask.h の 60 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
int osl::misc::GeneralMask< Integer >::countBit (  )  const [inline]

mask にセットされているビットの数を数える. あまり速くない.

mask.h の 88 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

参照元 osl::container::PieceMask64::countBit().

template<class Integer>
int osl::misc::GeneralMask< Integer >::countBit2 (  )  const [inline]

non-zeroのmaskにセットされているビットの数を2まで数える.

引数:
mask - 対象とするデータ(non-zero)
戻り値:
1,2 (2の場合は2以上)

mask.h の 80 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

参照元 osl::container::PieceMask64::countBit2().

template<class Integer>
bool osl::misc::GeneralMask< Integer >::hasMultipleBit (  )  const [inline]

non-zeroのmaskが複数ビットセットされているかどうかを返す.

引数:
mask - 対象とするデータ(non-zero)
戻り値:
- 複数ビットがセットされているか?

mask.h の 74 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

参照元 osl::container::PieceMask64::hasMultipleBit().

template<class Integer>
GeneralMask osl::misc::GeneralMask< Integer >::lowestBit (  )  const [inline]

non-zeroのmaskのsetされているビットをLSBから探し,そのビットだけがsetされたmaskを返す.

引数:
mask - 対象とするデータ(non-zero)
戻り値:
- そのビットだけがsetされたmask

mask.h の 94 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
static const GeneralMask osl::misc::GeneralMask< Integer >::makeDirect ( Integer  value  )  [inline, static]
template<class Integer>
bool osl::misc::GeneralMask< Integer >::none (  )  const [inline]
template<class Integer>
GeneralMask& osl::misc::GeneralMask< Integer >::operator&= ( const GeneralMask< Integer > &  r  )  [inline]

mask.h の 22 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
GeneralMask& osl::misc::GeneralMask< Integer >::operator+= ( const GeneralMask< Integer > &  r  )  [inline]

mask.h の 42 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
GeneralMask& osl::misc::GeneralMask< Integer >::operator-= ( const GeneralMask< Integer > &  r  )  [inline]

mask.h の 37 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
GeneralMask& osl::misc::GeneralMask< Integer >::operator<<= ( int  shift  )  [inline]

mask.h の 47 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
GeneralMask& osl::misc::GeneralMask< Integer >::operator>>= ( int  shift  )  [inline]

mask.h の 52 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
GeneralMask& osl::misc::GeneralMask< Integer >::operator^= ( const GeneralMask< Integer > &  r  )  [inline]

mask.h の 32 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
GeneralMask& osl::misc::GeneralMask< Integer >::operator|= ( const GeneralMask< Integer > &  r  )  [inline]

mask.h の 27 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

template<class Integer>
const GeneralMask osl::misc::GeneralMask< Integer >::operator~ (  )  const [inline]
template<class Integer>
int osl::misc::GeneralMask< Integer >::takeOneBit (  )  [inline]

non-zeroのmaskのsetされているビットをLSBから探し,その番号を返す 副作用としてmaskの対応するビットをクリアする

引数:
mask - 対象とするデータ(non-zero)
戻り値:
- どのビットか

mask.h の 67 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

参照元 osl::container::PieceMask64::takeOneBit().

template<class Integer>
Integer osl::misc::GeneralMask< Integer >::value (  )  const [inline]

mask.h の 97 行で定義されています。

参照先 osl::misc::GeneralMask< Integer >::mask.

参照元 osl::misc::operator==().


変数

template<class Integer>
Integer osl::misc::GeneralMask< Integer >::mask [private]

このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義
Sun May 16 09:58:22 2010に生成されました。  doxygen 1.6.3