nl::Weave::Profiles::DataManagement_Current::ResourceIdentifier

#include <src/lib/profiles/data-management/Current/ResourceIdentifier.h>

Cấu trúc bao gồm mã nhận dạng của tài nguyên.

Tóm tắt

ResourceIdentifier có thể là mã đối tượng 64 bit tổng quát của một loại cụ thể hoặc một UUID. Khi mã hoá bên ngoài, các biểu diễn sau được hỗ trợ:

một số nguyên 64 bit không dấu, tương ứng với đối tượng khái quát của loại THIẾT BỊ có mã nhận dạng được chỉ định trong biểu diễn

một cách biểu diễn khái quát được mã hoá dưới dạng một chuỗi byte gồm 10 octet. Hai octet đầu tiên mã hóa kiểu tài nguyên dưới dạng số nguyên 16 bit, nhỏ, với 8 byte còn lại mã hóa một ID tài nguyên 64 bit nhỏ.

ResourceIdentifier cũng thể hiện các quy ước có trong mã WDM: một ResourceIdentifier trống tương ứng với mã nhận dạng nút của THIẾT BỊ và các hàm khởi tạo được cung cấp cho những trường hợp sử dụng phổ biến nhất.

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

ResourceIdentifier()
Tạo một ResourceIdentifier tương ứng với một ResourceID không xác định.
ResourceIdentifier(const uint64_t & aNodeId)
Tạo một ResourceIdentifier của loại THIẾT BỊ dựa trên một aNodeId nhất định.
ResourceIdentifier(uint16_t aResourceType, const uint64_t & aResourceId)
Tạo ResourceIdentifier của loại được chỉ định bằng mã nhận dạng đã cho.
ResourceIdentifier(uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen)
Tạo ResourceIdentifier của loại được chỉ định bằng mã nhận dạng đã cho.

Loại công khai

@125{
  RESOURCE_TYPE_RESERVED = 0
}
enum
@126 enum
Xác định một giá trị đặc biệt cho NodeId tham chiếu đến "self".
@127 enum

Thuộc tính công khai

ResourceId
uint64_t
ResourceIdBytes[8]
uint8_t

Hàm công khai

FromString(const char *inBuffer, size_t inBufferLen)
Phân tích cú pháp đại diện chuỗi chính tắc của một tài nguyên thành đối tượng tài nguyên.
FromString(const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId)
Phân tích cú pháp đại diện chuỗi chính tắc của một tài nguyên thành đối tượng tài nguyên.
FromTLV(nl::Weave::TLV::TLVReader & aReader)
Giải tuần tự một ResourceIdentifier từ giá trị đại diện TLV thành đối tượng này.
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
Giải tuần tự một ResourceIdentifier từ giá trị đại diện TLV thành đối tượng này.
GetResourceId() const
uint64_t
Một hàm truy cập để tìm nạp ResourceId.
GetResourceType() const
uint16_t
Một hàm truy cập để tìm nạp ResourceType.
ResourceTypeAsString(void) const
const char *
Tạo một chuỗi đại diện của ResourceType.
ToString(char *buffer, size_t bufferLen)
Chuyển đổi ResourceIdentifier thành một chuỗi có thể in được.
ToTLV(nl::Weave::TLV::TLVWriter & aWriter) const
Chuyển đổi tuần tự tài nguyên thành một giá trị biểu diễn TLV bằng cách sử dụng thẻ bối cảnh Path::ResourceID.
ToTLV(nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag) const
Chuyển đổi tuần tự tài nguyên thành một bản trình bày TLV bằng một thẻ nhất định.

Hàm tĩnh công khai

ResourceTypeAsString(uint16_t aResourceType)
const char *
Tạo một chuỗi đại diện của một loại tài nguyên.

Lớp bạn bè

operator==
friend bool

Loại công khai

@125

 @125
Thuộc tính
RESOURCE_TYPE_RESERVED

Loại tài nguyên dành riêng.

Enum được chọn để không xung đột với các giá trị enum trong enum Schema::Weave:::Common::ResourceType. Hiện tại, có thể có 2 giá trị ResourceId dành cho loại tài nguyên RESERVED (Đặt lại): kNodeIdNotSpecified tương ứng với một ResourceIdentifier đơn nhất và óc_ gần

@126

 @126

Xác định một giá trị đặc biệt cho NodeId tham chiếu đến "self".

Trong một số tương tác WDM nhất định, việc có giá trị của bản thân cho tài nguyên sẽ cho phép nén ra thông tin đó vì thông tin đó thừa cho id nút nguồn của thiết bị được biểu thị trong chính thông báo Weave.

@127

 @127

Thuộc tính công khai

ResourceId

uint64_t ResourceId

ResourceIdBytes

uint8_t ResourceIdBytes[8]

Hàm công khai

FromString

WEAVE_ERROR FromString(
  const char *inBuffer,
  size_t inBufferLen
)

Phân tích cú pháp đại diện chuỗi chính tắc của một tài nguyên thành đối tượng tài nguyên.

Chuyển đổi chuỗi chính tắc biểu thị của một tài nguyên thành đối tượng tài nguyên. Lưu ý rằng chỉ một nhóm nhỏ tài nguyên có thể được biểu thị dưới dạng chuỗi, cụ thể là việc triển khai tham chiếu trong Weave sẽ chỉ phân tích cú pháp tài nguyên của các loại chuẩn như được thể hiện trong ResourceTypeEnum.

Thông tin chi tiết
Các tham số
[in] inBuffer
Vùng đệm chứa mã nhận dạng tài nguyên cần được phân tích cú pháp
[in] inBufferLen
Độ dài (tính bằng byte) của chuỗi cần được phân tích cú pháp

FromString

WEAVE_ERROR FromString(
  const char *inBuffer,
  size_t inBufferLen,
  const uint64_t & aSelfNodeId
)

Phân tích cú pháp đại diện chuỗi chính tắc của một tài nguyên thành đối tượng tài nguyên.

Chuyển đổi chuỗi chính tắc biểu thị của một tài nguyên thành đối tượng tài nguyên. Lưu ý rằng chỉ một nhóm nhỏ tài nguyên có thể được biểu thị dưới dạng chuỗi, cụ thể là việc triển khai tham chiếu trong Weave sẽ chỉ phân tích cú pháp tài nguyên của các loại chuẩn như được thể hiện trong ResourceTypeEnum.

Thông tin chi tiết
Các tham số
[in] inBuffer
Vùng đệm chứa mã nhận dạng tài nguyên cần được phân tích cú pháp
[in] inBufferLen
Độ dài (tính bằng byte) của chuỗi cần được phân tích cú pháp
[in] aSelfNodeId
Mã nhận dạng 64 bit cho biết mã thiết bị nào cần được ánh xạ vào một CHÍNH_Semantic_ID

FromTLV

WEAVE_ERROR FromTLV(
  nl::Weave::TLV::TLVReader & aReader
)

Giải tuần tự một ResourceIdentifier từ giá trị đại diện TLV thành đối tượng này.

Thông tin chi tiết
Các tham số
[in] aReader
Một trình đọc TLV được định vị trên phần tử ResourceIdentifier
Trả về
WEAVE_NO_ERROR khi thành công. Lỗi từ TLVReader nếu ResourceIdentifier không thể được đọc đúng cách.

FromTLV

WEAVE_ERROR FromTLV(
  nl::Weave::TLV::TLVReader & aReader,
  const uint64_t & aSelfNodeId
)

Giải tuần tự một ResourceIdentifier từ giá trị đại diện TLV thành đối tượng này.

Thông tin chi tiết
Các tham số
[in] aReader
Một trình đọc TLV được định vị trên phần tử ResourceIdentifier
[in] aSelfNodeId
ResourceID 64 bit sẽ được ánh xạ lại từ bản trình bày chuyển đổi tuần tự lên self_NOT_ID
Trả về
WEAVE_NO_ERROR khi thành công. Lỗi từ TLVReader nếu ResourceIdentifier không thể được đọc đúng cách.

GetResourceId

uint64_t GetResourceId() const 

Một hàm truy cập để tìm nạp ResourceId.

GetResourceType

uint16_t GetResourceType() const 

Một hàm truy cập để tìm nạp ResourceType.

ResourceIdentifier

 ResourceIdentifier()

Tạo một ResourceIdentifier tương ứng với một ResourceID không xác định.

Mã nhận dạng tài nguyên không xác định là một bộ dữ liệu bao gồm loại tài nguyên RESERVED với một tài nguyên kNodeIdNotSpeficied.

ResourceIdentifier

 ResourceIdentifier(
  const uint64_t & aNodeId
)

Tạo một ResourceIdentifier của loại THIẾT BỊ dựa trên một aNodeId nhất định.

Thông tin chi tiết
Các tham số
[in] aNodeId
NodeId của mã tài nguyên đã cho

ResourceIdentifier

 ResourceIdentifier(
  uint16_t aResourceType,
  const uint64_t & aResourceId
)

Tạo ResourceIdentifier của loại được chỉ định bằng mã nhận dạng đã cho.

Thông tin chi tiết
Các tham số
[in] aResourceType
Loại tài nguyên cần đặt tên
[in] aResourceId
Mã của tài nguyên cần đặt tên

ResourceIdentifier

 ResourceIdentifier(
  uint16_t aResourceType,
  const uint8_t *aResourceId,
  size_t aResourceIdLen
)

Tạo ResourceIdentifier của loại được chỉ định bằng mã nhận dạng đã cho.

Thông tin chi tiết
Các tham số
[in] aResourceType
Loại tài nguyên cần đặt tên
[in] aResourceId
Mã nhận dạng của tài nguyên được đặt tên, biểu thị dưới dạng một mảng byte
[in] aResourceIdLen
Độ dài của mã nhận dạng tính bằng byte

ResourceTypeAsString

const char * ResourceTypeAsString(
  void
) const 

Tạo một chuỗi đại diện của ResourceType.

Loại tài nguyên được chuyển đổi là những loại được liệt kê trong ResourceTypeEnum.h và 0 (tương ứng với Resources_TYPE_RESERVED)

ToString

WEAVE_ERROR ToString(
  char *buffer,
  size_t bufferLen
)

Chuyển đổi ResourceIdentifier thành một chuỗi có thể in được.

Thông tin chi tiết
Các tham số
[in] buffer
Vùng đệm để in vào
[in] bufferLen
Độ dài của vùng đệm

ToTLV

WEAVE_ERROR ToTLV(
  nl::Weave::TLV::TLVWriter & aWriter
) const 

Chuyển đổi tuần tự tài nguyên thành một giá trị biểu diễn TLV bằng cách sử dụng thẻ bối cảnh Path::ResourceID.

Thông tin chi tiết
Các tham số
[in] aWriter
Người viết TLV để chuyển đổi tuần tự ResourceIdentifier thành

ToTLV

WEAVE_ERROR ToTLV(
  nl::Weave::TLV::TLVWriter & aWriter,
  const uint64_t & aTag
) const 

Chuyển đổi tuần tự tài nguyên thành một bản trình bày TLV bằng một thẻ nhất định.

Thông tin chi tiết
Các tham số
[in] aWriter
Người viết TLV để chuyển đổi tuần tự ResourceIdentifier thành
[in] aTag
Một thẻ đặt tên cho ResourceIdentifier của tuần tự

Hàm tĩnh công khai

ResourceTypeAsString

const char * ResourceTypeAsString(
  uint16_t aResourceType
)

Tạo một chuỗi đại diện của một loại tài nguyên.

Loại tài nguyên được chuyển đổi là những loại được liệt kê trong ResourceTypeEnum.h và 0 (tương ứng với Resources_TYPE_RESERVED)

Thông tin chi tiết
Các tham số
[in] aResourceType
Enum loại tài nguyên sẽ được chuyển đổi thành giá trị biểu diễn dạng chuỗi.

Lớp bạn bè

toán tử==

friend bool operator==(const ResourceIdentifier &lhs, const ResourceIdentifier &rhs)