TNB Library
|
配列型bit情報管理テンプレート [詳解]
#include <TnbBitVector.h>
クラス | |
class | CRef |
配列型bit情報管理の参照クラス [詳解] | |
公開メンバ関数 | |
virtual INDEX | Add (const bool &t) |
[追加] 要素一つ追加. [詳解] | |
virtual size_t | AddElements (size_t size, const bool *P=NULL) |
[追加] 複数要素追加. [詳解] | |
INDEX | AddEx (const bool &t) |
[追加] 要素一つ追加. [詳解] | |
virtual size_t | Append (const IConstCollectionT< bool > &c) |
[追加] 追加. [詳解] | |
virtual const bool & | At (INDEX index) const |
[取得] 要素の参照取得. [詳解] | |
iterator | begin (void) |
[反復] 先頭iterator. [詳解] | |
const_iterator | begin (void) const |
[反復] 先頭const_iterator. [詳解] | |
CBitVector (const CBitVector &other) | |
コピーコンストラクタ [詳解] | |
CBitVector (size_t size=0) | |
コンストラクタ [詳解] | |
virtual INT_PTR | Compare (const IConstCollectionT< bool > &c) const |
[確認] 比較. [詳解] | |
virtual size_t | Copy (const IConstCollectionT< bool > &c) |
[設定] コピー. [詳解] | |
virtual size_t | CopyElements (size_t size, const bool *P=NULL) |
[設定] コピー. [詳解] | |
virtual size_t | Cull (const IChecker &checker, bool boIsReverse=false) |
[削除] 間引き. [詳解] | |
virtual void | Deserialize (const IDeserializer &ds) |
[処理] デシリアライズ [詳解] | |
iterator | end (void) |
[反復] 最後iterator. [詳解] | |
const_iterator | end (void) const |
[反復] 最後const_iterator. [詳解] | |
INDEX | Find (const bool &t, const IComparatorT< bool > &comparator, INDEX startIndex=0) const |
[検索] 指定要素の検索. [詳解] | |
INDEX | Find (const bool &t, INDEX startIndex=0) const |
[検索] 指定要素の検索. [詳解] | |
INDEX | Find (const IChecker &checker, INDEX startIndex=0, bool boIsReverse=false) const |
[検索] 条件一致要素の検索. [詳解] | |
INDEX | Find (const IConstCollectionT< bool > &t, const IComparatorT< bool > &comparator, INDEX startIndex=0) const |
[検索] 指定配列の検索. [詳解] | |
INDEX | Find (const IConstCollectionT< bool > &t, INDEX startIndex=0) const |
[検索] 指定配列の検索. [詳解] | |
INDEX | FindMax (const bool &def) const |
[検索] 要素の最大検索. [詳解] | |
INDEX | FindMax (const IComparatorT< bool > &comparator, const bool &def) const |
[検索] 要素の最大検索. [詳解] | |
INDEX | FindMin (const bool &def) const |
[検索] 要素の最小検索. [詳解] | |
INDEX | FindMin (const IComparatorT< bool > &comparator, const bool &def) const |
[検索] 要素の最小検索. [詳解] | |
virtual bool | Get (INDEX index) const |
[取得] 要素の取得. [詳解] | |
virtual size_t | GetElements (size_t size, bool *_P, INDEX offset=0) const |
[取得] 複数要素取り出し. [詳解] | |
bool | GetEx (INDEX index) const |
[取得] 要素の取得. [詳解] | |
virtual size_t | GetSize (void) const |
[取得] サイズ取得 [詳解] | |
bool | Insert (INDEX index, const bool &t) |
[追加] 要素一つ挿入 [詳解] | |
iterator | insert (iterator ite, bool t=false) |
[反復] 挿入 [詳解] | |
virtual bool | InsertEx (INDEX index, const bool &t) |
[追加] 要素一つ挿入. [詳解] | |
bool | IsEmpty (void) const |
[確認] 要素の有無確認. [詳解] | |
virtual bool | IsEqual (const IConstCollectionT< bool > &c) const |
[確認] 比較. [詳解] | |
bool | IsInRange (INDEX index) const |
[確認] INDEXの有効確認. [詳解] | |
virtual bool | Lock (DWORD dwTime=INFINITE) const |
[排他] ロック [詳解] | |
operator size_t (void) const | |
[取得] 要素数取得. [詳解] | |
bool | operator!= (const TNB::IConstCollectionT< bool > &t) const |
[確認] 比較 [詳解] | |
INT_PTR | operator- (const TNB::IConstCollectionT< bool > &t) const |
[確認] 比較 [詳解] | |
bool | operator< (const TNB::IConstCollectionT< bool > &t) const |
[確認] 比較 [詳解] | |
bool | operator<= (const TNB::IConstCollectionT< bool > &t) const |
[確認] 比較 [詳解] | |
CBitVector & | operator= (const CBitVector &other) |
[代入] コピーオペレータ [詳解] | |
bool | operator== (const TNB::IConstCollectionT< bool > &t) const |
[確認] 比較 [詳解] | |
bool | operator> (const TNB::IConstCollectionT< bool > &t) const |
[確認] 比較 [詳解] | |
bool | operator>= (const TNB::IConstCollectionT< bool > &t) const |
[確認] 比較 [詳解] | |
CRef | operator[] (INDEX index) |
[取得] 要素の参照取得. [詳解] | |
const CRef | operator[] (INDEX index) const |
[取得] 要素の参照取得. [詳解] | |
void | push_back (const bool &t) |
[反復] 最後に追加 [詳解] | |
void | push_front (bool t) |
[反復] 先頭に挿入 [詳解] | |
virtual bool & | Ref (INDEX index) |
[取得] 要素の参照取得. [詳解] | |
virtual bool | Remove (INDEX index) |
[削除] 要素一つ削除. [詳解] | |
virtual bool | RemoveAll (void) |
[削除] 空化 [詳解] | |
virtual size_t | RemoveElements (INDEX index, size_t size=0) |
[削除] 要素削除. [詳解] | |
bool | RemoveEx (INDEX index) |
[削除] 要素一つ削除. [詳解] | |
virtual void | Serialize (ISerializer &_sr) const |
[処理] シリアライズ [詳解] | |
virtual bool | Set (INDEX index, const bool &t) |
[設定] 要素の設定. [詳解] | |
virtual size_t | SetElements (size_t size, const bool *P=NULL) |
[設定] 複数要素設定. [詳解] | |
bool | SetEx (INDEX index, const bool &t) |
[設定] 要素の設定. [詳解] | |
void | SetIncrementSize (size_t size) |
[設定] 余白サイズ [詳解] | |
virtual bool | SetSize (size_t size) |
[操作] サイズ指定 [詳解] | |
bool | Shuffle (int iDepth=1) |
[操作] シャッフル. [詳解] | |
bool | Sort (bool boIsReverse=false, bool boIsBubble=false) |
[操作] ソート. [詳解] | |
bool | Sort (const IComparatorT< bool > &comparator, bool boIsReverse=false, bool boIsBubble=false) |
[操作] ソート. [詳解] | |
virtual void | Swap (INDEX index1, INDEX index2) |
[設定] 要素の入れ替え. [詳解] | |
size_t | TrimBottom (const bool &t) |
[処理] 末尾トリム. [詳解] | |
size_t | TrimBottom (const bool &t, const IComparatorT< bool > &comparator) |
[処理] 末尾トリム. [詳解] | |
virtual void | Unlock (void) const |
[排他] アンロック [詳解] | |
virtual | ~CBitVector (void) |
デストラクタ [詳解] | |
配列型bit情報管理テンプレート
動的に配列を増やすことができます(メモリの再配置が発生する可能性があります)。
TnbBitVector.h の 39 行目に定義があります。
|
explicit |
コンストラクタ
size | メモリ確保時の追加サイズ。 SetIncrementSize() と同じです。 |
TnbBitVector.h の 245 行目に定義があります。
CBitVector | ( | const CBitVector & | other | ) |
|
virtual |
デストラクタ
TnbBitVector.h の 261 行目に定義があります。
|
virtual |
[追加] 要素一つ追加.
t | 要素。 |
ICollectionT< bool >を実装しています。
TnbBitVector.h の 382 行目に定義があります。
|
virtualinherited |
[追加] 複数要素追加.
最後に追加します。
size | 追加するデータの数。 |
P | 追加するデータ列のポインタ。省略すると TYP()が代入されます。 |
INVALID_SIZE | エラー。 |
それ以外 | 追加した数。 |
TnbCollection.h の 1174 行目に定義があります。
|
inherited |
|
virtualinherited |
[追加] 追加.
指定のデータを追加します。
c | 追加するデータ |
INVALID_SIZE | エラー。 |
それ以外 | 追加した数。 |
TnbCollection.h の 1208 行目に定義があります。
|
virtual |
[取得] 要素の参照取得.
index | インデックス |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
IConstCollectionT< bool >を実装しています。
TnbBitVector.h の 328 行目に定義があります。
iterator begin | ( | void | ) |
const_iterator begin | ( | void | ) | const |
|
virtualinherited |
[確認] 比較.
コンパレータ( IComparatorT のサブクラス)を使用して、全要素を比較します。
c | 比較対象 |
0 | 自分は c と同じ |
1以上 | 自分は c より大きい |
0未満 | 自分は c より小さい |
IComparableT< TNB::IConstCollectionT< bool > >を実装しています。
TnbCollection.h の 595 行目に定義があります。
|
virtualinherited |
[設定] コピー.
管理しているバッファを開放し、指定のデータをコピーします。
c | コピーするデータ |
INVALID_SIZE | エラー。 |
それ以外 | 複製した数。 |
TnbCollection.h の 1263 行目に定義があります。
|
virtualinherited |
[設定] コピー.
管理しているバッファを開放し、指定のデータをコピーします。
size | データ長。 |
P | コピーする内容を指定。省略すると TYP()が代入されます。 |
INVALID_SIZE | エラー。 |
それ以外 | 複製した数。 |
TnbCollection.h の 1232 行目に定義があります。
|
virtualinherited |
[削除] 間引き.
指定の条件に合わないもの(チェッカーの結果により)を削除します。
checker | チェッカー 。 |
boIsReverse | 省略すると条件に一致を残します。 trueを指定すると条件不一致を残します。 |
INVALID_SIZE | エラー。 |
それ以外 | 削除した数。 |
TnbCollection.h の 1290 行目に定義があります。
|
virtualinherited |
[処理] デシリアライズ
ds | デシリアライザー。これからメンバの内容を取り出してください。 |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
IConstCollectionT< bool >を再実装しています。
TnbCollection.h の 1355 行目に定義があります。
iterator end | ( | void | ) |
const_iterator end | ( | void | ) | const |
|
inherited |
[検索] 指定要素の検索.
コンパレータ( IComparatorT のサブクラス)を使用して、検索します。
t | 要素 |
comparator | コンパレーター |
startIndex | 検索開始インデックス。 |
INVALID_INDEX | 未発見 |
それ以外 | 発見したインデックス |
TnbCollection.h の 482 行目に定義があります。
|
inherited |
[検索] 指定要素の検索.
IComparatorT::GetDefault() で得られるコンパレータを使用して検索します。
t | 要素 |
startIndex | 検索開始インデックス。 |
INVALID_INDEX | 未発見 |
それ以外 | 発見したインデックス |
TnbCollection.h の 508 行目に定義があります。
|
inherited |
[検索] 条件一致要素の検索.
チェッカー( IChecker のサブクラス)を使用して、検索します。
checker | チェッカー |
startIndex | 検索開始インデックス。 |
boIsReverse | 省略すると条件に一致を探します。 trueを指定すると条件不一致を探します。 |
INVALID_INDEX | 未発見 |
それ以外 | 発見したインデックス |
TnbCollection.h の 400 行目に定義があります。
|
inherited |
[検索] 指定配列の検索.
コンパレータ( IComparatorT のサブクラス)を使用して、検索します。
t | 配列 |
comparator | コンパレーター |
startIndex | 検索開始インデックス。 |
INVALID_INDEX | 未発見 |
それ以外 | 発見したインデックス |
TnbCollection.h の 427 行目に定義があります。
|
inherited |
[検索] 指定配列の検索.
IComparatorT::GetDefault() で得られるコンパレータを使用して検索します。
t | 配列 |
startIndex | 検索開始インデックス。 |
INVALID_INDEX | 未発見 |
それ以外 | 発見したインデックス |
TnbCollection.h の 467 行目に定義があります。
|
inherited |
[検索] 要素の最大検索.
IComparatorT::GetDefault() で得られるコンパレータを使用して比較検索します。
def | 最小値(初期値) |
INVALID_INDEX | 未発見 |
それ以外 | 最大を持つインデックス |
TnbCollection.h の 545 行目に定義があります。
|
inherited |
[検索] 要素の最大検索.
コンパレータ( IComparatorT のサブクラス)を使用して、比較検索します。
comparator | コンパレーター |
def | 最小値(初期値) |
INVALID_INDEX | 未発見 |
それ以外 | 最大を持つインデックス |
TnbCollection.h の 521 行目に定義があります。
|
inherited |
[検索] 要素の最小検索.
IComparatorT::GetDefault() で得られるコンパレータを使用して比較検索します。
def | 最大値(初期値) |
INVALID_INDEX | 未発見 |
それ以外 | 最小を持つインデックス |
TnbCollection.h の 582 行目に定義があります。
|
inherited |
[検索] 要素の最小検索.
コンパレータ( IComparatorT のサブクラス)を使用して、比較検索します。
comparator | コンパレーター |
def | 最大値(初期値) |
INVALID_INDEX | 未発見 |
それ以外 | 最小を持つインデックス |
TnbCollection.h の 558 行目に定義があります。
|
virtualinherited |
[取得] 要素の取得.
index | インデックス |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
TnbCollection.h の 298 行目に定義があります。
|
virtualinherited |
[取得] 複数要素取り出し.
[in] | size | 取り出すデータの数。 |
[out] | _P | コピーするポインタ。size 分の領域がある必要があります。 |
[in] | offset | 取り出し開始のインデックス。省略すると0。 |
TnbCollection.h の 322 行目に定義があります。
|
inherited |
[取得] 要素の取得.
index | インデックス |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
TnbCollection.h の 309 行目に定義があります。
|
virtual |
[取得] サイズ取得
IConstCollectionT< bool >を実装しています。
TnbBitVector.h の 315 行目に定義があります。
|
virtual |
[追加] 要素一つ挿入
index | インデックス |
t | 要素 |
true | 挿入成功 |
false | 失敗(インデックス無効) |
ICollectionT< bool >を再実装しています。
TnbBitVector.h の 437 行目に定義があります。
|
virtualinherited |
[追加] 要素一つ挿入.
指定のインデックスに要素を追加します。
index | インデックス |
t | 要素 |
true | 挿入成功 |
false | 失敗(インデックス無効) |
TnbCollection.h の 1077 行目に定義があります。
|
inherited |
[確認] 要素の有無確認.
true | 要素なし |
false | 要素有り |
TnbCollection.h の 346 行目に定義があります。
|
virtualinherited |
[確認] 比較.
コンパレータ( IComparatorT のサブクラス)を使用して、全要素を比較します。
c | 比較対象 |
true | 自分は c と同じ |
false | 自分は c と異なる |
IComparableT< TNB::IConstCollectionT< bool > >を再実装しています。
TnbCollection.h の 624 行目に定義があります。
|
inherited |
[確認] INDEXの有効確認.
index | インデックス |
true | 指定Indexは有効。 |
false | 指定Indexは無効(範囲外)。 |
TnbCollection.h の 358 行目に定義があります。
|
virtual |
[排他] ロック
dwTime | ダミーです。省略してください。 |
ISynchronizedを実装しています。
TnbBitVector.h の 300 行目に定義があります。
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
CBitVector & operator= | ( | const CBitVector & | other | ) |
[代入] コピーオペレータ
other | 代入元 |
TnbBitVector.h の 272 行目に定義があります。
|
inherited |
|
inherited |
|
inherited |
CRef operator[] | ( | INDEX | index | ) |
[取得] 要素の参照取得.
index | インデックス |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
TnbBitVector.h の 490 行目に定義があります。
const CRef operator[] | ( | INDEX | index | ) | const |
[取得] 要素の参照取得.
index | インデックス |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
TnbBitVector.h の 473 行目に定義があります。
|
inherited |
void push_front | ( | bool | t | ) |
|
virtual |
[取得] 要素の参照取得.
index | インデックス |
CNotSupportException | サポートしていないことを示すためにスローされます。 |
ICollectionT< bool >を実装しています。
TnbBitVector.h の 345 行目に定義があります。
|
virtual |
[削除] 要素一つ削除.
index | インデックス |
true | 削除成功 |
false | 失敗 |
ICollectionT< bool >を実装しています。
TnbBitVector.h の 405 行目に定義があります。
|
virtual |
[削除] 空化
ICollectionT< bool >を再実装しています。
TnbBitVector.h の 422 行目に定義があります。
|
virtualinherited |
[削除] 要素削除.
index | インデックス |
size | 削除数。省略すると0。0を指定するとそれ以降全部削除します。 |
INVALID_SIZE | エラー。 |
それ以外 | 削除した数。 |
TnbCollection.h の 1112 行目に定義があります。
|
inherited |
|
virtualinherited |
[処理] シリアライズ
[out] | _sr | シリアライザー。 |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
ISerializableを実装しています。
TnbCollection.h の 368 行目に定義があります。
|
virtual |
[設定] 要素の設定.
index | インデックス |
t | 内容 |
true | 設定成功 |
false | 失敗 |
ICollectionT< bool >を実装しています。
TnbBitVector.h の 359 行目に定義があります。
|
virtualinherited |
[設定] 複数要素設定.
管理しているバッファを開放し、指定のデータをコピーします。
size | データ長。 |
P | コピーする内容を指定。省略すると TYP()が代入されます。 |
INVALID_SIZE | エラー。 |
それ以外 | 複製した数。 |
TnbCollection.h の 1245 行目に定義があります。
|
inherited |
void SetIncrementSize | ( | size_t | size | ) |
[設定] 余白サイズ
size | メモリ確保時の追加サイズ。マイナスなら自動です。 |
TnbBitVector.h の 287 行目に定義があります。
|
virtualinherited |
[操作] サイズ指定
size | サイズ |
true | 成功 |
false | 失敗 |
TnbCollection.h の 1319 行目に定義があります。
|
inherited |
[操作] シャッフル.
要素の並びをシャッフルします。
iDepth | シャッフルを何回行うかを指定できます。数やればバラけるというものも有りません。 省略すると1回です。 |
true | 成功 |
false | 失敗 |
TnbCollection.h の 1434 行目に定義があります。
|
inherited |
[操作] ソート.
IComparatorT::GetDefault() で得られるコンパレータを使用して比較します。
boIsReverse | 省略すると小さい順にソートします。 trueを指定すると大きい順位ソートします。 |
boIsBubble | trueをバブルソートアルゴリズムを使います。 通常はクイックソートアルゴリズムです。 |
true | 成功 |
false | 失敗 |
TnbCollection.h の 1420 行目に定義があります。
|
inherited |
[操作] ソート.
コンパレータ( IComparatorT のサブクラス)を使用して、比較します。
comparator | コンパレーター |
boIsReverse | 省略すると小さい順にソートします。 trueを指定すると大きい順位ソートします。 |
boIsBubble | trueをバブルソートアルゴリズムを使います。 通常はクイックソートアルゴリズムです。 |
true | 成功 |
false | 失敗 |
TnbCollection.h の 1385 行目に定義があります。
|
virtualinherited |
[設定] 要素の入れ替え.
index1 | インデックス1 |
index2 | インデックス2 |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
TnbCollection.h の 1155 行目に定義があります。
|
inherited |
|
inherited |
[処理] 末尾トリム.
t | トリム対象の情報。 |
comparator | コンパレータ。 |
TnbCollection.h の 1472 行目に定義があります。
|
virtual |