nl:: Weave:: Profiles:: SoftwareUpdate:: ImageQuery
#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>
คลาสที่สนับสนุนการสร้างและการถอดรหัสข้อความค้นหารูปภาพ
สรุป
เฟรมข้อความค้นหารูปภาพมีรูปแบบต่อไปนี้ผ่านสายไฟ
ความยาว | ชื่อช่อง |
1 ไบต์ | การควบคุมเฟรม |
6 ไบต์ | ข้อมูลจำเพาะของผลิตภัณฑ์ |
เปลี่ยนแปลงได้ | ข้อกําหนดของเวอร์ชัน |
2..4 ไบต์ | รายการประเภทความสมบูรณ์ |
2..5 ไบต์ | อัปเดตรายการรูปแบบ |
เปลี่ยนแปลงได้ | ข้อกำหนดภาษา (ไม่บังคับ) |
8 ไบต์ | รหัสโหนดเป้าหมาย |
เปลี่ยนแปลงได้ | ข้อมูลเฉพาะผู้ให้บริการ (ไม่บังคับ) |
ดอกสว่าน | ความหมาย |
0 | 1 - มีข้อมูลเฉพาะผู้ให้บริการ, 0 - ไม่มี |
1 | 1 - มีข้อกำหนดภาษาถิ่น, 0 - ไม่มี |
2 | 1 - มีรหัสโหนดเป้าหมาย, 0 - ไม่มี |
3..7 | จองแล้ว |
ผู้ผลิตและผู้ทำลาย |
|
---|---|
ImageQuery()
ตัวสร้างเริ่มต้นสำหรับ ImageQuery
|
แอตทริบิวต์สาธารณะ |
|
---|---|
integrityTypes
|
ประเภทความสมบูรณ์ที่อุปกรณ์รองรับ
|
localeSpec
|
สตริง UTF-8 ความยาวตัวแปรที่มีภาษา POSIX ที่มีผลในอุปกรณ์ที่จะใช้การค้นหารูปภาพ
|
packageSpec
|
สตริง UTF-8 ความยาวตัวแปรซึ่งมีสตริงข้อกำหนดแพ็กเกจเฉพาะผู้ให้บริการ
|
productSpec
|
ข้อมูลจำเพาะของผลิตภัณฑ์ที่อธิบายอุปกรณ์ที่กำลังค้นหารูปภาพ
|
targetNodeId
|
uint64_t
รหัสโหนดที่ไม่บังคับของอุปกรณ์ที่สร้างการค้นหา
|
theMetaData
|
ช่องข้อมูลเฉพาะผู้ให้บริการจะมีความยาวไม่แปรผันและใช้พื้นที่ส่วนที่เหลือของเพย์โหลดข้อความ Weave นอกเหนือจากช่องที่อธิบายข้างต้น
|
updateSchemes
|
อัปเดตรูปแบบ (โปรโตคอลการดาวน์โหลด) ที่อุปกรณ์รองรับ
|
version
|
สตริง UTF-8 ที่มีความยาวแปรผันซึ่งมีเวอร์ชันซอฟต์แวร์ที่ระบุโดยผู้ให้บริการของอุปกรณ์ที่สร้างการค้นหา
|
ฟังก์ชันสาธารณะ |
|
---|---|
init(ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData)
|
เริ่มต้นออบเจ็กต์ ImageQuery อย่างชัดแจ้งด้วยค่าที่ระบุ
|
operator==(const ImageQuery &) const
|
bool
โอเปอเรเตอร์ความเท่าเทียม
|
pack(PacketBuffer *)
|
ทำให้ ImageQuery พื้นฐานที่ระบุเป็นซีเรียลลงใน PacketBuffer ที่ระบุ
|
print(void)
|
void
|
ฟังก์ชันสาธารณะแบบคงที่ |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
ดีซีเรียลไลซ์ข้อความการค้นหารูปภาพที่ระบุใน PacketBuffer ลงใน ImageQuery ที่ระบุไว้
|
แอตทริบิวต์สาธารณะ
localeSpec
ReferencedString localeSpec
สตริง UTF-8 ความยาวตัวแปรที่มีภาษา POSIX ที่มีผลในอุปกรณ์ที่จะใช้การค้นหารูปภาพ
เนื้อหาของสตริงต้องสอดคล้องกับรูปแบบตัวระบุสถานที่ POSIX ตามที่ระบุไว้ใน ISO/IEC 15897 เช่น en_AU.UTF-8 สำหรับภาษาอังกฤษแบบออสเตรเลีย
packageSpec
ReferencedString packageSpec
สตริง UTF-8 ความยาวตัวแปรซึ่งมีสตริงข้อกำหนดแพ็กเกจเฉพาะผู้ให้บริการ
เนื้อหาในช่องจะอธิบายประเภทคอนเทนเนอร์ที่ต้องการสำหรับอิมเมจซอฟต์แวร์ เช่น "rpm", "deb", "tgz", "elf" ฯลฯ (หมายเหตุ: ไม่ได้ใช้ช่องนี้ในการใช้งานโปรโตคอลของ Nest)
targetNodeId
uint64_t targetNodeId
รหัสโหนดที่ไม่บังคับของอุปกรณ์ที่สร้างการค้นหา
ช่องรหัสโหนดเป้าหมายจะมีหรือไม่มีก็ได้ หากไม่มี รหัสโหนดเป้าหมายสำหรับการค้นหาจะเป็นโหนดต้นทางของข้อความค้นหารูปภาพโดยปริยาย
โดยทั่วไปแล้ว ช่องรหัสโหนดเป้าหมายจะใช้ในกรณีที่โหนดที่เป็นแหล่งที่มาของข้อความ IMAGE QUERY แสดงเป็นพร็อกซีการอัปเดตซอฟต์แวร์สำหรับโหนดอื่น
theMetaData
ReferencedTLVData theMetaData
ช่องข้อมูลเฉพาะผู้ให้บริการจะมีความยาวไม่แปรผันและใช้พื้นที่ส่วนที่เหลือของเพย์โหลดข้อความ Weave นอกเหนือจากช่องที่อธิบายข้างต้น
ช่องนี้จะเข้ารหัสข้อมูลเฉพาะผู้ให้บริการเกี่ยวกับอุปกรณ์ในการค้นหา ช่องข้อมูลเฉพาะผู้ให้บริการเป็นช่องที่ไม่บังคับ หากมี ช่องนี้จะมีรูปแบบโครงสร้างที่เข้ารหัส TLV แบบไม่ระบุชื่อ แท็กที่แสดงในโครงสร้างนี้จะต้องเป็นแท็กเฉพาะโปรไฟล์ที่มีคุณสมบัติครบถ้วน
เวอร์ชัน
ReferencedString version
สตริง UTF-8 ที่มีความยาวแปรผันซึ่งมีเวอร์ชันซอฟต์แวร์ที่ระบุโดยผู้ให้บริการของอุปกรณ์ที่สร้างการค้นหา
ต้องมีความยาว 32 หรือต่ำกว่า
ฟังก์ชันสาธารณะ
ImageQuery
ImageQuery()
ตัวสร้างเริ่มต้นสำหรับ ImageQuery
ImageQuery อาจมีการเติมข้อมูลด้วยการเรียกใช้ init() หรือโดยการทำดีซีเรียลไลซ์ออบเจ็กต์จากข้อความ
Init
WEAVE_ERROR init( ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData )
เริ่มต้นออบเจ็กต์ ImageQuery อย่างชัดแจ้งด้วยค่าที่ระบุ
รายละเอียด | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||||
การคืนสินค้า |
WEAVE_NO_ERROR โดยไม่มีเงื่อนไข
|
โอเปอเรเตอร์==
bool operator==( const ImageQuery & ) const
โอเปอเรเตอร์ความเท่าเทียม
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การคืนสินค้า |
"จริง" หากทุกฟิลด์ในออบเจ็กต์ทั้งสองเท่ากัน หรือเป็นเท็จ
|
แพ็ก
WEAVE_ERROR pack( PacketBuffer * )
ทำให้ ImageQuery ที่เกี่ยวข้องเป็นซีเรียลลงใน PacketBuffer ที่ระบุ
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
ผลลัพธ์ |
|
พิมพ์
void print( void )
ฟังก์ชันสาธารณะแบบคงที่
แยกวิเคราะห์
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
ดีซีเรียลไลซ์ข้อความการค้นหารูปภาพที่ให้ไว้ใน PacketBuffer ลงใน ImageQuery ที่ระบุไว้
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
การคืนสินค้า |
WEAVE_NO_ERROR สำหรับความสำเร็จ
|
||||
การคืนสินค้า |
WEAVE_ERROR_BUFFER_TOO_SMALL ถ้าข้อความมีขนาดเล็กเกินกว่าจะมีช่องทั้งหมดของ ImageQuery อยู่
|
||||
การคืนสินค้า |
WEAVE_ERROR_INVALID_LIST_LENGTH ถ้าข้อความมี IntegrityTypeList หรือ UpdateSchemeList ยาวเกินไป
|