TNB Library
|
リバース参照アダプタテンプレート [詳解]
#include <TnbCollectionAdapter.h>
公開メンバ関数 | |
virtual const TYP & | At (INDEX index) const |
[取得] 要素の参照取得. [詳解] | |
const_iterator | begin (void) const |
[反復] 先頭const_iterator. [詳解] | |
CConstReverseAdapterT (const IConstCollectionT< TYP > *c) | |
コンストラクタ [詳解] | |
virtual INT_PTR | Compare (const IConstCollectionT< TYP > &c) const |
[確認] 比較. [詳解] | |
virtual void | Deserialize (const IDeserializer &ds) |
[処理] デシリアライズ [詳解] | |
const_iterator | end (void) const |
[反復] 最後const_iterator. [詳解] | |
INDEX | Find (const IChecker &checker, INDEX startIndex=0, bool boIsReverse=false) const |
[検索] 条件一致要素の検索. [詳解] | |
INDEX | Find (const IConstCollectionT< TYP > &t, const IComparatorT< TYP > &comparator, INDEX startIndex=0) const |
[検索] 指定配列の検索. [詳解] | |
INDEX | Find (const IConstCollectionT< TYP > &t, INDEX startIndex=0) const |
[検索] 指定配列の検索. [詳解] | |
INDEX | Find (const TYP &t, const IComparatorT< TYP > &comparator, INDEX startIndex=0) const |
[検索] 指定要素の検索. [詳解] | |
INDEX | Find (const TYP &t, INDEX startIndex=0) const |
[検索] 指定要素の検索. [詳解] | |
INDEX | FindMax (const IComparatorT< TYP > &comparator, const TYP &def) const |
[検索] 要素の最大検索. [詳解] | |
INDEX | FindMax (const TYP &def) const |
[検索] 要素の最大検索. [詳解] | |
INDEX | FindMin (const IComparatorT< TYP > &comparator, const TYP &def) const |
[検索] 要素の最小検索. [詳解] | |
INDEX | FindMin (const TYP &def) const |
[検索] 要素の最小検索. [詳解] | |
virtual TYP | Get (INDEX index) const |
[取得] 要素の取得. [詳解] | |
virtual size_t | GetElements (size_t size, TYP *_P, INDEX offset=0) const |
[取得] 複数要素取り出し. [詳解] | |
TYP | GetEx (INDEX index) const |
[取得] 要素の取得. [詳解] | |
virtual size_t | GetSize (void) const |
[取得] 要素数取得 [詳解] | |
bool | IsEmpty (void) const |
[確認] 要素の有無確認. [詳解] | |
virtual bool | IsEqual (const IConstCollectionT< TYP > &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< TYP > &t) const |
[確認] 比較 [詳解] | |
INT_PTR | operator- (const TNB::IConstCollectionT< TYP > &t) const |
[確認] 比較 [詳解] | |
bool | operator< (const TNB::IConstCollectionT< TYP > &t) const |
[確認] 比較 [詳解] | |
bool | operator<= (const TNB::IConstCollectionT< TYP > &t) const |
[確認] 比較 [詳解] | |
bool | operator== (const TNB::IConstCollectionT< TYP > &t) const |
[確認] 比較 [詳解] | |
bool | operator> (const TNB::IConstCollectionT< TYP > &t) const |
[確認] 比較 [詳解] | |
bool | operator>= (const TNB::IConstCollectionT< TYP > &t) const |
[確認] 比較 [詳解] | |
virtual void | Serialize (ISerializer &_sr) const |
[処理] シリアライズ [詳解] | |
virtual void | Unlock (void) const |
[排他] アンロック [詳解] | |
限定公開変数類 | |
const IConstCollectionT< TYP > * | m_pCol |
対象のコレクション [詳解] | |
size_t | m_size |
サイズ [詳解] | |
リバース参照アダプタテンプレート
IConstCollectionT を持つコレクションをインデックスを逆順にするアダプタです。 コンストラクタでコレクションを指定すると、並びが逆のコレクションになります。 実体は、コンストラクタで渡したものなので、本インスタンスが有効の間、実体を消さないようにします。 また、サイズはコンストラクタ時に記憶しますので、元コレクションを拡張しても本クラスのサイズは変化しません。
TYP | 保持する型(コピー可能の型に限る) |
TnbCollectionAdapter.h の 193 行目に定義があります。
|
explicit |
|
virtual |
[取得] 要素の参照取得.
index | インデックス |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
IConstCollectionT< TYP >を実装しています。
TnbCollectionAdapter.h の 215 行目に定義があります。
|
inherited |
|
virtualinherited |
[確認] 比較.
コンパレータ( IComparatorT のサブクラス)を使用して、全要素を比較します。
c | 比較対象 |
0 | 自分は c と同じ |
1以上 | 自分は c より大きい |
0未満 | 自分は c より小さい |
IComparableT< TNB::IConstCollectionT< TYP > >を実装しています。
TnbCollection.h の 595 行目に定義があります。
|
virtualinherited |
[処理] デシリアライズ
ds | デシリアライザー。 |
CNotSupportException | サポートしていないことを示すためにスローされます。 |
ISerializableを実装しています。
CAttributedVectorT< TYP, ATT >, CAttributedVectorT< BYTE, BYTE >, ICollectionT< TYP >, ICollectionT< bool >, ICollectionT< TNB::CPairT< T, T > >, ICollectionT< TNB::CPairT< KEY, VAL > >, ICollectionT< BYTE >, ICollectionT< DWORD >, ICollectionT< TNB::CArrayPtrHandleT< TYP > >, ICollectionT< WORD >, ICollectionT< TNB::CVectorT >, ICollectionT< TValue >, ICollectionT< CVectorT< BYTE > >, ICollectionT< TNB::CPairT< TNB::CStrT, TNB::CSingleSetT< TNB::CStrT > > >, ICollectionT< TNB::CPairT >, ICollectionT< CStr >, ICollectionT< TParam >, ICollectionT< TNB::CArrayPtrHandleT< TParam > >, ICollectionT< TCHAR >, ICollectionT< TNB::CPairT< PROPID, CTagInfo > >, ICollectionT< TNB::CGrid::TFieldInfo >, ICollectionT< TNB::CPairT< int, HICON > >, ICollectionT< HICON >, ICollectionT< TNB::CMailAddress >, ICollectionT< CAscii >, ICollectionT< TNB::CPairT< TNB::CStrT, CVectorT< BYTE > > >, ICollectionT< TNB::CPairT< CAscii, CAscii > >, ICollectionT< TNB::CMultiFontTextDrawer::TPart >, ICollectionT< POINT >, ICollectionT< TNB::CPointerHandleT< CCursorManager > >, ICollectionT< TNB::CNmea0183::TGpGsv >, ICollectionT< TNB::CPacketCommander::CInner::TTask * >, ICollectionT< TNB::CPointerHandleT< TYP > >, ICollectionT< TNB::CListQueueT< TYP > >, ICollectionT< TInfo >, ICollectionT< TNB::CStrT< TYP > >, ICollectionT< TNB::CPointerHandleT< TNB::CShapeFile::IRecordContent > >, ICollectionT< SOCKET >, ICollectionT< TNB::CPairT< TNB::CStrT, TNB::CMapT > >, ICollectionT< TNB::CPairT< DWORD, TYP > >, ICollectionT< TYP * >, ICollectionT< TNB::CPointerHandleT< TBindWork > >, ICollectionT< CFileInfoArray >, ICollectionT< TNB::CTmlDocuments::TFileInfo::TFunc >, ICollectionT< TFuncInfo >, ICollectionT< EKind >, ICollectionT< TNB::CGrammarAnalyzerT >, ICollectionT< INDEX >, ICollectionT< CVaVaVector >, ICollectionT< CArVaVector >, ICollectionT< CTmlValue >, ICollectionT< char >, ICollectionT< TNB::CPairT< FOURCC, TChunkMap > >, ICollectionT< TNB::CPairT< FOURCC, TNB::CStrT > >, ICollectionT< EAttr >, ICollectionT< TParam * >, ICollectionT< TNB::MFC::CColorfulListBox::CColor::TParam >, ICollectionT< CPointerHandleT< IDrawable > >, ICollectionT< UINT >, ICollectionT< CDrawersVector >, ICollectionT< IDrawable::Ptr >, ICollectionT< TNB::CPointerHandleT< TNB::MFC::CDrawingSubMenu > >, ICollectionT< TNB::CPairT< HTREEITEM, CPointerHandleT< IDrawable > > >, ICollectionT< CArrayPtrHandleT< TCHAR > >, ICollectionT< TNB::CPairT< COLORREF, CPointerHandleT< TPointInfo > > >, CListT< TYP, ATT >, CListT< TNB::CListQueueT< TYP > > (計67項目)で再実装されています。
TnbCollection.h の 384 行目に定義があります。
|
inherited |
|
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 のサブクラス)を使用して、検索します。
t | 要素 |
comparator | コンパレーター |
startIndex | 検索開始インデックス。 |
INVALID_INDEX | 未発見 |
それ以外 | 発見したインデックス |
TnbCollection.h の 482 行目に定義があります。
|
inherited |
[検索] 指定要素の検索.
IComparatorT::GetDefault() で得られるコンパレータを使用して検索します。
t | 要素 |
startIndex | 検索開始インデックス。 |
INVALID_INDEX | 未発見 |
それ以外 | 発見したインデックス |
TnbCollection.h の 508 行目に定義があります。
|
inherited |
[検索] 要素の最大検索.
コンパレータ( IComparatorT のサブクラス)を使用して、比較検索します。
comparator | コンパレーター |
def | 最小値(初期値) |
INVALID_INDEX | 未発見 |
それ以外 | 最大を持つインデックス |
TnbCollection.h の 521 行目に定義があります。
|
inherited |
[検索] 要素の最大検索.
IComparatorT::GetDefault() で得られるコンパレータを使用して比較検索します。
def | 最小値(初期値) |
INVALID_INDEX | 未発見 |
それ以外 | 最大を持つインデックス |
TnbCollection.h の 545 行目に定義があります。
|
inherited |
[検索] 要素の最小検索.
コンパレータ( IComparatorT のサブクラス)を使用して、比較検索します。
comparator | コンパレーター |
def | 最大値(初期値) |
INVALID_INDEX | 未発見 |
それ以外 | 最小を持つインデックス |
TnbCollection.h の 558 行目に定義があります。
|
inherited |
[検索] 要素の最小検索.
IComparatorT::GetDefault() で得られるコンパレータを使用して比較検索します。
def | 最大値(初期値) |
INVALID_INDEX | 未発見 |
それ以外 | 最小を持つインデックス |
TnbCollection.h の 582 行目に定義があります。
|
virtualinherited |
[取得] 要素の取得.
index | インデックス |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
ICollectionMidT< TYP >, ICollectionMidT< CVectorT< BYTE > >, ICollectionMidT< TParam >, ICollectionMidT< TNB::CListQueueT< TYP > >, ICollectionMidT< BYTE >, ICollectionMidT< CArrayPtrHandleT< TCHAR > >, CConstFileMappingT< TYP >, CConstFileMappingT< BYTE >, CConstFileMappingT< short >, CReaderAdapter, CWriterAdapter, CFileMappingT< TYP >, CMapT< KEY, VAL, INK >, CMapT< TNB::CStrT, TNB::CSingleSetT< TNB::CStrT > >, CMapT< PROPID, CTagInfo >, CMapT< int, HICON >, CMapT< TNB::CStrT, CVectorT< BYTE > >, CMapT< CAscii, CAscii, LPCSTR >, CMapT< TNB::CStrT, TNB::CMapT, LPCTSTR >, CMapT< DWORD, TYP >, CMapT< FOURCC, TChunkMap >, CMapT< FOURCC, TNB::CStrT >, CMapT< HTREEITEM, CPointerHandleT< IDrawable > >, CMapT< COLORREF, CPointerHandleT< TPointInfo > >, CVectorT< TYP >, CVectorT< TNB::CPairT< T, T > >, CVectorT< BYTE >, CVectorT< DWORD >, CVectorT< TNB::CArrayPtrHandleT< TYP > >, CVectorT< WORD >, CVectorT< TNB::CVectorT >, CVectorT< TValue >, CVectorT< TNB::CPairT >, CVectorT< CStr >, CVectorT< TNB::CArrayPtrHandleT< TParam > >, CVectorT< TCHAR >, CVectorT< TNB::CGrid::TFieldInfo >, CVectorT< HICON >, CVectorT< TNB::CMailAddress >, CVectorT< CAscii >, CVectorT< TNB::CMultiFontTextDrawer::TPart >, CVectorT< POINT >, CVectorT< TNB::CPointerHandleT< CCursorManager > >, CVectorT< TNB::CNmea0183::TGpGsv >, CVectorT< TNB::CPacketCommander::CInner::TTask * >, CVectorT< TNB::CPointerHandleT< TYP > >, CVectorT< TInfo >, CVectorT< TParam >, CVectorT< TNB::CStrT< TYP > >, CVectorT< TNB::CPointerHandleT< TNB::CShapeFile::IRecordContent > >, CVectorT< SOCKET >, CVectorT< CVectorT< BYTE > >, CVectorT< TYP * >, CVectorT< TNB::CPointerHandleT< TBindWork > >, CVectorT< CFileInfoArray >, CVectorT< TNB::CTmlDocuments::TFileInfo::TFunc >, CVectorT< TFuncInfo >, CVectorT< EKind >, CVectorT< TNB::CGrammarAnalyzerT >, CVectorT< INDEX >, CVectorT< CVaVaVector >, CVectorT< CArVaVector >, CVectorT< CTmlValue >, CVectorT< char >, CVectorT< EAttr >, CVectorT< TParam * >, CVectorT< TNB::MFC::CColorfulListBox::CColor::TParam >, CVectorT< CPointerHandleT< IDrawable > >, CVectorT< UINT >, CVectorT< CDrawersVector >, CVectorT< IDrawable::Ptr >, CVectorT< TNB::CPointerHandleT< TNB::MFC::CDrawingSubMenu > > (計72項目)で再実装されています。
TnbCollection.h の 298 行目に定義があります。
|
virtualinherited |
[取得] 複数要素取り出し.
[in] | size | 取り出すデータの数。 |
[out] | _P | コピーするポインタ。size 分の領域がある必要があります。 |
[in] | offset | 取り出し開始のインデックス。省略すると0。 |
TnbCollection.h の 322 行目に定義があります。
|
inherited |
[取得] 要素の取得.
index | インデックス |
CIndexOutOfBoundsException | インデックスが範囲外であることを示すためにスローされます。 |
TnbCollection.h の 309 行目に定義があります。
|
virtualinherited |
[取得] 要素数取得
IConstCollectionT< TYP >を実装しています。
CConstOffsetAdapterT< TYP >, CConstOffsetAdapterT< BYTE >で再実装されています。
TnbCollectionAdapter.h の 82 行目に定義があります。
|
inherited |
[確認] 要素の有無確認.
true | 要素なし |
false | 要素有り |
TnbCollection.h の 346 行目に定義があります。
|
virtualinherited |
[確認] 比較.
コンパレータ( IComparatorT のサブクラス)を使用して、全要素を比較します。
c | 比較対象 |
true | 自分は c と同じ |
false | 自分は c と異なる |
IComparableT< TNB::IConstCollectionT< TYP > >を再実装しています。
CMapT< CAscii, CAscii, LPCSTR >, CMapT< COLORREF, CPointerHandleT< TPointInfo > >, CMapT< DWORD, TYP >, CMapT< FOURCC, TChunkMap >, CMapT< FOURCC, TNB::CStrT >, CMapT< HTREEITEM, CPointerHandleT< IDrawable > >, CMapT< int, HICON >, CMapT< KEY, VAL, INK >, CMapT< PROPID, CTagInfo >, CMapT< TNB::CStrT, CVectorT< BYTE > >, CMapT< TNB::CStrT, TNB::CMapT, LPCTSTR >, CMapT< TNB::CStrT, TNB::CSingleSetT< TNB::CStrT > >で再実装されています。
TnbCollection.h の 624 行目に定義があります。
|
inherited |
[確認] INDEXの有効確認.
index | インデックス |
true | 指定Indexは有効。 |
false | 指定Indexは無効(範囲外)。 |
TnbCollection.h の 358 行目に定義があります。
|
virtualinherited |
[排他] ロック
dwTime | ダミーです。省略してください。 |
ISynchronizedを実装しています。
CConstAppendAdapterT< TYP >で再実装されています。
TnbCollectionAdapter.h の 67 行目に定義があります。
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
virtualinherited |
[処理] シリアライズ
[out] | _sr | シリアライザー。 |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
ISerializableを実装しています。
CAttributedVectorT< TYP, ATT >, CAttributedVectorT< BYTE, BYTE >, CListT< TYP, ATT >, CListT< TNB::CListQueueT< TYP > >, CPointerVectorT< TYP >, CPointerVectorT< CCursorManager >, CPointerVectorT< TNB::CShapeFile::IRecordContent >, CPointerVectorT< TBindWork >, CPointerVectorT< TNB::MFC::CDrawingSubMenu >で再実装されています。
TnbCollection.h の 368 行目に定義があります。
|
virtualinherited |
[排他] アンロック
ISynchronizedを実装しています。
CConstAppendAdapterT< TYP >で再実装されています。
TnbCollectionAdapter.h の 73 行目に定義があります。
|
protectedinherited |
対象のコレクション
TnbCollectionAdapter.h の 45 行目に定義があります。
|
protectedinherited |
サイズ
TnbCollectionAdapter.h の 46 行目に定義があります。