nl::Weave::Profiles::DataManagement_Current::TraitPathStore

概要

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

TraitPathStore()
空のコンストラクタ。

パブリック タイプ

@153{
  kFlag_Failed = 0x2
}
enum
Flags typedef
uint8_t

パブリック属性

mStore
Record *

パブリック関数

AddItem(const TraitPath & aItem)
TraitPath をストアに追加します。
AddItem(const TraitPath & aItem, Flags aFlags)
指定されたフラグのセットで TraitPath をストアに追加します。
AddItemDedup(const TraitPath & aItem, const TraitSchemaEngine *const aSchemaEngine)
AreFlagsSet(size_t aIndex, Flags aFlags) const
bool
Clear()
void
ストアを空にします。
Compact()
void
ストアを圧縮し、使用中のすべてのアイテムを配列の先頭に向かって下に移動します。
GetFirstValidItem() const
size_t
GetFirstValidItem(TraitDataHandle aTraitDataHandle) const
size_t
GetItemAt(size_t aIndex, TraitPath & aTraitPath)
void
GetNextValidItem(size_t i) const
size_t
GetNextValidItem(size_t i, TraitDataHandle aTraitDataHandle) const
size_t
GetNumItems()
size_t
GetPathStoreSize()
size_t
Includes(const TraitPath & aItem, const TraitSchemaEngine *const aSchemaEngine) const
bool
ストアのいずれかの TraitPath に特定の TraitPath が含まれているかどうかを確認します。
Init(Record *aRecordArray, size_t aNumItems)
void
TraitPathStore を初期化します。
InsertItemAfter(size_t aIndex, const TraitPath & aItem, Flags aFlags)
InsertItemAt(size_t aIndex, const TraitPath & aItem, Flags aFlags)
TraitPath をストアに追加し、指定されたインデックスに挿入します。
Intersects(const TraitPath & aItem, const TraitSchemaEngine *const aSchemaEngine) const
bool
ストア内の TraitPath のいずれかが、指定された TraitPath と交差しているかどうかを確認します。
IsEmpty()
bool
IsFull()
bool
IsItemFailed(size_t aIndex) const
bool
IsItemInUse(size_t aIndex) const
bool
IsItemValid(size_t aIndex) const
bool
IsPresent(const TraitPath & aItem) const
bool
指定された TraitPath がすでにストアにあるかどうかを確認します。
IsTraitPresent(TraitDataHandle aDataHandle) const
bool
RemoveItem(const TraitPath & aItem)
void
RemoveItemAt(size_t aIndex)
void
RemoveTrait(TraitDataHandle aDataHandle)
void
特定の TraitDataHandle を参照するすべての TraitPath を削除します。
SetFailed(size_t aIndex)
void
SetFailed()
void
すべての TraitPath を失敗としてマークします。
SetFailedTrait(TraitDataHandle aDataHandle)
void
指定された TraitDataHandle を参照するすべての TraitPath を失敗としてマークします。

構造体

nl::Weave::Profiles::DataManagement_Current::TraitPathStore::Record

パブリック タイプ

@153

 nl::Weave::Profiles::DataManagement_Current::TraitPathStore::@153
プロパティ
kFlag_Failed

アイテムは使用中ですが、有効ではありません。

フラグ

uint8_t nl::Weave::Profiles::DataManagement_Current::TraitPathStore::Flags

パブリック属性

mStore

Record * nl::Weave::Profiles::DataManagement_Current::TraitPathStore::mStore

パブリック関数

AddItem

WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::TraitPathStore::AddItem(
  const TraitPath & aItem
)

TraitPath をストアに追加します。

詳細
パラメータ
[in] aItem
格納される TraitPath
戻り値
WEAVE_NO_ERROR
成功したかどうか検証します。
WEAVE_ERROR_WDM_PATH_STORE_FULL
(店舗が満員の場合)

AddItem

WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::TraitPathStore::AddItem(
  const TraitPath & aItem,
  Flags aFlags
)

指定されたフラグのセットで TraitPath をストアに追加します。

詳細
パラメータ
[in] aItem
格納される TraitPath
[in] aFlags
追加するアイテムで true に設定されるフラグ
戻り値
WEAVE_NO_ERROR
成功したかどうか検証します。
WEAVE_ERROR_WDM_PATH_STORE_FULL
(店舗が満員の場合)
WEAVE_ERROR_INVALID_ARGUMENT
aFlags に予約済みフラグが含まれている場合

AddItemDedup

WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::TraitPathStore::AddItemDedup(
  const TraitPath & aItem,
  const TraitSchemaEngine *const aSchemaEngine
)

AreFlagsSet

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::AreFlagsSet(
  size_t aIndex,
  Flags aFlags
) const 

消去

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::Clear()

ストアを空にします。

コンパクト

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::Compact()

ストアを圧縮し、使用中のすべてのアイテムを配列の先頭に向かって下に移動します。

これは、TraitPathStore を使用して、編集可能なリスト(SubscriptionClient によって管理される進行中のパスのリストなど)を実装する際に役立ちます。

GetFirstValidItem

size_t nl::Weave::Profiles::DataManagement_Current::TraitPathStore::GetFirstValidItem() const 

GetFirstValidItem

size_t nl::Weave::Profiles::DataManagement_Current::TraitPathStore::GetFirstValidItem(
  TraitDataHandle aTraitDataHandle
) const 

GetItemAt

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::GetItemAt(
  size_t aIndex,
  TraitPath & aTraitPath
)

GetNextValidItem

size_t nl::Weave::Profiles::DataManagement_Current::TraitPathStore::GetNextValidItem(
  size_t i
) const 

GetNextValidItem

size_t nl::Weave::Profiles::DataManagement_Current::TraitPathStore::GetNextValidItem(
  size_t i,
  TraitDataHandle aTraitDataHandle
) const 

GetNumItems

size_t nl::Weave::Profiles::DataManagement_Current::TraitPathStore::GetNumItems()

詳細
戻り値
ストア内の TraitPath の数を返します。

GetPathStoreSize

size_t nl::Weave::Profiles::DataManagement_Current::TraitPathStore::GetPathStoreSize()

詳細
戻り値
店舗の容量を返します。

含まれるもの:

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::Includes(
  const TraitPath & aItem,
  const TraitSchemaEngine *const aSchemaEngine
) const 

ストアのいずれかの TraitPath に特定の TraitPath が含まれているかどうかを確認します。

次のいずれかに該当する場合、TraitPath A には TraitPath B が含まれます。

  • 2 つの TraitPath は同じです。
  • A は B の祖先です。

詳細
パラメータ
[in] aTraitPath
ストアに対してチェックされる TraitPath
[in] aSchemaEngine
トレイト インスタンス aTraitPath が参照する TraitSchemaEngine へのポインタ。
戻り値
TraitPath がストア内のパスにすでに含まれている場合は true です。

init

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::Init(
  Record *aRecordArray,
  size_t aNumItems
)

TraitPathStore を初期化します。

詳細
パラメータ
[in] aRecordArray
パスとフラグの格納に使用されるレコードの配列へのポインタ。
[in] aArrayLength
ストレージ配列の長さ(アイテム数)。

InsertItemAfter

WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::TraitPathStore::InsertItemAfter(
  size_t aIndex,
  const TraitPath & aItem,
  Flags aFlags
)

InsertItemAt

WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::TraitPathStore::InsertItemAt(
  size_t aIndex,
  const TraitPath & aItem,
  Flags aFlags
)

TraitPath をストアに追加し、指定されたインデックスに挿入します。

店舗に隙間がないことを前提としています。

詳細
パラメータ
[in] aIndex
TraitPath を挿入するインデックス。挿入ではストアをコンパクトにしておく必要があります。
[in] aFlags
追加するアイテムに対して true に設定されるフラグ。
戻り値
WEAVE_ERROR_INCORRECT_STATE
店舗に隙間がある場合は
WEAVE_ERROR_INVALID_ARGUMENT
aIndex に TraitPath を追加してもストアがコンパクトにならない場合。
WEAVE_ERROR_WDM_PATH_STORE_FULL
(店舗が満員の場合)
WEAVE_NO_ERROR
成功したかどうか検証します。

交差

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::Intersects(
  const TraitPath & aItem,
  const TraitSchemaEngine *const aSchemaEngine
) const 

ストア内の TraitPath のいずれかが、指定された TraitPath と交差しているかどうかを確認します。

次のいずれかに該当する場合、2 つの TraitPath が交差します。

  • 2 つの TraitPath は同じです。
  • 2 つの TraitPath のいずれかは、もう 1 つの TraitPath の祖先になります。

詳細
パラメータ
[in] aTraitPath
ストアに対してチェックされる TraitPath
[in] aSchemaEngine
トレイト インスタンス aTraitPath が参照する TraitSchemaEngine へのポインタ。
戻り値
店舗が指定された TraitPath と交差している場合は true、そうでない場合は false です。

IsEmpty

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::IsEmpty()

詳細
戻り値
ストアが空の場合は true を、それ以外の場合は false を返します。

IsFull

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::IsFull()

詳細
戻り値
ストアがいっぱいの場合は true、それ以外の場合は false を返します。

IsItemFailed

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::IsItemFailed(
  size_t aIndex
) const 

IsItemInUse

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::IsItemInUse(
  size_t aIndex
) const 

IsItemValid

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::IsItemValid(
  size_t aIndex
) const 

IsPresent

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::IsPresent(
  const TraitPath & aItem
) const 

指定された TraitPath がすでにストアにあるかどうかを確認します。

詳細
パラメータ
[in] aItem
検索する TraitPath
戻り値
ストアに aItem が含まれている場合、true を返します。

IsTraitPresent

bool nl::Weave::Profiles::DataManagement_Current::TraitPathStore::IsTraitPresent(
  TraitDataHandle aDataHandle
) const 

詳細
パラメータ
[in] aDataHandle
検索する TraitDataHandle。
戻り値
指定された TraitDataHandle を参照するパスがストアに 1 つ以上含まれている場合は true を返します

RemoveItem

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::RemoveItem(
  const TraitPath & aItem
)

RemoveItemAt

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::RemoveItemAt(
  size_t aIndex
)

RemoveTrait

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::RemoveTrait(
  TraitDataHandle aDataHandle
)

特定の TraitDataHandle を参照するすべての TraitPath を削除します。

詳細
パラメータ
[in] aDataHandle
TraitDataHandle

SetFailed

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::SetFailed(
  size_t aIndex
)

SetFailed

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::SetFailed()

すべての TraitPath を失敗としてマークします。

SetFailedTrait

void nl::Weave::Profiles::DataManagement_Current::TraitPathStore::SetFailedTrait(
  TraitDataHandle aDataHandle
)

指定された TraitDataHandle を参照するすべての TraitPath を失敗としてマークします。

詳細
パラメータ
aDataHandle
検索する TraitDataHandle。

TraitPathStore

 nl::Weave::Profiles::DataManagement_Current::TraitPathStore::TraitPathStore()

空のコンストラクタ。