nl:: Weave:: DeviceLayer:: Internal:: NRF5Config
#include <src/adaptations/device-layer/include/Weave/DeviceLayer/nRF5/nRF5Config.h>
Bietet Funktionen und Definitionen für den Zugriff auf eine persistente Gerätekonfiguration auf Plattformen, die auf dem Nordic nRF5 SDK basieren.
Zusammenfassung
Bei dieser Implementierung wird die Nordic Flash Data Storage (FDS)-Bibliothek als zugrunde liegende Speicherschicht verwendet.
HINWEIS: Diese Klasse wurde für die Integration in die konkrete Unterklasse von GenericConfigurationManagerImpl<> entwickelt. Vorlage. Wenn die Klasse auf diese Weise verwendet wird, stellt sie natürlich Implementierungen für die delegierten Mitglieder bereit, auf die von der Vorlagenklasse verwiesen wird (z.B. die ReadConfigValue()-Methode).
Übernahme
Direkte bekannte abgeleitete Klassen:nl::Weave::DeviceLayer::ConfigurationManagerImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
Öffentliche Typen |
|
---|---|
Key
|
verwendenuint32_t
|
Geschützte Typen |
|
---|---|
ForEachRecordFunct
|
verwendenstd::function< WEAVE_ERROR(const fds_flash_record_t &rec, bool &deleteRec)>
|
Öffentliche statische Attribute |
|
---|---|
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
Höchstwert, der für eine FDS-Datei-ID verwendet werden kann (gemäß Nordic SDK)
|
kFDSFileIdMin = 0x0000
|
constexpr uint16_t
Minimaler Wert, der für eine FDS-Datei-ID verwendet werden kann (gemäß Nordic SDK)
|
kFDSRecordKeyMax = 0xBFFF
|
constexpr uint16_t
Höchstwert, der für einen FDS-Eintragsschlüssel verwendet werden kann (gemäß Nordic SDK)
|
kFDSRecordKeyMin = 0x0001
|
constexpr uint16_t
Minimaler Wert, der für einen FDS-Eintragschlüssel verwendet werden kann (gemäß Nordic SDK)
|
kFileId_WeaveConfig = 0x235B
|
constexpr uint16_t
FDS-Datei mit dynamischen Konfigurationswerten, die zur Laufzeit festgelegt werden.
|
kFileId_WeaveCounter = 0x235C
|
constexpr uint16_t
FDS-Datei mit dynamischen Zählerwerten, die zur Laufzeit festgelegt werden
|
kFileId_WeaveFactory = 0x235A
|
constexpr uint16_t
FDS-Datei mit persistenten Konfigurationswerten, die bei der Fertigung festgelegt wurden.
|
kPersistedCounterRecordKeyBase = kFDSRecordKeyMin
|
constexpr uint16_t
Basisdatensatzschlüssel für Datensätze, die persistente Weave-Zählerwerte enthalten.
|
kPersistedCounterRecordKeyMax = kFDSRecordKeyMax
|
constexpr uint16_t
Maximaler Datensatzschlüssel für Datensätze, die persistente Weave-Zählerwerte enthalten.
|
Geschützte statische Attribute |
|
---|---|
kFDSWordSize = 4
|
constexpr uint16_t
|
sActiveAsyncOp
|
FDSAsyncOp *volatile
|
sAsyncOpCompletionSem
|
SemaphoreHandle_t
|
Öffentliche statische Funktionen |
|
---|---|
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)
|
Geschützte statische Funktionen |
|
---|---|
DoAsyncFDSOp(FDSAsyncOp & asyncOp)
|
|
FDSWords(size_t s)
|
constexpr uint16_t
Anzahl der FDS-Wörter, die für ein bestimmtes Größenobjekt erforderlich sind.
|
ForEachRecord(uint16_t fileId, uint16_t recordKey, ForEachRecordFunct funct)
|
|
GetFileId(uint32_t key)
|
constexpr uint16_t
Extrahieren Sie eine FDS-Datei-ID aus einem Schlüsselwert.
|
GetRecordKey(uint32_t key)
|
constexpr uint16_t
Extrahiert einen FDS-Eintragsschlüssel aus einem Schlüsselwert.
|
OpenRecord(NRF5Config::Key key, fds_record_desc_t & recDesc, fds_flash_record_t & rec)
|
Öffentliche Typen
Schlüssel
uint32_t Key
Geschützte Typen
ForEachRecordFunct
std::function< WEAVE_ERROR(const fds_flash_record_t &rec, bool &deleteRec)> ForEachRecordFunct
Öffentliche statische Attribute
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
Höchstwert, der für eine FDS-Datei-ID verwendet werden kann (gemäß Nordic SDK)
kFDSFileIdMin
constexpr uint16_t kFDSFileIdMin = 0x0000
Minimaler Wert, der für eine FDS-Datei-ID verwendet werden kann (gemäß Nordic SDK)
kFDSRecordKeyMax
constexpr uint16_t kFDSRecordKeyMax = 0xBFFF
Höchstwert, der für einen FDS-Eintragsschlüssel verwendet werden kann (gemäß Nordic SDK)
kFDSRecordKeyMin
constexpr uint16_t kFDSRecordKeyMin = 0x0001
Minimaler Wert, der für einen FDS-Eintragschlüssel verwendet werden kann (gemäß Nordic SDK)
kFileId_WeaveConfig
constexpr uint16_t kFileId_WeaveConfig = 0x235B
FDS-Datei mit dynamischen Konfigurationswerten, die zur Laufzeit festgelegt werden.
Beim Zurücksetzen auf Werkseinstellungen gelöscht.
kFileId_WeaveCounter
constexpr uint16_t kFileId_WeaveCounter = 0x235C
FDS-Datei mit dynamischen Zählerwerten, die zur Laufzeit festgelegt werden
Wird beim Zurücksetzen auf Werkseinstellungen beibehalten.
kFileId_WeaveFactory
constexpr uint16_t kFileId_WeaveFactory = 0x235A
FDS-Datei mit persistenten Konfigurationswerten, die bei der Fertigung festgelegt wurden.
Wird beim Zurücksetzen auf Werkseinstellungen beibehalten.
kPersistedCounterRecordKeyBase
constexpr uint16_t kPersistedCounterRecordKeyBase = kFDSRecordKeyMin
Basisdatensatzschlüssel für Datensätze, die persistente Weave-Zählerwerte enthalten.
Die Weave-Zähler-ID wird zu diesem Wert hinzugefügt, um den FDS-Eintragsschlüssel zu bilden.
kPersistedCounterRecordKeyMax
constexpr uint16_t kPersistedCounterRecordKeyMax = kFDSRecordKeyMax
Maximaler Datensatzschlüssel für Datensätze, die persistente Weave-Zählerwerte enthalten.
Geschützte statische Attribute
kFDSWordSize
constexpr uint16_t kFDSWordSize = 4
sActiveAsyncOp
FDSAsyncOp *volatile sActiveAsyncOp
sAsyncOpCompletionSem
SemaphoreHandle_t sAsyncOpCompletionSem
Öffentliche statische Funktionen
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 )
Geschützte statische Funktionen
DoAsyncFDSOp
WEAVE_ERROR DoAsyncFDSOp( FDSAsyncOp & asyncOp )
FDSWords
constexpr uint16_t FDSWords( size_t s )
Anzahl der FDS-Wörter, die für ein bestimmtes Größenobjekt erforderlich sind.
ForEachRecord
WEAVE_ERROR ForEachRecord( uint16_t fileId, uint16_t recordKey, ForEachRecordFunct funct )
GetFileId
constexpr uint16_t GetFileId( uint32_t key )
Extrahieren Sie eine FDS-Datei-ID aus einem Schlüsselwert.
GetRecordKey
constexpr uint16_t GetRecordKey( uint32_t key )
Extrahiert einen FDS-Eintragsschlüssel aus einem Schlüsselwert.
OpenRecord
WEAVE_ERROR OpenRecord( NRF5Config::Key key, fds_record_desc_t & recDesc, fds_flash_record_t & rec )