クラス テンプレート shttl::nlu< key_type >

#include <nlu.h>

shttl::nlu< key_type >に対する継承グラフ

Inheritance graph
[凡例]
shttl::nlu< key_type >のコラボレーション図

Collaboration graph
[凡例]
すべてのメンバ一覧

Public 型

typedef replacer< key_type
>::size_type 
size_type

Public メソッド

void construct (const size_type set_num, const size_type way_num)
 nlu ()
size_type size ()
size_type target (const size_type index)
void touch (const size_type index, const size_type way, const key_type key)

Protected 型

typedef std::vector< bitmap_typebitmap_array_type
typedef u32 bitmap_type

Protected メソッド

set get_set (const size_type index)

Protected 変数

bitmap_array_type m_bitmap
size_type m_index_num
size_type m_way_num

構成

class  set

説明

template<typename key_type>
class shttl::nlu< key_type >

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


型定義

template<typename key_type>
typedef std::vector<bitmap_type> shttl::nlu< key_type >::bitmap_array_type [protected]

nlu.h93 行で定義されています。

template<typename key_type>
typedef u32 shttl::nlu< key_type >::bitmap_type [protected]

nlu.h92 行で定義されています。

template<typename key_type>
typedef replacer< key_type >::size_type shttl::nlu< key_type >::size_type

shttl::replacer< key_type >を再定義しています。

nlu.h45 行で定義されています。


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

template<typename key_type>
shttl::nlu< key_type >::nlu (  )  [inline]

nlu.h48 行で定義されています。

00048               :
00049             m_way_num(0),
00050             m_index_num(0)
00051         {
00052         }


関数

template<typename key_type>
void shttl::nlu< key_type >::construct ( const size_type  set_num,
const size_type  way_num 
) [inline]

nlu.h54 行で定義されています。

参照先 shttl::nlu< key_type >::m_bitmapshttl::nlu< key_type >::m_index_numshttl::nlu< key_type >::m_way_num.

00055         {
00056             if( std::numeric_limits<bitmap_type>().digits < (int)way_num ){
00057                 throw std::invalid_argument( 
00058                     "shttl::nlu_array() \n Specified way number is too large." 
00059                 );
00060             }
00061 
00062             m_way_num = way_num;
00063             m_index_num = set_num;
00064             m_bitmap.resize( m_index_num, 0 );
00065         }

template<typename key_type>
set shttl::nlu< key_type >::get_set ( const size_type  index  )  [inline, protected]

nlu.h136 行で定義されています。

参照先 shttl::nlu< key_type >::m_bitmapshttl::nlu< key_type >::m_way_num.

参照元 shttl::nlu< key_type >::target()shttl::nlu< key_type >::touch().

00137         {
00138             return set( m_bitmap.begin() + index, m_way_num );
00139         }

Here is the caller graph for this function:

template<typename key_type>
size_type shttl::nlu< key_type >::size (  )  [inline]

nlu.h67 行で定義されています。

参照先 shttl::nlu< key_type >::m_index_num.

00068         {
00069             return m_index_num;
00070         }

template<typename key_type>
size_type shttl::nlu< key_type >::target ( const size_type  index  )  [inline]

nlu.h80 行で定義されています。

参照先 shttl::nlu< key_type >::get_set()shttl::nlu< key_type >::set::target().

00082          {
00083             return get_set( index ).target();
00084         }

関数の呼び出しグラフ:

template<typename key_type>
void shttl::nlu< key_type >::touch ( const size_type  index,
const size_type  way,
const key_type  key 
) [inline]

nlu.h72 行で定義されています。

参照先 shttl::nlu< key_type >::get_set()shttl::nlu< key_type >::set::touch().

00076          {
00077             get_set( index ).touch( way );
00078         }

関数の呼び出しグラフ:


変数

template<typename key_type>
bitmap_array_type shttl::nlu< key_type >::m_bitmap [protected]

nlu.h94 行で定義されています。

参照元 shttl::nlu< key_type >::construct()shttl::nlu< key_type >::get_set().

template<typename key_type>
size_type shttl::nlu< key_type >::m_index_num [protected]

nlu.h90 行で定義されています。

参照元 shttl::nlu< key_type >::construct()shttl::nlu< key_type >::size().

template<typename key_type>
size_type shttl::nlu< key_type >::m_way_num [protected]

nlu.h89 行で定義されています。

参照元 shttl::nlu< key_type >::construct()shttl::nlu< key_type >::get_set().


このクラスの説明は次のファイルから生成されました:
Onikiri2に対してTue Jun 18 15:35:27 2013に生成されました。  doxygen 1.4.7