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

Tóm tắt

Hàm khởi tạo và phá huỷ

TraitPathStore()
Hàm khởi tạo trống.

Loại công khai

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

Các thuộc tính công khai

mStore
Record *

Hàm công khai

AddItem(const TraitPath & aItem)
Thêm TraitPath vào cửa hàng.
AddItem(const TraitPath & aItem, Flags aFlags)
Thêm TraitPath vào cửa hàng bằng một bộ cờ nhất định.
AddItemDedup(const TraitPath & aItem, const TraitSchemaEngine *const aSchemaEngine)
AreFlagsSet(size_t aIndex, Flags aFlags) const
bool
Clear()
void
Làm sạch cửa hàng.
Compact()
void
Thu gọn cửa hàng để di chuyển tất cả các mục đang sử dụng xuống phía đầu mảng.
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
Kiểm tra xem có TraitPaths trong cửa hàng nào chứa một TraitPath nhất định hay không.
Init(Record *aRecordArray, size_t aNumItems)
void
InsertItemAfter(size_t aIndex, const TraitPath & aItem, Flags aFlags)
InsertItemAt(size_t aIndex, const TraitPath & aItem, Flags aFlags)
Thêm TraitPath vào cửa hàng, chèn mã này vào một chỉ mục nhất định.
Intersects(const TraitPath & aItem, const TraitSchemaEngine *const aSchemaEngine) const
bool
Kiểm tra xem có TraitPath nào trong cửa hàng giao cắt với một TraitPath nhất định hay không.
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
Kiểm tra xem một TraitPath nhất định đã có trong cửa hàng hay chưa.
IsTraitPresent(TraitDataHandle aDataHandle) const
bool
RemoveItem(const TraitPath & aItem)
void
RemoveItemAt(size_t aIndex)
void
RemoveTrait(TraitDataHandle aDataHandle)
void
Xoá tất cả TraitPaths tham chiếu đến một TraitDataHandle.
SetFailed(size_t aIndex)
void
SetFailed()
void
Đánh dấu tất cả TraitPath là không thành công.
SetFailedTrait(TraitDataHandle aDataHandle)
void
Đánh dấu mọi TraitPath tham chiếu đến TraitDataHandle đã cho là không thành công.

Cấu trúc

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

Loại công khai

@153

 nl::Weave::Profiles::DataManagement_Current::TraitPathStore::@153
Thuộc tính
kFlag_Failed

Mục này đang được sử dụng, nhưng không còn hợp lệ nữa.

Cờ

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

Các thuộc tính công khai

mStore

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

Hàm công khai

AddItem

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

Thêm TraitPath vào cửa hàng.

Chi tiết
Tham số
[in] aItem
TraitPath sẽ được lưu trữ
Giá trị trả về
WEAVE_NO_ERROR
trong trường hợp thành công.
WEAVE_ERROR_WDM_PATH_STORE_FULL
nếu cửa hàng hết chỗ.

AddItem

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

Thêm TraitPath vào cửa hàng bằng một bộ cờ nhất định.

Chi tiết
Tham số
[in] aItem
TraitPath sẽ được lưu trữ
[in] aFlags
Cờ cần được đặt thành true cho mục đang được thêm
Giá trị trả về
WEAVE_NO_ERROR
trong trường hợp thành công.
WEAVE_ERROR_WDM_PATH_STORE_FULL
nếu cửa hàng hết chỗ.
WEAVE_ERROR_INVALID_ARGUMENT
nếu aflags chứa cờ dành riêng

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 

Xóa

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

Làm sạch cửa hàng.

Nhỏ gọn

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

Thu gọn cửa hàng để di chuyển tất cả các mục đang sử dụng xuống phía đầu mảng.

Điều này rất hữu ích khi sử dụng TraitPathStore để triển khai một danh sách có thể chỉnh sửa được (chẳng hạn như danh sách các đường dẫn đang tiến hành do SubscriptionClient duy trì).

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()

Chi tiết
Trả về
Trả về số lượng TraitPaths trong cửa hàng.

GetPathStoreSize

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

Chi tiết
Trả về
Trả về sức chứa của cửa hàng.

Bao gồm

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

Kiểm tra xem có TraitPaths trong cửa hàng nào chứa một TraitPath nhất định hay không.

TraitPath A bao gồm TraitPath B nếu:

  • hai TraitPath đều giống nhau;
  • A là đối tượng cấp trên của B.

Chi tiết
Tham số
[in] aTraitPath
TraitPath cần kiểm tra với cửa hàng.
[in] aSchemaEngine
Con trỏ trỏ đến TraitSchemaEngine cho thực thể đặc điểm mà aTraitPath tham chiếu.
Trả về
true nếu TraitPath đã được các đường dẫn trong cửa hàng đưa vào.

Init

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

Trong TraitPathStore.

Chi tiết
Tham số
[in] aRecordArray
Con trỏ đến một mảng Bản ghi sẽ được dùng để lưu trữ các đường dẫn và cờ.
[in] aArrayLength
Độ dài của mảng lưu trữ theo số lượng mục.

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
)

Thêm TraitPath vào cửa hàng, chèn mã này vào một chỉ mục nhất định.

Giả sử cửa hàng không có khoảng trống nào.

Chi tiết
Tham số
[in] aIndex
Chỉ mục mà tại đó chèn TraitPath; để giữ cho cửa hàng luôn gọn gàng.
[in] aFlags
Cờ cần được đặt thành true cho mục đang được thêm.
Giá trị trả về
WEAVE_ERROR_INCORRECT_STATE
nếu cửa hàng có lỗ hổng.
WEAVE_ERROR_INVALID_ARGUMENT
nếu việc thêm TraitPath tại aIndex sẽ làm cho cửa hàng không nhỏ gọn.
WEAVE_ERROR_WDM_PATH_STORE_FULL
nếu cửa hàng hết chỗ.
WEAVE_NO_ERROR
trong trường hợp thành công.

Giao điểm

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

Kiểm tra xem có TraitPath nào trong cửa hàng giao cắt với một TraitPath nhất định hay không.

Hai TraitPath cắt nhau nếu bất kỳ trường hợp nào sau đây xảy ra:

  • hai TraitPath đều giống nhau;
  • một trong hai TraitPath là đối tượng cấp trên của TraitPath còn lại.

Chi tiết
Tham số
[in] aTraitPath
TraitPath cần kiểm tra với cửa hàng.
[in] aSchemaEngine
Con trỏ trỏ đến TraitSchemaEngine cho thực thể đặc điểm mà aTraitPath tham chiếu.
Trả về
true nếu cửa hàng giao cắt với TraitPath đã cho; false.

IsEmpty

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

Chi tiết
Trả về
Trả về true nếu cửa hàng trống; false.

IsFull

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

Chi tiết
Trả về
Trả về true nếu cửa hàng đã đầy; 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 

Kiểm tra xem một TraitPath nhất định đã có trong cửa hàng hay chưa.

Chi tiết
Tham số
[in] aItem
TraitPath để tìm.
Trả về
Trả về true nếu cửa hàng chứa một mặt hàng.

IsTraitPresent

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

Chi tiết
Tham số
[in] aDataHandle
TraitDataHandle cần tìm.
Trả về
Trả về true nếu cửa hàng chứa một hoặc nhiều đường dẫn tham chiếu đến TraitDataHandle đã cho

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
)

Xoá tất cả TraitPaths tham chiếu đến một TraitDataHandle.

Chi tiết
Tham số
[in] aDataHandle
TraitDataHandle

SetFailed

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

SetFailed

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

Đánh dấu tất cả TraitPath là không thành công.

SetFailedTrait

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

Đánh dấu mọi TraitPath tham chiếu đến TraitDataHandle đã cho là không thành công.

Chi tiết
Tham số
aDataHandle
TraitDataHandle cần tìm.

TraitPathStore

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

Hàm khởi tạo trống.