#include <nlu.h>
Public メソッド | |
set (bitmap_array_type::iterator bitmap, size_t way_num) | |
size_t | target () |
void | touch (const size_t way) |
Protected 変数 | |
bitmap_array_type::iterator | m_bitmap |
size_t | m_way_num |
shttl::nlu< key_type >::set::set | ( | bitmap_array_type::iterator | bitmap, | |
size_t | way_num | |||
) | [inline] |
size_t shttl::nlu< key_type >::set::target | ( | ) | [inline] |
参照先 shttl::nlu< key_type >::set::m_bitmap・shttl::nlu< key_type >::set::m_way_num・SHTTL_ASSERT.
参照元 shttl::nlu< key_type >::target().
00107 { 00108 for(size_type i = 0; i < m_way_num; i++){ 00109 if(!(*m_bitmap & (1 << i))) 00110 return i; 00111 } 00112 00113 SHTTL_ASSERT(0); 00114 return 0; 00115 }
Here is the caller graph for this function:
void shttl::nlu< key_type >::set::touch | ( | const size_t | way | ) | [inline] |
参照先 shttl::nlu< key_type >::set::m_bitmap・shttl::nlu< key_type >::set::m_way_num.
参照元 shttl::nlu< key_type >::touch().
00118 { 00119 #ifdef SHTTL_DEBUG 00120 if ( (size_type)m_way_num <= way ){ 00121 throw std::out_of_range("nlu::touch"); 00122 } 00123 #endif 00124 00125 *m_bitmap |= 1 << way; 00126 if( *m_bitmap == mask(0, m_way_num) ) 00127 *m_bitmap = 0; 00128 }
Here is the caller graph for this function:
bitmap_array_type::iterator shttl::nlu< key_type >::set::m_bitmap [protected] |
size_t shttl::nlu< key_type >::set::m_way_num [protected] |