nl:: বুনা:: প্রোফাইল:: নেটওয়ার্ক প্রভিশনিং:: নেটওয়ার্ক ইনফো
#include <src/lib/profiles/network-provisioning/NetworkInfo.h>
নেটওয়ার্কপ্রোভিশনিং প্রোফাইলের মাধ্যমে যোগাযোগ করা পেলোডগুলিকে সিরিয়ালাইজিং এবং ডিসিরিয়ালাইজ করার জন্য একটি ইউটিলিটি ক্লাস: এটি নেটওয়ার্ক সনাক্তকরণ এবং কনফিগার করার জন্য প্রাসঙ্গিক তথ্য এনক্যাপসুলেট করে।
সারাংশ
ক্লাসটি নেটওয়ার্ক প্রভিশনিং তথ্যের মধ্যবর্তী স্টোরেজের উপর নির্ভর করে (তথ্যের চূড়ান্ত স্টোর এবং নেটওয়ার্ক পেলোডের মধ্যে মধ্যবর্তী) এবং ফলস্বরূপ বস্তুকে নমনীয় রানটাইম দেওয়ার জন্য গতিশীল মেমরি ব্যবস্থাপনা ব্যবহার করে। যেমন, এই ক্লাসটি সবচেয়ে সীমাবদ্ধ পরিবেশের জন্য উপযুক্ত নয়, তবে বড় সিস্টেমে ব্যবহার করা যেতে পারে।
কনস্ট্রাক্টর এবং ডেস্ট্রাক্টর | |
---|---|
NetworkInfo () | |
~NetworkInfo () |
পাবলিক প্রকার | |
---|---|
@210 | enum |
@211 | enum |
পাবলিক বৈশিষ্ট্য | |
---|---|
Hidden | bool নেটওয়ার্ক লুকানো আছে কি না। |
NetworkId | int64_t ডিভাইস দ্বারা নেটওয়ার্কে নির্ধারিত নেটওয়ার্ক আইডি, -1 নির্দিষ্ট না থাকলে। |
NetworkType | নেটওয়ার্কের ধরন। |
ThreadChannel | uint8_t বর্তমান চ্যানেল (বর্তমানে [11..26]) যার উপর থ্রেড নেটওয়ার্ক কাজ করে, অথবা kThreadChannel_NotSpecified। |
ThreadExtendedPANId | uint8_t * থ্রেড বর্ধিত প্যান আইডি. |
ThreadNetworkKey | uint8_t * থ্রেড মাস্টার নেটওয়ার্ক কী , অথবা নির্দিষ্ট না থাকলে NULL। |
ThreadNetworkName | char * থ্রেড নেটওয়ার্কের নাম, অথবা নির্দিষ্ট না থাকলে NULL। |
ThreadPANId | uint32_t 16-বিট থ্রেড প্যান আইডি, বা kThreadPANId_NotSpecified. |
ThreadPSKc | uint8_t * কমিশনারের জন্য থ্রেড পূর্ব-ভাগ করা কী, অথবা নির্দিষ্ট না থাকলে NULL। |
WiFiKey | uint8_t * ওয়াইফাই কী, অথবা নির্দিষ্ট না থাকলে NULL। |
WiFiKeyLen | uint32_t ওয়াইফাই কী এর বাইটে দৈর্ঘ্য। |
WiFiMode | ওয়াইফাই নেটওয়ার্কের অপারেটিং মোড। |
WiFiRole | ওয়াইফাই নেটওয়ার্কে ডিভাইসের ভূমিকা। |
WiFiSSID | char * ওয়াইফাই SSID, বা NULL নির্দিষ্ট না থাকলে। |
WiFiSecurityType | ওয়াইফাই নিরাপত্তার ধরন। |
WirelessSignalStrength | int16_t নেটওয়ার্কের সংকেত শক্তি, অথবা INT16_MIN যদি উপলব্ধ/প্রযোজ্য না হয়। |
পাবলিক ফাংশন | |
---|---|
Clear (void) | void ডিফল্টে রিসেট করুন এবং এই NetworkInfo অবজেক্টের মধ্যে সমস্ত মান মুক্ত করুন। |
CopyTo ( NetworkInfo & dest) | এই NetworkInfo অবজেক্টের বিষয়বস্তু আর্গুমেন্টের বিষয়বস্তুর গভীর অনুলিপি দিয়ে প্রতিস্থাপন করুন। |
Decode ( nl::Weave::TLV::TLVReader & reader) | TLV উপস্থাপনা থেকে এই NetworkInfo অবজেক্টের বিষয়বস্তুকে ডিসিরিয়ালাইজ করুন। |
Encode ( nl::Weave::TLV::TLVWriter & writer, uint8_t encodeFlags) const | এই NetworkInfo অবজেক্টের বিষয়বস্তুকে এর TLV উপস্থাপনায় সিরিয়ালাইজ করুন। |
MergeTo ( NetworkInfo & dest) | এই NetworkInfo অবজেক্টের বিষয়বস্তু আর্গুমেন্টের বিষয়বস্তুর গভীর অনুলিপির সাথে মার্জ করুন। |
পাবলিক স্ট্যাটিক ফাংশন | |
---|---|
DecodeList ( nl::Weave::TLV::TLVReader & reader, uint16_t & elemCount, NetworkInfo *& elemArray) | এর TLV উপস্থাপনা থেকে NetworkInfo উপাদানগুলির একটি তালিকা ডিসিরিয়ালাইজ করুন। |
EncodeList ( nl::Weave::TLV::TLVWriter & writer, uint16_t elemCount, const NetworkInfo *elemArray, uint8_t encodeFlags) | নেটওয়ার্কইনফো অবজেক্টের একটি অ্যারেকে এর TLV উপস্থাপনায় সিরিয়ালাইজ করুন। |
EncodeList ( nl::Weave::TLV::TLVWriter & writer, uint16_t arrayLen, const NetworkInfo *elemArray, :: nl::Weave::Profiles::NetworkProvisioning::NetworkType networkType, uint8_t encodeFlags, uint16_t & encodedElemCount) | নেটওয়ার্কইনফো অবজেক্টের একটি অ্যারেকে তার TLV উপস্থাপনায় একটি নির্দিষ্ট ধরণের নেটওয়ার্ক নির্বাচন করে সিরিয়ালাইজ করুন। |
পাবলিক প্রকার
@210
@210
@211
@211
পাবলিক বৈশিষ্ট্য
লুকানো
bool Hidden
নেটওয়ার্ক লুকানো আছে কি না।
নেটওয়ার্ক আইডি
int64_t NetworkId
ডিভাইস দ্বারা নেটওয়ার্কে নির্ধারিত নেটওয়ার্ক আইডি, -1 নির্দিষ্ট না থাকলে।
নেটওয়ার্ক টাইপ
::nl::Weave::Profiles::NetworkProvisioning::NetworkType NetworkType
নেটওয়ার্কের ধরন।
থ্রেডচ্যানেল
uint8_t ThreadChannel
বর্তমান চ্যানেল (বর্তমানে [11..26]) যার উপর থ্রেড নেটওয়ার্ক কাজ করে, অথবা kThreadChannel_NotSpecified।
থ্রেড এক্সটেন্ডেড প্যানিআইডি
uint8_t * ThreadExtendedPANId
থ্রেড বর্ধিত প্যান আইডি.
এটি ক্লাসের মালিকানাধীন 8 অক্টেক্টের একটি গতিশীলভাবে বরাদ্দ করা অ্যারে। অবজেক্টে Clear()
কল করে এমন যেকোনো শর্তে ধ্বংস করা হয়েছে।
ThreadNetworkKey
uint8_t * ThreadNetworkKey
থ্রেড মাস্টার নেটওয়ার্ক কী , অথবা নির্দিষ্ট না থাকলে NULL।
এটি একটি গতিশীলভাবে বরাদ্দকৃত অক্টেটের বিন্যাস, যেটি অবজেক্টের উপর Clear()
কল করে এমন যেকোনো শর্তে Destroyed ক্লাসের মালিকানাধীন।
ThreadNetworkName
char * ThreadNetworkName
থ্রেড নেটওয়ার্কের নাম, অথবা নির্দিষ্ট না থাকলে NULL।
এটি একটি NUL-সমাপ্ত, গতিশীলভাবে বরাদ্দকৃত সি-স্ট্রিং, ক্লাসের মালিকানাধীন। অবজেক্টে Clear()
কল করে এমন যেকোনো শর্তে ধ্বংস করা হয়েছে।
ThreadPANId
uint32_t ThreadPANId
16-বিট থ্রেড প্যান আইডি, বা kThreadPANId_NotSpecified.
ThreadPSKc
uint8_t * ThreadPSKc
কমিশনারের জন্য থ্রেড পূর্ব-ভাগ করা কী, অথবা নির্দিষ্ট না থাকলে NULL।
এটি একটি গতিশীলভাবে বরাদ্দকৃত অক্টেটের বিন্যাস, যেটি অবজেক্টের উপর Clear()
কল করে এমন যেকোনো শর্তে Destroyed ক্লাসের মালিকানাধীন।
ওয়াইফাইকি
uint8_t * WiFiKey
ওয়াইফাই কী, অথবা নির্দিষ্ট না থাকলে NULL।
এটি একটি গতিশীলভাবে বরাদ্দকৃত অক্টেটের বিন্যাস, ক্লাসের মালিকানাধীন, WiFiKeyLen
দ্বারা নির্দিষ্ট দৈর্ঘ্য সহ। অবজেক্টে Clear()
কল করে এমন যেকোনো শর্তে ধ্বংস করা হয়েছে।
WiFiKeyLen
uint32_t WiFiKeyLen
ওয়াইফাই কী এর বাইটে দৈর্ঘ্য।
ওয়াইফাই মোড
::nl::Weave::Profiles::NetworkProvisioning::WiFiMode WiFiMode
ওয়াইফাই নেটওয়ার্কের অপারেটিং মোড।
WiFiRole
::nl::Weave::Profiles::NetworkProvisioning::WiFiRole WiFiRole
ওয়াইফাই নেটওয়ার্কে ডিভাইসের ভূমিকা।
ওয়াইফাইএসআইডি
char * WiFiSSID
ওয়াইফাই SSID, বা NULL নির্দিষ্ট না থাকলে।
এটি একটি NUL-সমাপ্ত, গতিশীলভাবে বরাদ্দকৃত সি-স্ট্রিং, ক্লাসের মালিকানাধীন। অবজেক্টে Clear()
কল করে এমন যেকোনো শর্তে ধ্বংস করা হয়েছে।
ওয়াইফাই সিকিউরিটি টাইপ
::nl::Weave::Profiles::NetworkProvisioning::WiFiSecurityType WiFiSecurityType
ওয়াইফাই নিরাপত্তার ধরন।
ওয়্যারলেস সিগন্যাল শক্তি
int16_t WirelessSignalStrength
নেটওয়ার্কের সংকেত শক্তি, অথবা INT16_MIN যদি উপলব্ধ/প্রযোজ্য না হয়।
পাবলিক ফাংশন
পরিষ্কার
void Clear( void )
ডিফল্টে রিসেট করুন এবং এই NetworkInfo অবজেক্টের মধ্যে সমস্ত মান মুক্ত করুন।
CopyTo
WEAVE_ERROR CopyTo( NetworkInfo & dest )
এই NetworkInfo অবজেক্টের বিষয়বস্তু আর্গুমেন্টের বিষয়বস্তুর গভীর অনুলিপি দিয়ে প্রতিস্থাপন করুন।
বিস্তারিত | |||||||
---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||
রিটার্ন মান |
|
ডিকোড
WEAVE_ERROR Decode( nl::Weave::TLV::TLVReader & reader )
TLV উপস্থাপনা থেকে এই NetworkInfo অবজেক্টের বিষয়বস্তুকে ডিসিরিয়ালাইজ করুন।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্নস | WEAVE_NO_ERROR সাফল্যের ক্ষেত্রে, নেটওয়ার্ক প্রভিশনিং প্রোফাইলের সাথে সঙ্গতিপূর্ণ নয় এমন কোনো উপাদানে WEAVE_ERROR_INVALID_TLV_ELEMENT, উপাদানগুলির ভুল ডিকোডিংয়ে TLV পাঠক ত্রুটিগুলির যে কোনো একটি। |
এনকোড
WEAVE_ERROR Encode( nl::Weave::TLV::TLVWriter & writer, uint8_t encodeFlags ) const
এই NetworkInfo অবজেক্টের বিষয়বস্তুকে এর TLV উপস্থাপনায় সিরিয়ালাইজ করুন।
বিস্তারিত | |||||
---|---|---|---|---|---|
পরামিতি |
| ||||
রিটার্নস | WEAVE_NO_ERROR সাফল্যের ক্ষেত্রে, নেটওয়ার্ক প্রভিশনিং প্রোফাইলের সাথে সঙ্গতিপূর্ণ নয় এমন কোনো উপাদানে WEAVE_ERROR_INVALID_TLV_ELEMENT, উপাদানগুলির ভুল ডিকোডিংয়ে TLV পাঠক ত্রুটিগুলির যে কোনো একটি। |
মার্জটু
WEAVE_ERROR MergeTo( NetworkInfo & dest )
এই NetworkInfo অবজেক্টের বিষয়বস্তু আর্গুমেন্টের বিষয়বস্তুর গভীর অনুলিপির সাথে মার্জ করুন।
আর্গুমেন্ট অবজেক্টের সমস্ত অ-ডিফল্ট মান এই বস্তুর মানগুলিকে প্রতিস্থাপন করে।
বিস্তারিত | |||||||
---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||
রিটার্ন মান |
|
নেটওয়ার্ক ইনফো
NetworkInfo()
~নেটওয়ার্ক ইনফো
~NetworkInfo()
পাবলিক স্ট্যাটিক ফাংশন
ডিকোডলিস্ট
WEAVE_ERROR DecodeList( nl::Weave::TLV::TLVReader & reader, uint16_t & elemCount, NetworkInfo *& elemArray )
এর TLV উপস্থাপনা থেকে NetworkInfo উপাদানগুলির একটি তালিকা ডিসিরিয়ালাইজ করুন।
বিস্তারিত | |||||||
---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||
রিটার্ন মান |
|
এনকোডলিস্ট
WEAVE_ERROR EncodeList( nl::Weave::TLV::TLVWriter & writer, uint16_t elemCount, const NetworkInfo *elemArray, uint8_t encodeFlags )
নেটওয়ার্কইনফো অবজেক্টের একটি অ্যারেকে এর TLV উপস্থাপনায় সিরিয়ালাইজ করুন।
অ্যারে টিএলভি উপস্থাপনায় একটি বেনামী উপাদান হবে।
বিস্তারিত | |||||||||
---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||
রিটার্ন মান |
|
এনকোডলিস্ট
WEAVE_ERROR EncodeList( nl::Weave::TLV::TLVWriter & writer, uint16_t arrayLen, const NetworkInfo *elemArray, ::nl::Weave::Profiles::NetworkProvisioning::NetworkType networkType, uint8_t encodeFlags, uint16_t & encodedElemCount )
নেটওয়ার্কইনফো অবজেক্টের একটি অ্যারেকে তার TLV উপস্থাপনায় একটি নির্দিষ্ট ধরণের নেটওয়ার্ক নির্বাচন করে সিরিয়ালাইজ করুন।
বিস্তারিত | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||||||
রিটার্ন মান |
|