nl:: Weave:: Profiles:: DeviceDescription:: WeaveDeviceDescriptor
#include <src/lib/profiles/device-description/DeviceDescription.h>
इसमें Weave डिवाइस के बारे में पूरी जानकारी होती है.
खास जानकारी
कंस्ट्रक्टर और डिस्ट्रक्टर |
|
---|---|
WeaveDeviceDescriptor(void)
|
सार्वजनिक टाइप |
|
---|---|
@180{
|
enum कुछ एट्रिब्यूट की ज़्यादा से ज़्यादा लंबाई तय करता है. |
@181{
|
enum डिवाइस की कुछ खास सुविधाओं के बारे में बताने वाली फ़ीचर फ़्लैग. |
@182{
|
enum फ़्लैग फ़ील्ड की परिभाषाएं. |
सार्वजनिक एट्रिब्यूट |
|
---|---|
Day
|
uint8_t
डिवाइस बनाने का दिन (0 = डिवाइस में मौजूद नहीं है)
|
DeviceFeatures
|
uint32_t
बिट फ़ील्ड, जो डिवाइस की खास सुविधाओं के साथ काम करने का संकेत देता है.
|
DeviceId
|
uint64_t
Weave डिवाइस आईडी (0 = मौजूद नहीं है)
|
FabricId
|
uint64_t
वीव फ़ैब्रिक का आईडी, जिससे डिवाइस जुड़ा है (0 = मौजूद नहीं है)
|
Flags
|
uint8_t
बिट फ़ील्ड में डिवाइस के बारे में ज़्यादा जानकारी होती है.
|
ManufacturingDate
|
struct nl::Weave::Profiles::DeviceDescription::WeaveDeviceDescriptor::@183
|
Month
|
uint8_t
डिवाइस बनाने का महीना (1 = जनवरी)
|
PairingCode[kMaxPairingCodeLength+1]
|
char
डिवाइस जोड़ने का कोड (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं है)
|
PairingCompatibilityVersionMajor
|
uint16_t
डिवाइस को जोड़ने वाले सॉफ़्टवेयर के साथ काम करने वाला मुख्य वर्शन.
|
PairingCompatibilityVersionMinor
|
uint16_t
डिवाइस को जोड़ने वाले सॉफ़्टवेयर के साथ काम करने वाला छोटा वर्शन.
|
Primary802154MACAddress[8]
|
uint8_t
प्राइमरी 802.15.4 इंटरफ़ेस के लिए MAC पता (big-endian, सभी शून्य = मौजूद नहीं)
|
PrimaryWiFiMACAddress[6]
|
uint8_t
मुख्य वाई-फ़ाई इंटरफ़ेस के लिए MAC पता (big-endian, सभी शून्य = मौजूद नहीं)
|
ProductId
|
uint16_t
डिवाइस का प्रॉडक्ट कोड (0 = मौजूद नहीं है)
|
ProductRevision
|
uint16_t
डिवाइस प्रॉडक्ट में बदलाव (0 = मौजूद नहीं है)
|
RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1]
|
char
डिवाइस के वाई-फ़ाई मिलने से जुड़े नेटवर्क के लिए ESSID (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
|
SerialNumber[kMaxSerialNumberLength+1]
|
char
डिवाइस का सीरियल नंबर (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
|
SoftwareVersion[kMaxSoftwareVersionLength+1]
|
char
सॉफ़्टवेयर का ऐक्टिव वर्शन (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
|
VendorId
|
uint16_t
डिवाइस का वेंडर कोड (0 = मौजूद नहीं है)
|
Year
|
uint16_t
डिवाइस बनाए जाने का साल (मान्य रेंज 2001 - 2099)
|
सार्वजनिक फ़ंक्शन |
|
---|---|
Clear(void)
|
void
डिवाइस की जानकारी मिटाता है.
|
सार्वजनिक स्टैटिक फ़ंक्शन |
|
---|---|
Decode(const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
यह फ़ंक्शन, दिए गए डेटा बफ़र के कॉन्टेंट को Weave Device Descriptor ऑब्जेक्ट में डिकोड करता है.
|
DecodeTLV(const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
दिए गए टीएलवी डेटा बफ़र के कॉन्टेंट को Weave Device Descriptor ऑब्जेक्ट में डिकोड करता है.
|
DecodeTLV(nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc)
|
यह, पहले से शुरू किए गए TLVReader का इस्तेमाल करके, डिवाइस की जानकारी को डिकोड करता है.
|
DecodeText(const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
यह फ़ंक्शन, दिए गए टेक्स्ट डेटा बफ़र के कॉन्टेंट को Weave Device Descriptor ऑब्जेक्ट में डिकोड करता है.
|
EncodeTLV(const WeaveDeviceDescriptor & desc, uint8_t *buf, uint32_t bufLen, uint32_t & outEncodedLen)
|
दिए गए डिवाइस डिस्क्रिप्टर को Weave TLV के तौर पर, दिए गए बफ़र के तौर पर कोड में बदलता है.
|
EncodeTLV(const WeaveDeviceDescriptor & desc, nl::Weave::TLV::TLVWriter & writer)
|
यह दिए गए डिवाइस डिस्क्रिप्टर को Weave TLV के तौर पर कोड करता है. इसे, पहले से शुरू किए गए TLVWriter ऑब्जेक्ट के तौर पर इस्तेमाल किया जाता है.
|
EncodeText(const WeaveDeviceDescriptor & desc, char *buf, uint32_t bufLen, uint32_t & outEncodedLen)
|
दिए गए डिवाइस डिस्क्रिप्टर को दिए गए बफ़र में लिखे गए टेक्स्ट के रूप में कोड में बदलता है.
|
IsZeroBytes(const uint8_t *buf, uint32_t len)
|
bool
देखें कि बताए गए बफ़र में सिर्फ़ शून्य हैं या नहीं.
|
सार्वजनिक टाइप
@180
@180
कुछ एट्रिब्यूट की ज़्यादा से ज़्यादा लंबाई तय करता है.
प्रॉपर्टी | |
---|---|
kMaxPairingCodeLength
|
जोड़ने वाले कोड की ज़्यादा से ज़्यादा लंबाई. |
kMaxRendezvousWiFiESSID
|
मिलने वाली अवधि के लिए ज़्यादा से ज़्यादा वाई-फ़ाई ESSID. |
kMaxSerialNumberLength
|
सीरियल नंबर की ज़्यादा से ज़्यादा लंबाई. |
kMaxSoftwareVersionLength
|
सॉफ़्टवेयर के वर्शन की ज़्यादा से ज़्यादा लंबाई. |
@181
@181
डिवाइस की कुछ खास सुविधाओं के बारे में बताने वाली फ़ीचर फ़्लैग.
प्रॉपर्टी | |
---|---|
kFeature_HomeAlarmLinkCapable
|
इससे पता चलता है कि Nest Protect काम करता है और होम अलार्म पैनल से कनेक्ट किया जा सकता है. |
kFeature_LinePowered
|
इससे पता चलता है कि किसी डिवाइस को लाइन पावर की ज़रूरत है या नहीं. |
@182
@182
फ़्लैग फ़ील्ड की परिभाषाएं.
प्रॉपर्टी | |
---|---|
kFlag_IsRendezvousWiFiESSIDSuffix
|
इससे पता चलता है कि RendezvousWiFiESSID वैल्यू, एक सफ़िक्स स्ट्रिंग है, जो डिवाइस के वाई-फ़ाई रेनडेज़ नेटवर्क के ESSID के आखिर में दिखती है. |
सार्वजनिक एट्रिब्यूट
दिन
uint8_t Day
डिवाइस बनाने का दिन (0 = डिवाइस में मौजूद नहीं है)
DeviceFeatures
uint32_t DeviceFeatures
बिट फ़ील्ड, जो डिवाइस की खास सुविधाओं के साथ काम करने का संकेत देता है.
DeviceId
uint64_t DeviceId
Weave डिवाइस आईडी (0 = मौजूद नहीं है)
FabricId
uint64_t FabricId
वीव फ़ैब्रिक का आईडी, जिससे डिवाइस जुड़ा है (0 = मौजूद नहीं है)
झंडे
uint8_t Flags
बिट फ़ील्ड में डिवाइस के बारे में ज़्यादा जानकारी होती है.
ManufacturingDate
struct nl::Weave::Profiles::DeviceDescription::WeaveDeviceDescriptor::@183 ManufacturingDate
महीना
uint8_t Month
डिवाइस बनाने का महीना (1 = जनवरी)
PairingCode
char PairingCode[kMaxPairingCodeLength+1]
डिवाइस जोड़ने का कोड (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं है)
PairingCompatibilityVersionMajor
uint16_t PairingCompatibilityVersionMajor
डिवाइस को जोड़ने वाले सॉफ़्टवेयर के साथ काम करने वाला मुख्य वर्शन.
PairingCompatibilityVersionMinor
uint16_t PairingCompatibilityVersionMinor
डिवाइस को जोड़ने वाले सॉफ़्टवेयर के साथ काम करने वाला छोटा वर्शन.
प्राइमरी802154MACपता
uint8_t Primary802154MACAddress[8]
प्राइमरी 802.15.4 इंटरफ़ेस के लिए MAC पता (big-endian, सभी शून्य = मौजूद नहीं)
PrimaryWiFiMACAddress
uint8_t PrimaryWiFiMACAddress[6]
मुख्य वाई-फ़ाई इंटरफ़ेस के लिए MAC पता (big-endian, सभी शून्य = मौजूद नहीं)
ProductId
uint16_t ProductId
डिवाइस का प्रॉडक्ट कोड (0 = मौजूद नहीं है)
ProductRevision
uint16_t ProductRevision
डिवाइस प्रॉडक्ट में बदलाव (0 = मौजूद नहीं है)
RendezvousWiFiESSID
char RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1]
डिवाइस के वाई-फ़ाई मिलने से जुड़े नेटवर्क के लिए ESSID (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
SerialNumber
char SerialNumber[kMaxSerialNumberLength+1]
डिवाइस का सीरियल नंबर (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
SoftwareVersion
char SoftwareVersion[kMaxSoftwareVersionLength+1]
सॉफ़्टवेयर का ऐक्टिव वर्शन (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
VendorId
uint16_t VendorId
डिवाइस का वेंडर कोड (0 = मौजूद नहीं है)
Year
uint16_t Year
डिवाइस बनाए जाने का साल (मान्य रेंज 2001 - 2099)
सार्वजनिक फ़ंक्शन
क्लियर
void Clear( void )
डिवाइस की जानकारी मिटाता है.
WeaveDeviceDescriptor
WeaveDeviceDescriptor( void )
सार्वजनिक स्टैटिक फ़ंक्शन
डिकोड करें
WEAVE_ERROR Decode( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
यह फ़ंक्शन, दिए गए डेटा बफ़र के कॉन्टेंट को Weave Device Descriptor ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
रिटर्न वैल्यू |
|
DecodeTLV
WEAVE_ERROR DecodeTLV( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
दिए गए टीएलवी डेटा बफ़र के कॉन्टेंट को Weave Device Descriptor ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
रिटर्न वैल्यू |
|
DecodeTLV
WEAVE_ERROR DecodeTLV( nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc )
यह, पहले से शुरू किए गए TLVReader का इस्तेमाल करके, डिवाइस की जानकारी को डिकोड करता है.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
रिटर्न वैल्यू |
|
DecodeText
WEAVE_ERROR DecodeText( const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
यह फ़ंक्शन, दिए गए टेक्स्ट डेटा बफ़र के कॉन्टेंट को Weave Device Descriptor ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
रिटर्न वैल्यू |
|
EncodeTLV
WEAVE_ERROR EncodeTLV( const WeaveDeviceDescriptor & desc, uint8_t *buf, uint32_t bufLen, uint32_t & outEncodedLen )
दिए गए डिवाइस डिस्क्रिप्टर को Weave TLV के तौर पर, दिए गए बफ़र के तौर पर कोड में बदलता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
रिटर्न वैल्यू |
|
EncodeTLV
WEAVE_ERROR EncodeTLV( const WeaveDeviceDescriptor & desc, nl::Weave::TLV::TLVWriter & writer )
यह दिए गए डिवाइस डिस्क्रिप्टर को Weave TLV के तौर पर कोड करता है. इसे, पहले से शुरू किए गए TLVWriter ऑब्जेक्ट के तौर पर इस्तेमाल किया जाता है.
इसका इस्तेमाल, डिवाइस के ब्यौरे को टीएलवी के बड़े आउटपुट में जोड़ने के लिए किया जाता है.
ब्यौरा | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
रिटर्न वैल्यू |
|
EncodeText
WEAVE_ERROR EncodeText( const WeaveDeviceDescriptor & desc, char *buf, uint32_t bufLen, uint32_t & outEncodedLen )
दिए गए डिवाइस डिस्क्रिप्टर को दिए गए बफ़र में लिखे गए टेक्स्ट के रूप में कोड में बदलता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
रिटर्न वैल्यू |
|
IsZeroBytes
bool IsZeroBytes( const uint8_t *buf, uint32_t len )
देखें कि बताए गए बफ़र में सिर्फ़ शून्य हैं या नहीं.
ब्यौरा | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
रिटर्न वैल्यू |
|