nl:: Weave:: DeviceLayer:: Internal:: NRF5Config
#include <src/adaptations/device-layer/include/Weave/DeviceLayer/nRF5/nRF5Config.h>
توابع و تعاریفی برای دسترسی به پیکربندی دستگاه ماندگار در پلاتفرمهای مبتنی بر Nordic nRF5 SDK ارائه میدهد.
خلاصه
این پیادهسازی از کتابخانه Nordic Flash Data Storage (FDS) بهعنوان لایه ذخیرهسازی زیرین استفاده میکند.
توجه: این کلاس بهگونهای طراحی شده است که در زیرکلاس بتنی الگوی GenericConfigurationManagerImpl<> ترکیب شود. وقتی به این روش استفاده شود، کلاس بهطور طبیعی پیادهسازیهایی برای اعضای واگذارشدهای که کلاس الگو به آنها ارجاع میدهد (برای نمونه، روش ReadConfigValue()) ارائه میدهد.
ارث
زیرکلاسهای شناختهشده مستقیم:nl::Weave::DeviceLayer::ConfigurationManagerImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
انواع عمومی |
|
|---|---|
Key
|
درحال استفادهuint32_t
|
انواع محافظتشده |
|
|---|---|
ForEachRecordFunct
|
درحال استفادهstd::function< WEAVE_ERROR(const fds_flash_record_t &rec, bool &deleteRec)>
|
مشخصههای ایستا عمومی |
|
|---|---|
kConfigKey_FabricId = NRF5ConfigKey(kFileId_WeaveConfig, 0x0007)
|
constexpr Key
|
kConfigKey_FabricSecret = NRF5ConfigKey(kFileId_WeaveConfig, 0x000B)
|
constexpr Key
|
kConfigKey_FailSafeArmed = NRF5ConfigKey(kFileId_WeaveConfig, 0x000D)
|
constexpr Key
|
kConfigKey_GroupKey = NRF5ConfigKey(kFileId_WeaveConfig, 0x000E)
|
constexpr Key
|
kConfigKey_LastUsedEpochKeyId = NRF5ConfigKey(kFileId_WeaveConfig, 0x000C)
|
constexpr Key
|
kConfigKey_ManufacturingDate = NRF5ConfigKey(kFileId_WeaveFactory, 0x0005)
|
constexpr Key
|
kConfigKey_MfrDeviceCert = NRF5ConfigKey(kFileId_WeaveFactory, 0x0003)
|
constexpr Key
|
kConfigKey_MfrDeviceICACerts = NRF5ConfigKey(kFileId_WeaveFactory, 0x0010)
|
constexpr Key
|
kConfigKey_MfrDeviceId = NRF5ConfigKey(kFileId_WeaveFactory, 0x0002)
|
constexpr Key
|
kConfigKey_MfrDevicePrivateKey = NRF5ConfigKey(kFileId_WeaveFactory, 0x0004)
|
constexpr Key
|
kConfigKey_OperationalDeviceCert = NRF5ConfigKey(kFileId_WeaveConfig, 0x0012)
|
constexpr Key
|
kConfigKey_OperationalDeviceICACerts = NRF5ConfigKey(kFileId_WeaveConfig, 0x0013)
|
constexpr Key
|
kConfigKey_OperationalDeviceId = NRF5ConfigKey(kFileId_WeaveConfig, 0x0011)
|
constexpr Key
|
kConfigKey_OperationalDevicePrivateKey = NRF5ConfigKey(kFileId_WeaveConfig, 0x0014)
|
constexpr Key
|
kConfigKey_PairedAccountId = NRF5ConfigKey(kFileId_WeaveConfig, 0x0009)
|
constexpr Key
|
kConfigKey_PairingCode = NRF5ConfigKey(kFileId_WeaveFactory, 0x0006)
|
constexpr Key
|
kConfigKey_ProductRevision = NRF5ConfigKey(kFileId_WeaveFactory, 0x000F)
|
constexpr Key
|
kConfigKey_SerialNum = NRF5ConfigKey(kFileId_WeaveFactory, 0x0001)
|
constexpr Key
|
kConfigKey_ServiceConfig = NRF5ConfigKey(kFileId_WeaveConfig, 0x0008)
|
constexpr Key
|
kConfigKey_ServiceId = NRF5ConfigKey(kFileId_WeaveConfig, 0x000A)
|
constexpr Key
|
kFDSFileIdMax = 0xBFFF
|
constexpr uint16_t
حداکثر مقدار قابلاستفاده برای شناسه فایل FDS (برای هر Nordic SDK)
|
kFDSFileIdMin = 0x0000
|
constexpr uint16_t
حداقل مقدار قابلاستفاده برای شناسه فایل FDS (برای هر کیت توسعه نرمافزار Nordic)
|
kFDSRecordKeyMax = 0xBFFF
|
constexpr uint16_t
حداکثر مقدار قابلاستفاده برای کلید گزارش FDS (برای هر Nordic SDK)
|
kFDSRecordKeyMin = 0x0001
|
constexpr uint16_t
حداقل مقداری که میتواند برای کلید گزارش FDS استفاده شود (طبق Nordic SDK)
|
kFileId_WeaveConfig = 0x235B
|
constexpr uint16_t
فایل FDS حاوی مقادیر پیکربندی پویا که در زمان اجرا تنظیم شده است.
|
kFileId_WeaveCounter = 0x235C
|
constexpr uint16_t
فایل FDS حاوی مقادیر شمارنده پویا که در زمان اجرا تنظیم شده است.
|
kFileId_WeaveFactory = 0x235A
|
constexpr uint16_t
فایل FDS حاوی مقادیر پیکربندی ماندگار که در زمان تولید تنظیم شده است.
|
kPersistedCounterRecordKeyBase = kFDSRecordKeyMin
|
constexpr uint16_t
کلید ثبت پایه برای ثبتهایی که حاوی مقادیر پایا شمارنده Weave است.
|
kPersistedCounterRecordKeyMax = kFDSRecordKeyMax
|
constexpr uint16_t
حداکثر کلید ثبت برای ثبتهایی که حاوی مقادیر شمارنده ماندگار Weave است.
|
مشخصههای ایستا محافظتشده |
|
|---|---|
kFDSWordSize = 4
|
constexpr uint16_t
|
sActiveAsyncOp
|
FDSAsyncOp *volatile
|
sAsyncOpCompletionSem
|
SemaphoreHandle_t
|
توابع ایستا عمومی |
|
|---|---|
ClearConfigValue(Key key)
|
|
ConfigValueExists(Key key)
|
bool
|
FactoryResetConfig(void)
|
|
Init(void)
|
|
ReadConfigValue(Key key, bool & val)
|
|
ReadConfigValue(Key key, uint32_t & val)
|
|
ReadConfigValue(Key key, uint64_t & val)
|
|
ReadConfigValueBin(Key key, uint8_t *buf, size_t bufSize, size_t & outLen)
|
|
ReadConfigValueStr(Key key, char *buf, size_t bufSize, size_t & outLen)
|
|
RunConfigUnitTest(void)
|
void
|
WriteConfigValue(Key key, bool val)
|
|
WriteConfigValue(Key key, uint32_t val)
|
|
WriteConfigValue(Key key, uint64_t val)
|
|
WriteConfigValueBin(Key key, const uint8_t *data, size_t dataLen)
|
|
WriteConfigValueStr(Key key, const char *str)
|
|
WriteConfigValueStr(Key key, const char *str, size_t strLen)
|
|
توابع ایستا محافظتشده |
|
|---|---|
DoAsyncFDSOp(FDSAsyncOp & asyncOp)
|
|
FDSWords(size_t s)
|
constexpr uint16_t
تعداد کلمات FDS موردنیاز برای نگهداشتن شیء با اندازه معین.
|
ForEachRecord(uint16_t fileId, uint16_t recordKey, ForEachRecordFunct funct)
|
|
GetFileId(uint32_t key)
|
constexpr uint16_t
شناسه فایل FDS را از مقدار «کلید» استخراج کنید.
|
GetRecordKey(uint32_t key)
|
constexpr uint16_t
کلید ثبت FDS را از مقدار «کلید» استخراج کنید.
|
OpenRecord(NRF5Config::Key key, fds_record_desc_t & recDesc, fds_flash_record_t & rec)
|
|
انواع عمومی
کلید
uint32_t Key
انواع محافظتشده
ForEachRecordFunct
std::function< WEAVE_ERROR(const fds_flash_record_t &rec, bool &deleteRec)> ForEachRecordFunct
مشخصههای ایستا عمومی
kConfigKey_FabricId
constexpr Key kConfigKey_FabricId = NRF5ConfigKey(kFileId_WeaveConfig, 0x0007)
kConfigKey_FabricSecret
constexpr Key kConfigKey_FabricSecret = NRF5ConfigKey(kFileId_WeaveConfig, 0x000B)
kConfigKey_FailSafeArmed
constexpr Key kConfigKey_FailSafeArmed = NRF5ConfigKey(kFileId_WeaveConfig, 0x000D)
kConfigKey_GroupKey
constexpr Key kConfigKey_GroupKey = NRF5ConfigKey(kFileId_WeaveConfig, 0x000E)
kConfigKey_LastUsedEpochKeyId
constexpr Key kConfigKey_LastUsedEpochKeyId = NRF5ConfigKey(kFileId_WeaveConfig, 0x000C)
kConfigKey_ManufacturingDate
constexpr Key kConfigKey_ManufacturingDate = NRF5ConfigKey(kFileId_WeaveFactory, 0x0005)
kConfigKey_MfrDeviceCert
constexpr Key kConfigKey_MfrDeviceCert = NRF5ConfigKey(kFileId_WeaveFactory, 0x0003)
kConfigKey_MfrDeviceICACerts
constexpr Key kConfigKey_MfrDeviceICACerts = NRF5ConfigKey(kFileId_WeaveFactory, 0x0010)
kConfigKey_MfrDeviceId
constexpr Key kConfigKey_MfrDeviceId = NRF5ConfigKey(kFileId_WeaveFactory, 0x0002)
kConfigKey_MfrDevicePrivateKey
constexpr Key kConfigKey_MfrDevicePrivateKey = NRF5ConfigKey(kFileId_WeaveFactory, 0x0004)
kConfigKey_OperationalDeviceCert
constexpr Key kConfigKey_OperationalDeviceCert = NRF5ConfigKey(kFileId_WeaveConfig, 0x0012)
kConfigKey_OperationalDeviceICACerts
constexpr Key kConfigKey_OperationalDeviceICACerts = NRF5ConfigKey(kFileId_WeaveConfig, 0x0013)
kConfigKey_OperationalDeviceId
constexpr Key kConfigKey_OperationalDeviceId = NRF5ConfigKey(kFileId_WeaveConfig, 0x0011)
kConfigKey_OperationalDevicePrivateKey
constexpr Key kConfigKey_OperationalDevicePrivateKey = NRF5ConfigKey(kFileId_WeaveConfig, 0x0014)
kConfigKey_PairedAccountId
constexpr Key kConfigKey_PairedAccountId = NRF5ConfigKey(kFileId_WeaveConfig, 0x0009)
kConfigKey_PairingCode
constexpr Key kConfigKey_PairingCode = NRF5ConfigKey(kFileId_WeaveFactory, 0x0006)
kConfigKey_ProductRevision
constexpr Key kConfigKey_ProductRevision = NRF5ConfigKey(kFileId_WeaveFactory, 0x000F)
kConfigKey_SerialNum
constexpr Key kConfigKey_SerialNum = NRF5ConfigKey(kFileId_WeaveFactory, 0x0001)
kConfigKey_ServiceConfig
constexpr Key kConfigKey_ServiceConfig = NRF5ConfigKey(kFileId_WeaveConfig, 0x0008)
kConfigKey_ServiceId
constexpr Key kConfigKey_ServiceId = NRF5ConfigKey(kFileId_WeaveConfig, 0x000A)
kFDSFileIdMax
constexpr uint16_t kFDSFileIdMax = 0xBFFF
حداکثر مقدار قابلاستفاده برای شناسه فایل FDS (برای هر Nordic SDK)
kFDSFileIdMin
constexpr uint16_t kFDSFileIdMin = 0x0000
حداقل مقدار قابلاستفاده برای شناسه فایل FDS (برای هر کیت توسعه نرمافزار Nordic)
kFDSRecordKeyMax
constexpr uint16_t kFDSRecordKeyMax = 0xBFFF
حداکثر مقدار قابلاستفاده برای کلید گزارش FDS (برای هر Nordic SDK)
kFDSRecordKeyMin
constexpr uint16_t kFDSRecordKeyMin = 0x0001
حداقل مقداری که میتواند برای کلید گزارش FDS استفاده شود (طبق Nordic SDK)
kFileId_WeaveConfig
constexpr uint16_t kFileId_WeaveConfig = 0x235B
فایل FDS حاوی مقادیر پیکربندی پویا که در زمان اجرا تنظیم شده است.
درحین بازنشانی کارخانهای پاک شد.
kFileId_WeaveCounter
constexpr uint16_t kFileId_WeaveCounter = 0x235C
فایل FDS حاوی مقادیر شمارنده پویا که در زمان اجرا تنظیم شده است.
درطول بازنشانی کارخانهای حفظ میشود.
kFileId_WeaveFactory
constexpr uint16_t kFileId_WeaveFactory = 0x235A
فایل FDS حاوی مقادیر پیکربندی ماندگار که در زمان تولید تنظیم شده است.
درطول بازنشانی کارخانهای حفظ میشود.
kPersistedCounterRecordKeyBase
constexpr uint16_t kPersistedCounterRecordKeyBase = kFDSRecordKeyMin
کلید ثبت پایه برای ثبتهایی که حاوی مقادیر پایا شمارنده Weave است.
شناسه شمارنده Weave به این مقدار اضافه میشود تا کلید گزارش FDS را تشکیل دهد.
kPersistedCounterRecordKeyMax
constexpr uint16_t kPersistedCounterRecordKeyMax = kFDSRecordKeyMax
کلید حداکثر برای سوابق حاوی مقادیر شمارنده ماندگار Weave.
مشخصههای ایستا محافظتشده
kFDSWordSize
constexpr uint16_t kFDSWordSize = 4
sActiveAsyncOp
FDSAsyncOp *volatile sActiveAsyncOp
sAsyncOpCompletionSem
SemaphoreHandle_t sAsyncOpCompletionSem
توابع ایستا عمومی
ClearConfigValue
WEAVE_ERROR ClearConfigValue( Key key )
ConfigValueExists
bool ConfigValueExists( Key key )
FactoryResetConfig
WEAVE_ERROR FactoryResetConfig( void )
Init
WEAVE_ERROR Init( void )
ReadConfigValue
WEAVE_ERROR ReadConfigValue( Key key, bool & val )
ReadConfigValue
WEAVE_ERROR ReadConfigValue( Key key, uint32_t & val )
ReadConfigValue
WEAVE_ERROR ReadConfigValue( Key key, uint64_t & val )
ReadConfigValueBin
WEAVE_ERROR ReadConfigValueBin( Key key, uint8_t *buf, size_t bufSize, size_t & outLen )
ReadConfigValueStr
WEAVE_ERROR ReadConfigValueStr( Key key, char *buf, size_t bufSize, size_t & outLen )
RunConfigUnitTest
void RunConfigUnitTest( void )
WriteConfigValue
WEAVE_ERROR WriteConfigValue( Key key, bool val )
WriteConfigValue
WEAVE_ERROR WriteConfigValue( Key key, uint32_t val )
WriteConfigValue
WEAVE_ERROR WriteConfigValue( Key key, uint64_t val )
WriteConfigValueBin
WEAVE_ERROR WriteConfigValueBin( Key key, const uint8_t *data, size_t dataLen )
WriteConfigValueStr
WEAVE_ERROR WriteConfigValueStr( Key key, const char *str )
WriteConfigValueStr
WEAVE_ERROR WriteConfigValueStr( Key key, const char *str, size_t strLen )
توابع ایستا محافظتشده
DoAsyncFDSOp
WEAVE_ERROR DoAsyncFDSOp( FDSAsyncOp & asyncOp )
FDSWords
constexpr uint16_t FDSWords( size_t s )
تعداد کلمات FDS موردنیاز برای نگهداشتن شیء با اندازه معین.
ForEachRecord
WEAVE_ERROR ForEachRecord( uint16_t fileId, uint16_t recordKey, ForEachRecordFunct funct )
GetFileId
constexpr uint16_t GetFileId( uint32_t key )
شناسه فایل FDS را از مقدار «کلید» استخراج کنید.
GetRecordKey
constexpr uint16_t GetRecordKey( uint32_t key )
کلید ثبت FDS را از مقدار «کلید» استخراج کنید.
OpenRecord
WEAVE_ERROR OpenRecord( NRF5Config::Key key, fds_record_desc_t & recDesc, fds_flash_record_t & rec )