ネームスペース osl::misc

特に将棋と関係ない基礎的なコード [詳細]

ネームスペース

namespace  detail
namespace  log

構成

struct  Align16New
struct  IncrementLock
class  AtomicCounter
struct  Bsf< unsigned int >
struct  Bsf< unsigned short >
struct  Bsf< unsigned long long >
struct  Bsr< unsigned int >
struct  Bsr< unsigned long long >
struct  BitOp
struct  CArrayIterator
 CArray の iterator. [詳細]
class  CArray
 boost::array のまね。operator[] に assert をいれたかったので。 [詳細]
struct  CArray2dProxy
class  CArray2d
 CArray の2次元版. [詳細]
struct  CArray3d
struct  FastCopier
class  FixedCapacityVectorPushBack
class  FixedCapacityVector
struct  IconvConvert
class  LightScopedLock
class  LightMutex
class  LightMutexChar
struct  Int2Type
struct  Type2Type
struct  Player2Type
struct  EmptyType
class  GeneralMask
struct  SumDiffNthPower
struct  NoMoreTime
class  MilliSeconds
class  NonBlockDelete
class  PerfMon
class  TSC
class  Counter
class  CounterPair
class  MeasureTimeLock
class  PointerQueue
struct  Random< unsigned int >
struct  Random< unsigned long long >
struct  Reorder
struct  StaticInitializeTracer

型定義

typedef GeneralMask< unsigned
long long > 
Mask64
typedef GeneralMask< unsigned int > Mask32
typedef unsigned int mask_int_t
typedef GeneralMask< mask_int_t > mask_t

関数

std::string base64Encode (boost::dynamic_bitset<> src)
boost::dynamic_bitset base64Decode (std::string src)
template<class T >
const CArrayIterator< T > operator+ (const CArrayIterator< T > &iter, int diff)
template<class T >
const CArrayIterator< T > operator- (const CArrayIterator< T > &iter, int diff)
template<class T , class T2 >
int operator- (CArrayIterator< T > l, CArrayIterator< T2 > r)
template<class T , class T2 >
bool operator== (CArrayIterator< T > l, CArrayIterator< T2 > r)
template<class T , class T2 >
bool operator!= (CArrayIterator< T > l, CArrayIterator< T2 > r)
template<class T , class T2 >
bool operator< (CArrayIterator< T > l, CArrayIterator< T2 > r)
template<class T , class T2 >
bool operator> (CArrayIterator< T > l, CArrayIterator< T2 > r)
template<typename T1 , typename T2 >
void construct (T1 *ptr, const T2 &value, typename boost::enable_if< detail::BitCopyTraits< T1 > >::type *=0)
template<typename T1 , typename T2 >
void construct (T1 *ptr, const T2 &value, typename boost::disable_if< detail::BitCopyTraits< T1 > >::type *=0)
template<typename T >
void destroy (T *ptr)
template<typename ForwardIterator >
void destroy (ForwardIterator first, ForwardIterator last)
template<typename T , size_t C>
bool operator== (const FixedCapacityVector< T, C > &l, const FixedCapacityVector< T, C > &r)
template<typename T , size_t C>
bool operator< (const FixedCapacityVector< T, C > &l, const FixedCapacityVector< T, C > &r)
template<class Integer >
bool operator== (const GeneralMask< Integer > &l, const GeneralMask< Integer > &r)
template<class Integer >
bool operator!= (const GeneralMask< Integer > &l, const GeneralMask< Integer > &r)
template<class Integer >
bool operator< (const GeneralMask< Integer > &l, const GeneralMask< Integer > &r)
template<class Integer >
const GeneralMask< Integer > operator& (GeneralMask< Integer > l, GeneralMask< Integer > r)
template<class Integer >
const GeneralMask< Integer > operator| (GeneralMask< Integer > l, GeneralMask< Integer > r)
template<class Integer >
const GeneralMask< Integer > operator^ (GeneralMask< Integer > l, GeneralMask< Integer > r)
template<class Integer >
const GeneralMask< Integer > operator<< (GeneralMask< Integer > m, int shift)
template<class Integer >
const GeneralMask< Integer > operator>> (GeneralMask< Integer > m, int shift)
std::ostream & operator<< (std::ostream &, const mask_t &)
template<unsigned int N, class T >
T nthPower (T x)
 Reference: C++ Cookbook, Stephens, Diggins, Turkanis and Cogswell, O'Reilly,.
template<class T , int N, class Iter_T >
T nthMoment (Iter_T first, Iter_T last, T mean)
template<class T , class Iter_T >
T computeVariance (Iter_T first, Iter_T last, T mean)
template<class T , class Iter_T >
T computeStdDev (Iter_T first, Iter_T last, T mean)
template<class T , class Iter_T >
T computeSkew (Iter_T first, Iter_T last, T mean)
template<class T , class Iter_T >
T computeKurtosisExcess (Iter_T first, Iter_T last, T mean)
template<class T , class Iter_T >
void computeStats (Iter_T first, Iter_T last, T &sum, T &mean, T &var, T &std_dev, T &skew, T &kurt)
bool operator== (MilliSeconds l, MilliSeconds r)
bool operator< (MilliSeconds l, MilliSeconds r)
bool operator== (MilliSeconds::Interval l, MilliSeconds::Interval r)
bool operator< (MilliSeconds::Interval l, MilliSeconds::Interval r)
int ncores ()
 Returns number of logical processors (i.e.
unsigned int random ()
unsigned int time_seeded_random ()
std::string sjis2euc (const std::string &str)
 Convert character encoding from Shift_JIS to EUC-JP.
void sjis2euc (unsigned char &c1, unsigned char &c2)
 Reference: http://www.net.is.uec.ac.jp/~ueno/material/kanji/sjis2euc.html.
int slowbsf (unsigned int mask)
 non-0 の時に呼ぶべし.

説明

特に将棋と関係ない基礎的なコード


型定義

typedef GeneralMask<unsigned int> osl::misc::Mask32

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

typedef GeneralMask<unsigned long long> osl::misc::Mask64

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

typedef unsigned int osl::misc::mask_int_t

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

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


関数

boost::dynamic_bitset osl::misc::base64Decode ( std::string  src  ) 

base64.cc の 57 行で定義されています。

参照元 osl::record::fromBase64(), と osl::record::CompactBoard::fromBase64().

std::string osl::misc::base64Encode ( boost::dynamic_bitset<>  src  ) 

base64.cc の 6 行で定義されています。

参照元 osl::record::MiniBoard::toBase64(), と osl::record::CompactBoard::toBase64().

template<class T , class Iter_T >
T osl::misc::computeKurtosisExcess ( Iter_T  first,
Iter_T  last,
T  mean 
) [inline]

math.h の 68 行で定義されています。

参照元 computeStats().

template<class T , class Iter_T >
T osl::misc::computeSkew ( Iter_T  first,
Iter_T  last,
T  mean 
) [inline]

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

参照元 computeStats().

template<class T , class Iter_T >
void osl::misc::computeStats ( Iter_T  first,
Iter_T  last,
T &  sum,
T &  mean,
T &  var,
T &  std_dev,
T &  skew,
T &  kurt 
) [inline]

math.h の 76 行で定義されています。

参照先 computeKurtosisExcess(), computeSkew(), と computeVariance().

参照元 showStatistics().

template<class T , class Iter_T >
T osl::misc::computeStdDev ( Iter_T  first,
Iter_T  last,
T  mean 
) [inline]

math.h の 54 行で定義されています。

参照先 computeVariance().

template<class T , class Iter_T >
T osl::misc::computeVariance ( Iter_T  first,
Iter_T  last,
T  mean 
) [inline]

math.h の 48 行で定義されています。

参照元 computeStats(), と computeStdDev().

template<typename T1 , typename T2 >
void osl::misc::construct ( T1 *  ptr,
const T2 &  value,
typename boost::disable_if< detail::BitCopyTraits< T1 > >::type *  = 0 
) [inline]

construct.h の 49 行で定義されています。

template<typename T1 , typename T2 >
void osl::misc::construct ( T1 *  ptr,
const T2 &  value,
typename boost::enable_if< detail::BitCopyTraits< T1 > >::type *  = 0 
) [inline]
template<typename ForwardIterator >
void osl::misc::destroy ( ForwardIterator  first,
ForwardIterator  last 
) [inline]

construct.h の 63 行で定義されています。

参照先 destroy().

template<typename T >
void osl::misc::destroy ( T *  ptr  )  [inline]
int osl::misc::ncores (  ) 

Returns number of logical processors (i.e.

cores). Linux and Mac are supported so far.

ncores.cc の 21 行で定義されています。

参照先 osl::OslConfig::MaxThreads, と osl::eval::min().

参照元 main().

template<class T , int N, class Iter_T >
T osl::misc::nthMoment ( Iter_T  first,
Iter_T  last,
T  mean 
) [inline]

math.h の 41 行で定義されています。

template<unsigned int N, class T >
T osl::misc::nthPower ( T  x  )  [inline]

Reference: C++ Cookbook, Stephens, Diggins, Turkanis and Cogswell, O'Reilly,.

math.h の 17 行で定義されています。

template<class Integer >
bool osl::misc::operator!= ( const GeneralMask< Integer > &  l,
const GeneralMask< Integer > &  r 
) [inline]

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

template<class T , class T2 >
bool osl::misc::operator!= ( CArrayIterator< T >  l,
CArrayIterator< T2 >  r 
) [inline]

carray.h の 89 行で定義されています。

参照先 osl::misc::CArrayIterator< T >::ptr.

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

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

参照先 result.

template<class T >
const CArrayIterator<T> osl::misc::operator+ ( const CArrayIterator< T > &  iter,
int  diff 
) [inline]

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

参照先 result.

template<class T , class T2 >
int osl::misc::operator- ( CArrayIterator< T >  l,
CArrayIterator< T2 >  r 
) [inline]

carray.h の 79 行で定義されています。

参照先 osl::misc::CArrayIterator< T >::ptr.

template<class T >
const CArrayIterator<T> osl::misc::operator- ( const CArrayIterator< T > &  iter,
int  diff 
) [inline]

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

bool osl::misc::operator< ( MilliSeconds::Interval  l,
MilliSeconds::Interval  r 
) [inline]

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

参照先 osl::misc::MilliSeconds::Interval::value().

bool osl::misc::operator< ( MilliSeconds  l,
MilliSeconds  r 
) [inline]

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

参照先 osl::misc::MilliSeconds::value().

template<class Integer >
bool osl::misc::operator< ( const GeneralMask< Integer > &  l,
const GeneralMask< Integer > &  r 
) [inline]

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

template<typename T , size_t C>
bool osl::misc::operator< ( const FixedCapacityVector< T, C > &  l,
const FixedCapacityVector< T, C > &  r 
) [inline]

fixedCapacityVector.h の 197 行で定義されています。

template<class T , class T2 >
bool osl::misc::operator< ( CArrayIterator< T >  l,
CArrayIterator< T2 >  r 
) [inline]

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

std::ostream& osl::misc::operator<< ( std::ostream &  ,
const mask_t &   
)
template<class Integer >
const GeneralMask<Integer> osl::misc::operator<< ( GeneralMask< Integer >  m,
int  shift 
) [inline]

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

参照先 result.

bool osl::misc::operator== ( MilliSeconds::Interval  l,
MilliSeconds::Interval  r 
) [inline]

milliSeconds.h の 63 行で定義されています。

参照先 osl::misc::MilliSeconds::Interval::value().

bool osl::misc::operator== ( MilliSeconds  l,
MilliSeconds  r 
) [inline]

milliSeconds.h の 55 行で定義されています。

参照先 osl::misc::MilliSeconds::value().

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

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

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

template<typename T , size_t C>
bool osl::misc::operator== ( const FixedCapacityVector< T, C > &  l,
const FixedCapacityVector< T, C > &  r 
) [inline]
template<class T , class T2 >
bool osl::misc::operator== ( CArrayIterator< T >  l,
CArrayIterator< T2 >  r 
) [inline]

carray.h の 84 行で定義されています。

参照先 osl::misc::CArrayIterator< T >::ptr.

template<class T , class T2 >
bool osl::misc::operator> ( CArrayIterator< T >  l,
CArrayIterator< T2 >  r 
) [inline]

carray.h の 99 行で定義されています。

参照先 osl::misc::CArrayIterator< T >::ptr.

template<class Integer >
const GeneralMask<Integer> osl::misc::operator>> ( GeneralMask< Integer >  m,
int  shift 
) [inline]

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

参照先 result.

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

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

参照先 result.

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

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

参照先 result.

unsigned int osl::misc::random (  ) 
void osl::misc::sjis2euc ( unsigned char &  c1,
unsigned char &  c2 
)

Reference: http://www.net.is.uec.ac.jp/~ueno/material/kanji/sjis2euc.html.

sjis2euc.cc の 43 行で定義されています。

std::string osl::misc::sjis2euc ( const std::string &  str  ) 

Convert character encoding from Shift_JIS to EUC-JP.

This converter is simple enough to be applied to Shogi records. It may not completely implement the conversion algorithm.

sjis2euc.cc の 9 行で定義されています。

参照先 result.

参照元 osl::record::kakinoki::KakinokiFile::isKakinokiFile(), osl::record::ki2::InputStream::load(), と osl::record::kakinoki::InputStream::load().

int osl::misc::slowbsf ( unsigned int  mask  )  [inline]

non-0 の時に呼ぶべし.

やはりどう考えても遅い

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

unsigned int osl::misc::time_seeded_random (  ) 
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義
Sun May 16 09:58:21 2010に生成されました。  doxygen 1.6.3