nl:: Weave:: Profiles:: DataManagement_Current
Cet espace de noms inclut toutes les interfaces de Weave pour le profil de gestion de données Weave (WDM) actuellement compatibles avec une utilisation en production.
Résumé
Typedefs |
|
---|---|
CommandFlags
|
typedef |
DataVersion
|
typedefuint64_t
|
EventProcessor
|
typedefvoid *
|
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
|
typedef Fonction qui fournit l'élément eventData au sous-système de journalisation des événements. |
FetchExternalEventsFunct)(EventLoadOutContext *aContext)
|
typedef Prototype de fonction permettant aux rappels de plate-forme d'extraire les données d'événement. |
GenericTraitSinkCatalog
|
typedef |
GenericTraitSourceCatalog
|
typedef |
ImportanceType
|
typedef Importance de l'entrée de journal. |
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
|
typedefvoid(*
Itérateur de poignée de trame |
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
|
typedef |
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
|
typedefvoid(*
Prototype de fonction pour un rappel invoqué lorsque des événements externes sont transmis à l'abonné distant. |
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
|
typedefvoid(*
Prototype de fonction pour un rappel invoqué lorsque des événements externes sont évincés des tampons. |
PropertyDictionaryKey
|
typedefuint16_t
|
PropertyPathHandle
|
typedefuint32_t
Un PropertyPathHandle est un hachage numérique unique de 32 bits d'un chemin WDM par rapport à la racine d'une instance de caractéristique. |
PropertySchemaHandle
|
typedefuint16_t
|
SchemaVersion
|
typedefuint16_t
|
SingleResourceSinkTraitCatalog
|
typedef |
SingleResourceSourceTraitCatalog
|
typedef |
TimestampType
|
typedef Validité et type d'horodatage inclus dans EventOptions. |
TraitDataHandle
|
typedefuint16_t
|
duration_t
|
nl::Weave::Profiles::DataManagement_Current::duration_tuint32_t
Type utilisé pour décrire la durée, en millisecondes. |
event_id_t
|
nl::Weave::Profiles::DataManagement_Current::event_id_tuint32_t
Type d'ID d'événement. |
timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::timestamp_tuint32_t
Type utilisé pour décrire l'horodatage en millisecondes. |
utc_timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::utc_timestamp_tuint64_t
Type utilisé pour décrire le code temporel UTC en millisecondes. |
Variables |
|
---|---|
sInstance
|
|
sLogFileName = "topazlog"[]
|
char
|
Fonctions |
|
---|---|
BdxErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode)
|
void
|
BdxGetBlockHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock)
|
void
|
BdxRejectHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport)
|
void
|
BdxSendAcceptHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg)
|
|
BdxXferDoneHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer)
|
void
|
BdxXferErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError)
|
void
|
CreatePropertyPathHandle(PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey)
|
|
EventWriterTLVCopy(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Fonction d'assistance qui convertit un élément eventdata déjà sérialisé en tampon d'événements.
|
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
|
PropertyDictionaryKey
|
GetPropertySchemaHandle(PropertyPathHandle aHandle)
|
PropertySchemaHandle
|
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
Il s'agit d'une implémentation optimisée de l'algorithme pour comparer les versions.
|
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
|
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
|
Fonction utilitaire qui trouve un récepteur TraitUpdatableDataSink dans un catalogue TraitDataSink.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
|
Consigner un événement à partir d'un formulaire pré-sérialisé.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
|
Consigner un événement à partir d'un formulaire pré-sérialisé, avec des options supplémentaires.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
|
Consigner un événement via un rappel.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
|
Consigner un événement par rappel, avec des options.
|
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
|
LogFreeform émet une chaîne de forme libre vers le flux d'événements par défaut.
|
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
|
|
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Fonction d'assistance permettant d'émettre un texte de forme libre en tant qu'événement de débogage.
|
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Fonction d'assistance permettant d'émettre un texte de forme libre en tant qu'événement de débogage.
|
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
Union |
|
---|---|
nl:: |
Union qui fournit un système d'ensembles d'applications ou un horodatage UTC. |
Énumérations
@100
@100
Balises pour l'événement kNestDebug_StringLogEntryEvent.
Propriétés | |
---|---|
kTag_Message
|
Chaîne contenant le message de débogage réel. |
kTag_Region
|
Code non signé de 32 bits indiquant la région du journal, c'est-à-dire le module auquel appartient le message de journal. |
@101
@101
Tags pour l'événement kNestDebug_TokenizedLogEntryEvent.
Propriétés | |
---|---|
kTag_Args
|
Tableau d'arguments à envoyer avec le message du jeton. |
kTag_Token
|
Valeur non signée de 32 bits correspondant au jeton. |
@102
@102
Tags pour les événements persistants.
@104
@104
Types de messages du profil WDM.
Ces valeurs sont indiquées dans la spécification de gestion des données.
@105
@105
Codes d'état spécifiques à WDM.
@147
@147
@95
@95
Balises des paramètres Logging.
Propriétés | |
---|---|
kTag_CurrentImportance
|
Importance actuelle de la journalisation : la valeur est de type ImportanceType. |
kTag_ImportanceExpiration
|
Heure, en secondes UTC, lorsque les paramètres de journalisation élevés actuels reviennent aux valeurs par défaut. |
kTag_LoggingDestination
|
URL indiquant la destination de l'importation du journal. |
kTag_MaximumLogUploadInterval
|
Durée maximale, en secondes, entre les tentatives d'importation de journaux déclenchées automatiquement. |
kTag_MinimumLogUploadInterval
|
Durée minimale, en secondes, entre les tentatives d'importation de journaux déclenchées automatiquement. |
kTag_TraitLoggingImportance
|
Tableau facultatif mappant de manière sélective les profils choisis sur les niveaux de journalisation supérieurs. Chaque élément du tableau prend une forme (profile,path,loggingimportance) pour élever de manière sélective la journalisation d'un sous-ensemble du système. La priorité de journalisation du profil élevé n'est importante que lorsque la priorité de journalisation dépasse celle de l'élément currentImportance et qu'elle est soumise au même délai d'expiration que celle de currentImportance. |
@96
@96
Tags pour les fonctionnalités de journalisation
Propriétés | |
---|---|
kTag_LogBufferingCapacity
|
Entier non signé de 32 bits décrivant la capacité de mise en mémoire tampon du journal en Ko. |
kTag_LoggingVolume
|
Entier non signé de 32 bits décrivant le volume de journalisation attendu en Ko/jour. |
kTag_SupportedLogTransports
|
Tableau des mécanismes de transport de journaux compatibles. |
kTag_SupportsNonVolatileStorage
|
Booléen indiquant si l'appareil est compatible avec le stockage de journaux non volatile. |
kTag_SupportsPerTraitVerbosity
|
Booléen indiquant si l'appareil est compatible avec les paramètres de verbosité par caractéristique. |
kTag_SupportsStreaming
|
Booléen indiquant si l'appareil est compatible avec la diffusion des journaux. |
@97
@97
Tags pour les métadonnées d'événement.
Pour obtenir une sémantique complète des valeurs de tag, consultez la spécification de conception d'événement.
Propriétés | |
---|---|
kTag_EventData
|
Facultatif. Données d'événement proprement dites. Si ce champ est vide, une structure vide est utilisée par défaut. |
kTag_EventDeltaSystemTime
|
Tag interne WDM, décalage par rapport à l'événement précédent dans l'encodage. |
kTag_EventDeltaUTCTime
|
Tag interne WDM, décalage par rapport à l'événement précédent dans l'encodage. |
kTag_EventID
|
Numéro de séquence de l'événement, exprimé sous la forme d'une quantité non signée de 64 bits. Les sauts dans la séquence doivent être séquentiels. Les sauts dans la séquence indiquent des interruptions d'événements. |
kTag_EventImportance
|
Importance de l'événement. |
kTag_EventResourceID
|
Facultatif. La valeur correspond à l'ID de la ressource associée à l'événement. Lorsqu'elle est omise, la valeur est identique à celle du paramètre kTag_EventSource. |
kTag_EventSource
|
NodeID de l'appareil qui a généré l'événement. |
kTag_EventSystemTimestamp
|
Facultatif. Code temporel système de l'événement en millisecondes. |
kTag_EventTraitInstanceID
|
Facultatif, instance de la caractéristique qui a généré l'événement. |
kTag_EventTraitProfileID
|
Obligatoire. Entier non signé de 32 bits égal à l'ID de profil de la caractéristique. |
kTag_EventType
|
Obligatoire. Entier non signé de 16 bits égal à wdl.event.id pour ce type d'événement. |
kTag_EventUTCTimestamp
|
Facultatif. Code temporel UTC de l'événement en millisecondes. |
kTag_ExternalEventStructure
|
Tag interne pour les événements externes. Ils ne doivent jamais être transmis à travers le fil et ne doivent jamais être utilisés en dehors de la bibliothèque Weave. |
kTag_RelatedEventID
|
Facultatif. ID d'un événement auquel cet événement est associé. Si cette valeur est omise, la valeur est égale à celle de kTag_EventID. |
kTag_RelatedEventImportance
|
Facultatif. Importance de l'événement associé. Si cette valeur est omise, sa valeur est égale à celle de kTag_EventImportance. |
@98
@98
Définitions de profil pour la caractéristique de débogage.
@99
@99
Types d'événements pour la caractéristique Nest Debug.
Propriétés | |
---|---|
kNestDebug_StringLogEntryEvent
|
Événement pour le message de débogage de chaîne de forme libre. |
kNestDebug_TokenizedHeaderEntryEvent
|
Événement pour transmettre les informations d'en-tête tokenisées. |
kNestDebug_TokenizedLogEntryEvent
|
Événement pour le message de débogage tokenisé. |
CommandFlags
CommandFlags
Propriétés | |
---|---|
kCommandFlag_ActionTimeValid
|
Définissez quand l'heure d'action est valide. |
kCommandFlag_ExpiryTimeValid
|
Définissez la date d'expiration. |
kCommandFlag_InitiationTimeValid
|
Définissez le moment où l'heure d'initialisation est valide. |
kCommandFlag_IsOneWay
|
Défini lorsque la commande est à sens unique. |
kCommandFlag_MustBeVersionValid
|
Défini lorsque le champ de version est valide. |
ImportanceType
ImportanceType
Importance de l'entrée de journal.
L'importance permet de filtrer les événements avant qu'ils ne soient réellement émis dans le journal. Une fois l'événement consigné dans le journal, nous ne prenons aucune mesure supplémentaire pour l'éliminer définitivement. Le niveau d'importance sert à prioriser le stockage des événements. Si un événement d'importance élevée est ajouté à une mémoire tampon complète, il est supprimé par ordre d'importance (et d'âge) pour tenir compte de cet événement. Par conséquent, les niveaux d'importance n'ont qu'une valeur relative. Si un système n'utilise qu'un seul niveau d'importance, les événements ne sont supprimés que par ordre d'âge, comme un tampon circulaire.
Propriétés | |
---|---|
Debug
|
L'importance du débogage indique les entrées de journal présentant un intérêt pour les développeurs du système. Elle est utilisée principalement lors de la phase de développement. Les journaux d'importance du débogage ne sont pas pris en compte dans les budgets de bande passante ou d'énergie des appareils restreints. Par conséquent, ils ne doivent être utilisés que pour une période limitée dans les systèmes de production. |
Info
|
L'importance des informations indique les entrées de journal qui fournissent des insights et des diagnostics supplémentaires sur le système en cours d'exécution. Le niveau de journalisation des informations peut être utilisé sur une période prolongée dans un système de production ou comme niveau de journalisation par défaut dans un test sur le terrain. Sur les appareils soumis à des contraintes, les entrées enregistrées avec le niveau d'information doivent être prises en compte dans le budget de bande passante et de mémoire, mais pas dans le budget d'alimentation. |
Production
|
L'importance relative à la production désigne les entrées de journal utilisées pour la surveillance et la maintenance continues de l'écosystème Nest. Sur les appareils soumis à des contraintes, les entrées enregistrées avec l'importance "Production" doivent être prises en compte dans la consommation d'énergie et de mémoire, car elles sont toujours consignées et déchargées de l'appareil. |
ProductionCritical
|
L'importance critique en production désigne les événements dont la perte aurait un impact direct sur les fonctionnalités destinées aux clients. Les applications peuvent utiliser la perte d'événements critiques de production pour indiquer une défaillance du système. Sur les appareils soumis à des contraintes, les entrées enregistrées avec un niveau d'importance critique pour la production doivent être prises en compte dans la consommation d'énergie et de mémoire, car elles sont toujours consignées et déchargées de l'appareil. |
LoggingManagementStates
LoggingManagementStates
Propriétés | |
---|---|
kLoggingManagementState_Holdoff
|
Le déchargement du journal est terminé. nous ne redémarrons pas le journal avant l'expiration de la retenue. |
kLoggingManagementState_Idle
|
Aucun déchargement de journal en cours. Il peut commencer sans aucune contrainte. |
kLoggingManagementState_InProgress
|
Déchargement des journaux en cours. |
kLoggingManagementState_Shutdown
|
Incapable d'effectuer des opérations de journalisation. |
Typedefs
CommandFlags
enum nl::Weave::Profiles::DataManagement_Current::CommandFlags CommandFlags
DataVersion
uint64_t DataVersion
EventProcessor
void * EventProcessor
EventWriterFunct
WEAVE_ERROR(* EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
Fonction qui fournit l'élément eventData au sous-système de journalisation des événements.
Les fonctions de ce type doivent fournir l'élément eventData pour le sous-système de journalisation des événements. Les fonctions de ce type sont appelées une fois que le sous-système d'événements a généré toutes les métadonnées d'événement requises. La fonction est appelée avec un objet nl::Weave::TLV::TLVWriter dans lequel elle émettra un seul élément TLV avec pour tag kTag_EventData; la valeur de cet élément DOIT être une structure contenant les données d'événement. Les données d'événement elles-mêmes doivent être structurées à l'aide de balises de contexte.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Valeurs renvoyées |
|
PlainTextWriter
EventWriterTLVCopy
FetchExternalEventsFunct
WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)
Prototype de fonction permettant aux rappels de plate-forme d'extraire les données d'événement.
Semblable à FetchEventsSince, cette fonction d'extraction renvoie tous les événements d'EventLoadOutContext.mStartingEventID via ExternalEvents.mLastEventID.
Le pointeur de contexte est de type FetchExternalEventsContext. Cela inclut EventLoadOutContext, ainsi que quelques variables d'assistance pour le format du TLV. Il inclut également un pointeur vers la structure ExternalEvents créée lors de l'enregistrement du rappel. Ce champ spécifie la plage d'ID d'événement pour le rappel.
Lors du retour à partir de la fonction, EventLoadOutContext.mCurrentEventID doit refléter le premier ID d'événement qui n'a pas été écrit correctement dans le tampon TLV. La plate-forme doit écrire l'en-tête et les données des événements dans le rédacteur TLV au format correct, spécifié par le protocole EventLogging. La plate-forme doit également gérer l'unicité des événements et des codes temporels.
Toutes les erreurs TLV doivent être propagées aux niveaux supérieurs. Par exemple, le manque d'espace dans le tampon déclenche un message envoyé, suivi d'un autre appel au rappel avec n'importe quel ID d'événement restant.
Détails | |||||||||
---|---|---|---|---|---|---|---|---|---|
Valeurs renvoyées |
|
GenericTraitSinkCatalog
GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog
GenericTraitSourceCatalog
GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog
ImportanceType
enum nl::Weave::Profiles::DataManagement_Current::ImportanceType ImportanceType
Importance de l'entrée de journal.
L'importance permet de filtrer les événements avant qu'ils ne soient réellement émis dans le journal. Une fois l'événement consigné dans le journal, nous ne prenons aucune mesure supplémentaire pour l'éliminer définitivement. Le niveau d'importance sert à prioriser le stockage des événements. Si un événement d'importance élevée est ajouté à une mémoire tampon complète, il est supprimé par ordre d'importance (et d'âge) pour tenir compte de cet événement. Par conséquent, les niveaux d'importance n'ont qu'une valeur relative. Si un système n'utilise qu'un seul niveau d'importance, les événements ne sont supprimés que par ordre d'âge, comme un tampon circulaire.
IteratorCallback
void(* IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
Itérateur de poignée de trame
LoggingBufferHandler
WEAVE_ERROR(* LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
NotifyExternalEventsDeliveredFunct
void(* NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
Prototype de fonction pour un rappel invoqué lorsque des événements externes sont transmis à l'abonné distant.
Lorsque les événements externes sont transmis à un abonné distant, le moteur envoie une notification au fournisseur d'événements externe. Le rappel contient l'événement du dernier identifiant envoyé et l'identifiant de l'abonné qui a reçu l'événement.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
NotifyExternalEventsEvictedFunct
void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
Prototype de fonction pour un rappel invoqué lorsque des événements externes sont évincés des tampons.
Lorsque l'objet d'événements externes est évincé du tampon de messages sortants, le moteur envoie une notification au fournisseur d'événements externe. Le rappel contient l'événement externe à évincer.
Détails | |||
---|---|---|---|
Paramètres |
|
PropertyDictionaryKey
uint16_t PropertyDictionaryKey
PropertyPathHandle
uint32_t PropertyPathHandle
Un PropertyPathHandle est un hachage numérique unique de 32 bits d'un chemin WDM par rapport à la racine d'une instance de caractéristique.
Il se compose de deux éléments:
- Un nombre inférieur de 16 bits mappé à la partie statique du schéma.
- Lorsque les 16 bits inférieurs font référence à un chemin dans un élément de dictionnaire, un nombre supérieur de 16 bits est présent et représente la clé de dictionnaire associée à cet élément. Si les 16 bits inférieurs font référence à un élément qui n'est pas un dictionnaire, les 16 bits supérieurs doivent être 0.
Voici quelques caractéristiques:
- Chaque caractéristique a son propre espace de traitement de chemin de propriété.
- Chaque chemin de sous-chemin WDM unique aura un PropertyPathHandle unique similaire.
- Les PropertyPathHandles sont générés automatiquement (à la main pour l'instant) par un compilateur de traits à partir d'IDL et sont représentés sous forme de liste d'énumération dans le fichier d'en-tête du trait correspondant.
- Avec cette construction, la logique d'application n'a jamais besoin de traiter directement les chemins WDM. Au contraire, leurs interactions avec WDM sont menées exclusivement par le biais de ces identifiants.
- Les poignées de chemin d'accès sont deux valeurs réservées qui ont une signification spécifique:
- 0 indique une valeur "NULL" identifiant
- 1 indique un handle qui pointe vers la racine de l'instance de caractéristique.
PropertySchemaHandle
uint16_t PropertySchemaHandle
SchemaVersion
uint16_t SchemaVersion
SingleResourceSinkTraitCatalog
SingleResourceTraitCatalog< TraitDataSink > SingleResourceSinkTraitCatalog
SingleResourceSourceTraitCatalog
SingleResourceTraitCatalog< TraitDataSource > SingleResourceSourceTraitCatalog
TimestampType
enum nl::Weave::Profiles::DataManagement_Current::TimestampType TimestampType
Validité et type d'horodatage inclus dans EventOptions.
TraitDataHandle
uint16_t TraitDataHandle
duration_t
uint32_t duration_t
Type utilisé pour décrire la durée, en millisecondes.
event_id_t
uint32_t event_id_t
Type d'ID d'événement.
timestamp_t
uint32_t timestamp_t
Type utilisé pour décrire l'horodatage en millisecondes.
utc_timestamp_t
uint64_t utc_timestamp_t
Type utilisé pour décrire le code temporel UTC en millisecondes.
Variables
sInstance
LoggingManagement sInstance
sLogFileName
char sLogFileName[] = "topazlog"
Fonctions
BdxErrorHandler
void BdxErrorHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode )
BdxGetBlockHandler
void BdxGetBlockHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock )
BdxRejectHandler
void BdxRejectHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport )
BdxSendAcceptHandler
WEAVE_ERROR BdxSendAcceptHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg )
BdxXferDoneHandler
void BdxXferDoneHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer )
BdxXferErrorHandler
void BdxXferErrorHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError )
CreatePropertyPathHandle
PropertyPathHandle CreatePropertyPathHandle( PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey )
EventWriterTLVCopy
WEAVE_ERROR EventWriterTLVCopy( TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Fonction d'assistance qui convertit un élément eventdata déjà sérialisé en tampon d'événements.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Valeurs renvoyées |
|
GetPropertyDictionaryKey
PropertyDictionaryKey GetPropertyDictionaryKey( PropertyPathHandle aHandle )
GetPropertySchemaHandle
PropertySchemaHandle GetPropertySchemaHandle( PropertyPathHandle aHandle )
IsNullPropertyPathHandle
bool IsNullPropertyPathHandle( PropertyPathHandle aHandle )
IsRootPropertyPathHandle
bool IsRootPropertyPathHandle( PropertyPathHandle aHandle )
IsVersionNewer
bool IsVersionNewer( const DataVersion & aVersion, const DataVersion & aReference )
Il s'agit d'une implémentation optimisée de l'algorithme pour comparer les versions.
Côté client, la version reçue du service est toujours la plus récente.
IsVersionNewerOrEqual
bool IsVersionNewerOrEqual( const DataVersion & aVersion, const DataVersion & aReference )
Localiser
TraitUpdatableDataSink * Locate( TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog )
Fonction utilitaire qui trouve un récepteur TraitUpdatableDataSink dans un catalogue TraitDataSink.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
Un pointeur vers le récepteur TraitUpdatableDataSink. NULL si le handle n'existe pas ou s'il pointe vers un TraitDataSink non modifiable.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData )
Consigner un événement à partir d'un formulaire pré-sérialisé.
La fonction consigne un événement représenté par nl::Weave::TLV::TLVReader. Cela implique que la représentation des données d'événement est déjà sérialisée dans le stockage sous-jacent à nl::Weave::TLV::TLVReader. Le lecteur nl::Weave::TLV::TLVReader doit contenir au moins un élément de données, qui doit être une structure. Le premier élément lu à partir du lecteur est traité comme des données d'événement et stocké dans le journal des événements. Les données d'événement DOIVENT contenir des tags de contexte à interpréter dans le schéma identifié par inProfileID et inEventType. La balise du premier élément est ignorée. le système de journalisation des événements le remplacera par le tag eventData.
L'événement est consigné si son importance dépasse le seuil de journalisation spécifié dans LoggingConfiguration. Si l'importance de l'événement n'atteint pas le seuil actuel, il est supprimé, et la fonction renvoie 0
comme ID d'événement obtenu.
Cette variante de l'appel spécifie implicitement toutes les options d'événement par défaut:
- L'événement est horodaté avec l'heure actuelle au moment de l'appel.
- l'événement est marqué comme relatif à l'appareil qui effectue l'appel ;
- l'événement est autonome et ne concerne aucun autre événement ;
- l'événement est marqué comme non urgent,
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
event_id_t ID de l'événement si celui-ci a été écrit dans le journal (0 dans le cas contraire).
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions )
Consigner un événement à partir d'un formulaire pré-sérialisé, avec des options supplémentaires.
La fonction consigne un événement représenté par nl::Weave::TLV::TLVReader. Cela implique que la représentation des données d'événement est déjà sérialisée dans le stockage sous-jacent à nl::Weave::TLV::TLVReader. Le lecteur nl::Weave::TLV::TLVReader doit contenir au moins un élément de données, qui doit être une structure. Le premier élément lu à partir du lecteur est traité comme des données d'événement et stocké dans le journal des événements. Les données d'événement DOIVENT contenir des tags de contexte à interpréter dans le schéma identifié par inProfileID et inEventType. La balise du premier élément est ignorée. le système de journalisation des événements le remplacera par le tag eventData.
L'événement est consigné si son importance dépasse le seuil de journalisation spécifié dans LoggingConfiguration. Si l'importance de l'événement n'atteint pas le seuil actuel, il est supprimé, et la fonction renvoie 0
comme ID d'événement obtenu.
Cette variante de l'appel permet à l'appelant de définir n'importe quelle combinaison de EventOptions
:
- lorsque 0 indique par défaut l'heure actuelle au moment de l'appel,
- "racine" section de la source d'événement (source de l'événement et ID de caractéristique) ; Si la valeur est NULL, l'appareil actuel est utilisé par défaut. l'événement est marqué comme relatif à l'appareil qui effectue l'appel ;
- un identifiant d'événement associé pour regrouper les identifiants d'événements ; Lorsque l'ID de l'événement associé est 0, l'événement est marqué comme n'étant associé à aucun autre événement.
- urgence ; non urgent par défaut.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
event_id_t ID de l'événement si celui-ci a été écrit dans le journal (0 dans le cas contraire).
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData )
Consigner un événement via un rappel.
La fonction consigne un événement représenté sous la forme d'un EventWriterFunct et d'un contexte appData
spécifique à l'application. La fonction écrit les métadonnées de l'événement et appelle inEventWriter
avec une référence nl::Weave::TLV::TLVWriter et un contexte inAppData
afin que le code utilisateur puisse émettre les données d'événement directement dans le journal des événements. Cette forme de journalisation des événements minimise la consommation de mémoire, car les données d'événement sont sérialisées directement dans le tampon cible. Les données d'événement DOIVENT contenir des balises de contexte à interpréter dans le schéma identifié par inProfileID
et inEventType
. La balise du premier élément est ignorée. le système de journalisation des événements
le remplacera par le tag eventData.
L'événement est consigné si son importance dépasse le seuil de journalisation spécifié dans LoggingConfiguration. Si l'importance de l'événement n'atteint pas le seuil actuel, il est supprimé, et la fonction renvoie 0
comme ID d'événement obtenu.
Cette variante de l'appel spécifie implicitement toutes les options d'événement par défaut:
- L'événement est horodaté avec l'heure actuelle au moment de l'appel.
- l'événement est marqué comme relatif à l'appareil qui effectue l'appel ;
- l'événement est autonome et ne concerne aucun autre événement ;
- l'événement est marqué comme non urgent,
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
event_id_t ID de l'événement si celui-ci a été écrit dans le journal (0 dans le cas contraire).
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions )
Consigner un événement par rappel, avec des options.
La fonction consigne un événement représenté sous la forme d'un EventWriterFunct et d'un contexte appData
spécifique à l'application. La fonction écrit les métadonnées de l'événement et appelle inEventWriter
avec une référence nl::Weave::TLV::TLVWriter et un contexte inAppData
afin que le code utilisateur puisse émettre les données d'événement directement dans le journal des événements. Cette forme de journalisation des événements minimise la consommation de mémoire, car les données d'événement sont sérialisées directement dans le tampon cible. Les données d'événement DOIVENT contenir des balises de contexte à interpréter dans le schéma identifié par inProfileID
et inEventType
. La balise du premier élément est ignorée. le système de journalisation des événements
le remplacera par le tag eventData.
L'événement est consigné si son importance dépasse le seuil de journalisation spécifié dans LoggingConfiguration. Si l'importance de l'événement n'atteint pas le seuil actuel, il est supprimé, et la fonction renvoie 0
comme ID d'événement obtenu.
Cette variante de l'appel permet à l'appelant de définir n'importe quelle combinaison de EventOptions
:
- lorsque 0 indique par défaut l'heure actuelle au moment de l'appel,
- "racine" section de la source d'événement (source de l'événement et ID de caractéristique) ; Si la valeur est NULL, l'appareil actuel est utilisé par défaut. l'événement est marqué comme relatif à l'appareil qui effectue l'appel ;
- un identifiant d'événement associé pour regrouper les identifiants d'événements ; Lorsque l'ID de l'événement associé est 0, l'événement est marqué comme n'étant associé à aucun autre événement.
- urgence ; non urgent par défaut.
Détails | |||||||||
---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||
Renvoie |
event_id_t ID de l'événement si celui-ci a été écrit dans le journal (0 dans le cas contraire).
|
LogFreeform
event_id_t LogFreeform( ImportanceType inImportance, const char *inFormat, ... )
LogFreeform émet une chaîne de forme libre vers le flux d'événements par défaut.
La chaîne sera encapsulée dans une structure d'événement de débogage, dont la structure sera identique aux autres chaînes enregistrées. L'ID du profil d'événement sera celui d'un événement de débogage Nest, et le type d'événement sera kNestDebug_StringLogEntryEvent
.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
event_id_t ID de l'événement si celui-ci a été écrit dans le journal (0 dans le cas contraire).
|
LookForElementWithTag
WEAVE_ERROR LookForElementWithTag( const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader )
PlainTextWriter
WEAVE_ERROR PlainTextWriter( TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Fonction d'assistance permettant d'émettre un texte de forme libre en tant qu'événement de débogage.
L'événement de débogage est une structure avec une région de journalisation et un texte au format libre.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Valeurs renvoyées |
|
PlainTextWriter
WEAVE_ERROR PlainTextWriter( ::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Fonction d'assistance permettant d'émettre un texte de forme libre en tant qu'événement de débogage.
L'événement de débogage est une structure avec une région de journalisation et un texte au format libre.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Valeurs renvoyées |
|