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

#include <mask.h>

すべてのメンバ一覧

Public メソッド

 GeneralMask ()
GeneralMaskoperator&= (const GeneralMask &r)
GeneralMaskoperator|= (const GeneralMask &r)
GeneralMaskoperator^= (const GeneralMask &r)
GeneralMaskoperator-= (const GeneralMask &r)
GeneralMaskoperator+= (const GeneralMask &r)
GeneralMaskoperator<<= (int shift)
GeneralMaskoperator>>= (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.h14 行で定義されています。


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

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

mask.h18 行で定義されています。

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

関数

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

mask.h96 行で定義されています。

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

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

mask.h59 行で定義されています。

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

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

mask.h60 行で定義されています。

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

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

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

mask.h88 行で定義されています。

参照先 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.h80 行で定義されています。

参照先 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.h74 行で定義されています。

参照先 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.h94 行で定義されています。

参照先 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.h22 行で定義されています。

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

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

mask.h42 行で定義されています。

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

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

mask.h37 行で定義されています。

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

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

mask.h47 行で定義されています。

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

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

mask.h52 行で定義されています。

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

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

mask.h32 行で定義されています。

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

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

mask.h27 行で定義されています。

参照先 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.h67 行で定義されています。

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

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

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

mask.h97 行で定義されています。

参照先 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