nl:: Weave:: Profiles:: DataManagement_Legacy
Cet espace de noms inclut toutes les interfaces de Weave pour le profil Weave Data Management (WDM) qui sont sur le point d'être obsolètes.
Résumé
Typedefs |
|
---|---|
TopicIdentifier
|
typedefuint64_t
Identifiant du thème. |
Fonctions |
|
---|---|
CheckTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
|
bool
|
CheckWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
|
bool
Cochez un tag spécifique à WDM.
|
CloseDataListElement(nl::Weave::TLV::TLVReader & aReader)
|
Arrête la lecture d'un élément de liste de données WDM.
|
CloseList(nl::Weave::TLV::TLVReader & aReader)
|
Arrêtez la lecture d'un chemin d'accès WDM ou d'une liste de données.
|
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
|
Encodez un chemin WDM à l'aide de tags obsolètes et d'un ID d'instance sous forme de nombre entier.
|
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
|
Encodez un chemin WDM avec des tags obsolètes et un ID d'instance de chaîne.
|
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
|
Encodez un chemin WDM avec un ID d'instance de profil sous forme d'entier.
|
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ...)
|
Encodez un chemin WDM avec un ID d'instance de tableau d'octets.
|
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
|
Encodez un chemin WDM avec un ID d'instance de chaîne.
|
EndDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
|
Terminez l'écriture d'un élément de liste de données.
|
EndEncodePath(TLVWriter & aWriter, TLVType & mOuterContainer, WEAVE_ERROR mError)
|
|
EndList(nl::Weave::TLV::TLVWriter & aWriter)
|
Terminez l'écriture d'une liste de chemins d'accès ou d'une liste de données.
|
EndList(ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter)
|
Terminez l'écriture d'une liste de chemins d'accès ou d'une liste de données.
|
IsPublisherSpecific(const TopicIdentifier & aTopicId)
|
bool
Vérifiez si un ID de thème est spécifique à un éditeur.
|
OpenDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader)
|
Commencez à lire une liste de données.
|
OpenDataListElement(nl::Weave::TLV::TLVReader & aReader, nl::Weave::TLV::TLVReader & aPathReader, uint64_t & aVersion)
|
Commencez à lire un élément de liste de données.
|
OpenPathList(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVReader & aReader)
|
Commencez à lire une liste de chemins.
|
PublisherSpecificTopicId(void)
|
Générez de zéro un ID de sujet propre à l'éditeur.
|
SendStatusReport(ExchangeContext *aExchangeCtx, StatusReport & aStatus)
|
|
StartDataList(nl::Weave::TLV::TLVWriter & aWriter)
|
Commencez à écrire une liste de données.
|
StartDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVWriter & aWriter)
|
Commencez à écrire une liste de données dans un objet ReferencedTLVData donné.
|
StartDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
|
Commencez à écrire un élément de liste de données.
|
StartEncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, TLVType & mOuterContainer, TLVType & mPath)
|
|
StartPathList(nl::Weave::TLV::TLVWriter & aWriter)
|
Commencez à écrire une liste de chemins d'accès.
|
TxnResponseHandler(ExchangeContext *anExchangeCtx, const IPPacketInfo *anAddrInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
|
void
|
TxnTimeoutHandler(ExchangeContext *anExchangeCtx)
|
void
|
ValidateTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
|
|
ValidateWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
|
Vérifiez qu'un élément TLV en cours de lecture possède la balise WDM attendue.
|
Classes |
|
---|---|
nl:: |
La classe Binding gère l'état des communications pour le compte d'une entité d'application à l'aide de Weave. |
nl:: |
Classe abstraite contenant les définitions des méthodes de confirmation et d'indication requises par le client WDM. |
nl:: |
Classe auxiliaire utilisée lorsque la prise en charge des abonnements et des notifications est souhaitée sur un client WDM. |
nl:: |
Classe de base abstraite pour les clients WDM spécifiques à une application. |
nl:: |
Classe de base abstraite pour les éditeurs WDM spécifiques aux applications. |
nl:: |
La classe auxiliaire abstraite ProfileDatabase. |
nl:: |
Classe de moteur de protocole WDM. |
nl:: |
Classe abstraite contenant les définitions des méthodes de confirmation et de notification requises par l'éditeur WDM. |
Énumérations
@103
@103
Propriétés | |
---|---|
kStatus_CancelSuccess
|
Cet ancien code d'état signifie qu'un abonnement a bien été résilié. Ce code d'état signifie qu'un abonnement a bien été résilié. |
kStatus_IllegalReadRequest
|
Cet ancien code d'état signifie que le nœud qui demande la lecture d'un élément de données particulier n'est pas autorisé à le faire. Ce code d'état signifie que le nœud qui demande la lecture d'un élément de données particulier n'est pas autorisé à le faire. |
kStatus_IllegalWriteRequest
|
Cet ancien code d'état signifie que le nœud qui demande l'écriture d'un élément de données particulier n'est pas autorisé à le faire. Ce code d'état signifie que le nœud qui envoie une requête d'écriture d'un élément de données particulier n'est pas autorisé à le faire. |
kStatus_InvalidPath
|
Cet ancien code d'état signifie qu'un chemin de la liste de chemins d'une trame de requête de vue ou de mise à jour ne correspondait pas au schéma résident du nœud du répondant. Ce code d'état signifie qu'un chemin de la liste de chemins d'une trame de requête de vue ou de mise à jour ne correspondait pas au schéma résident du nœud du répondant. |
kStatus_InvalidVersion
|
Cet ancien code d'état signifie que la version des données incluses dans une demande de mise à jour ne correspondait pas à la version la plus récente sur l'éditeur. La mise à jour n'a donc pas pu être appliquée. Ce code d'état signifie que la version des données incluses dans une demande de mise à jour ne correspondait pas à la version la plus récente sur l'éditeur. La mise à jour n'a donc pas pu être appliquée. |
kStatus_UnknownTopic
|
Cet ancien code d'état signifie que l'identifiant de sujet fourni dans une demande d'annulation ou une notification ne correspond à aucun abonnement existant sur le nœud destinataire. Ce code d'état signifie que l'identifiant de sujet fourni dans une demande d'annulation ou une notification ne correspond à aucun abonnement existant sur le nœud destinataire. |
kStatus_UnsupportedSubscriptionMode
|
Cet ancien code d'état signifie que le mode d'abonnement demandé n'est pas compatible avec l'appareil destinataire. Ce code d'état signifie que le mode d'abonnement demandé n'est pas compatible avec l'appareil destinataire. |
@166
@166
les tailles de pool et de table WDM.
WDM définit divers pools et tables nécessaires à son fonctionnement, comme suit.
Pools de transactions client:
- kViewPoolSize
- kSubscribePoolSize
- kCancelSubscriptionPoolSize
- kUpdatePoolSize
Pools de transactions d'éditeur:
- kNotifyPoolSize
Tables du moteur de protocoles:
- kTransactionTableSize
- kBindingTableSize
Tables relatives aux abonnements:
- kNotifierTableSize (client uniquement)
- kSubscriptionMgrTableSize (éditeur uniquement)
Notez qu'il s'agit de quantités configurables et que les valeurs par plate-forme apparaissent dans le fichier WeaveConfig.h associé.
Propriétés | |
---|---|
kBindingTableSize
|
Il s'agit de la taille par défaut de la table de liaison dans le moteur de protocole WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE. |
kCancelSubscriptionPoolSize
|
Il s'agit de la taille par défaut du pool de transactions des demandes d'annulation d'abonnement pour un client WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE. |
kNotifierTableSize
|
Il s'agit de la taille par défaut du tableau des notifications pour les clients WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE. |
kNotifyPoolSize
|
Il s'agit de la taille par défaut du pool de transactions des demandes de notification pour un éditeur WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE. |
kSubscribePoolSize
|
Il s'agit de la taille par défaut du pool de transactions des demandes d'abonnement pour un client WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE. |
kSubscriptionMgrTableSize
|
Il s'agit de la taille par défaut du tableau des abonnements pour les éditeurs WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE. |
kTransactionTableSize
|
Il s'agit de la taille par défaut de la table des transactions dans le moteur de protocoles WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE. |
kUpdatePoolSize
|
Il s'agit de la taille par défaut du pool de transactions de requête de mise à jour pour un client WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE. |
kViewPoolSize
|
Il s'agit de la taille par défaut du pool de transactions de requête d'affichage pour un client WDM. Cette valeur peut être configurée via WEAVE_CONFIG_WDM_VIEW_POOL_SIZE. |
@167
@167
Types de messages du profil WDM.
Ces valeurs sont indiquées dans la spécification de gestion des données.
REMARQUE ! Depuis le premier trimestre 2015, les types de messages utilisés dans les versions précédentes de WDM sont obsolètes et de nouveaux types de messages ont été définis, ce qui reflète une modification suffisante avec les détails antérieurs de package et d'analyse pour justifier une interruption de service.
Propriétés | |
---|---|
kMsgType_CancelSubscriptionRequest
|
Message de demande d'annulation d'abonnement. |
kMsgType_CancelSubscriptionRequest_Deprecated
|
obsolète |
kMsgType_NotifyRequest
|
Envoyer le message de demande de notification. |
kMsgType_NotifyRequest_Deprecated
|
obsolète |
kMsgType_SubscribeRequest
|
Message de demande d'abonnement. |
kMsgType_SubscribeRequest_Deprecated
|
obsolète |
kMsgType_SubscribeResponse
|
Message de réponse "S'abonner". |
kMsgType_SubscribeResponse_Deprecated
|
obsolète |
kMsgType_UpdateRequest
|
Modifier le message de demande. |
kMsgType_UpdateRequest_Deprecated
|
obsolète |
kMsgType_ViewRequest
|
Afficher le message de requête. |
kMsgType_ViewRequest_Deprecated
|
obsolète |
kMsgType_ViewResponse
|
Afficher le message de réponse. |
kMsgType_ViewResponse_Deprecated
|
obsolète |
@168
@168
Diverses constantes spécifiques à WDM.
Propriétés | |
---|---|
kDefaultBindingTableIndex
|
Index de la liaison par défaut dans une table de liaison de moteur de protocole comportant plusieurs entrées. |
kInstanceIdNotSpecified
|
Dans les appels nécessitant une spécification d'instance de profil, indique "none". Cela signifie généralement qu'une seule instance du profil est présente sur l'entité en question. |
kResponseTimeoutNotSpecified
|
Dans les méthodes demandant une transaction, indique que l'appelant a refusé de spécifier un délai d'inactivité. En général, cela signifie qu'une valeur par défaut doit être utilisée. |
kTransactionIdNotSpecified
|
Dans les méthodes et les structures de données qui acceptent un ID de transaction, indique "none" (aucun). ou une valeur de caractère générique. |
kVersionNotSpecified
|
Dans les appels nécessitant la spécification d'une version de données, indique "aucune version spécifique". |
kWeaveTLVControlByteLen
|
Longueur d'un octet de contrôle TLV, utilisée dans les méthodes compatibles qui encodent les structures WDM dans TLV. |
kWeaveTLVTagLen
|
Longueur standard en octets d'un tag TLV complet, utilisée dans les méthodes d'assistance qui encodent les structures WDM dans TLV. |
@169
@169
Codes d'état spécifiques à WDM.
Propriétés | |
---|---|
kStatus_CancelSuccess
|
Cet ancien code d'état signifie qu'un abonnement a bien été résilié. Ce code d'état signifie qu'un abonnement a bien été résilié. |
kStatus_IllegalReadRequest
|
Cet ancien code d'état signifie que le nœud qui demande la lecture d'un élément de données particulier n'est pas autorisé à le faire. Ce code d'état signifie que le nœud qui demande la lecture d'un élément de données particulier n'est pas autorisé à le faire. |
kStatus_IllegalWriteRequest
|
Cet ancien code d'état signifie que le nœud qui demande l'écriture d'un élément de données particulier n'est pas autorisé à le faire. Ce code d'état signifie que le nœud qui envoie une requête d'écriture d'un élément de données particulier n'est pas autorisé à le faire. |
kStatus_InvalidPath
|
Cet ancien code d'état signifie qu'un chemin de la liste de chemins d'une trame de requête de vue ou de mise à jour ne correspondait pas au schéma résident du nœud du répondant. Ce code d'état signifie qu'un chemin de la liste de chemins d'une trame de requête de vue ou de mise à jour ne correspondait pas au schéma résident du nœud du répondant. |
kStatus_InvalidVersion
|
Cet ancien code d'état signifie que la version des données incluses dans une demande de mise à jour ne correspondait pas à la version la plus récente sur l'éditeur. La mise à jour n'a donc pas pu être appliquée. Ce code d'état signifie que la version des données incluses dans une demande de mise à jour ne correspondait pas à la version la plus récente sur l'éditeur. La mise à jour n'a donc pas pu être appliquée. |
kStatus_UnknownTopic
|
Cet ancien code d'état signifie que l'identifiant de sujet fourni dans une demande d'annulation ou une notification ne correspond à aucun abonnement existant sur le nœud destinataire. Ce code d'état signifie que l'identifiant de sujet fourni dans une demande d'annulation ou une notification ne correspond à aucun abonnement existant sur le nœud destinataire. |
kStatus_UnsupportedSubscriptionMode
|
Cet ancien code d'état signifie que le mode d'abonnement demandé n'est pas compatible avec l'appareil destinataire. Ce code d'état signifie que le mode d'abonnement demandé n'est pas compatible avec l'appareil destinataire. |
@170
@170
les tags de protocole de gestion des données.
Le protocole de gestion des données définit un certain nombre de tags à utiliser dans la représentation TLV des données de profil.
Comme d'habitude, il existe des problèmes de compatibilité entre le nouveau et l'ancien WDM. Auparavant, tous ces tags étaient appliqués comme spécifiques à un profil, ce qui demandait beaucoup d'espace. Nous utilisons désormais des tags de contexte lorsque cela est possible, mais nous devons conserver les anciens à portée de main (et disposer d'un mécanisme d'encodage des chemins avec ces tags), le cas échéant.
La balise kTag_WDMDataListElementData n'était pas utilisée dans les versions précédentes et a été complètement ignorée par le code. Il n'est donc pas nécessaire de fournir une version obsolète.
Propriétés | |
---|---|
kTag_WDMDataList
|
L'élément est une liste de structures contenant un chemin d'accès, une version facultative et des éléments de données. Type de tag: type d'élément spécifique au profil: tableau Disposition: premier niveau |
kTag_WDMDataListElementData
|
L'élément représente les données vers lesquelles pointe le chemin d'accès et qui possède la version donnée. Type de tag: Type d'élément spécifique au contexte: Toutes disposition: obligatoire |
kTag_WDMDataListElementData_Deprecated
|
Obsolète. Type de tag: Type d'élément spécifique au contexte: Toutes disposition: obligatoire |
kTag_WDMDataListElementPath
|
L'élément correspond au chemin d'accès d'un élément de liste de données. Type de balise: Type d'élément spécifique au contexte: disposition du chemin: obligatoire |
kTag_WDMDataListElementPath_Deprecated
|
Obsolète. Type de tag: Type d'élément spécifique au profil: disposition du chemin: obligatoire |
kTag_WDMDataListElementVersion
|
L'élément est le composant version d'un élément de liste de données. Type de balise: spécifique au contexte Type d'élément: entier Disposition: obligatoire |
kTag_WDMDataListElementVersion_Deprecated
|
Obsolète. Type de tag: spécifique au profil Type d'élément: entier Disposition: obligatoire |
kTag_WDMPathArrayIndexSelector
|
L'élément de chemin d'accès correspond à un tableau du schéma, et l'élément d'entier contenu doit être utilisé comme index dans ce tableau. Type de tag: type d'élément spécifique au profil: nombre entier Disposition: facultatif |
kTag_WDMPathArrayValueSelector
|
L'élément de chemin correspond à un tableau du schéma et l'élément encapsulé doit être utilisé comme sélecteur d'enregistrement. Type de tag: Type d'élément spécifique au profil: Structure Disposition: facultatif |
kTag_WDMPathList
|
L'élément est une liste de chemins d'accès TLV. Type de tag: type d'élément spécifique au profil: tableau Disposition: premier niveau |
kTag_WDMPathProfile
|
L'élément est une structure utilisée pour commencer un chemin et contient les informations de profil au vu desquelles les balises du chemin doivent être interprétées. Type de tag: Type d'élément spécifique au profil: Structure Disposition: obligatoire |
kTag_WDMPathProfileId
|
Il s'agit d'un composant ID de profil de l'élément de profil de chemin qui commence par un chemin TLV. Type de balise: spécifique au contexte Type d'élément: entier Disposition: obligatoire |
kTag_WDMPathProfileId_Deprecated
|
Obsolète. Type de tag: spécifique au profil Type d'élément: entier Disposition: obligatoire |
kTag_WDMPathProfileInstance
|
L'élément est une instance de profil, qui peut suivre l'ID de profil dans un chemin d'accès TLV. Notez qu'un nœud peut ou non avoir plusieurs instances d'un profil particulier et, lorsqu'il n'y en a qu'une, cet élément peut être omis. Type de tag: Type d'élément spécifique au contexte: N'importe quelle disposition: facultatif |
kTag_WDMPathProfileInstance_Deprecated
|
Obsolète. Type de tag: Type d'élément spécifique au profil: Toute disposition: facultatif |
@171
@171
ID de sujet distingué.
Il existe trois ID de thèmes distincts qui vous intéressent. Ils sont tous trois au format "spécifique à l'éditeur".
Propriétés | |
---|---|
kAnyTopicId
|
Il s'agit d'un identifiant de sujet à caractère générique. |
kTopicIdNotSpecified
|
Cette valeur spéciale permet d'exprimer un ID de sujet non valide ou générique. |
kTopicIdPublisherSpecificMask
|
Il sert de masque pour créer ou décomposer un identifiant de topci. |
WeaveTransportOption
WeaveTransportOption
Options de transport WDM
Ces options de transport s'excluent mutuellement pour WDM.
Propriétés | |
---|---|
kTransport_TCP
|
Le transport sous-jacent est TCP. La liaison peut être effectuée à l'aide du gestionnaire de services ou directement à l'aide de la couche de message. |
kTransport_UDP
|
Le transport sous-jacent est exclusivement UDP. |
kTransport_WRMP
|
Le transport sous-jacent est exclusivement UDP, mais avec la "couche de prise en charge des applications" et améliorer la fiabilité. |
Typedefs
TopicIdentifier
uint64_t TopicIdentifier
Identifiant du thème.
Les identifiants de sujet sont des quantités de 64 bits avec deux utilisations/sémantiques associées. Tout d'abord, ils peuvent être utilisés comme un raccourci conventionnel pour un ensemble connu de chemins, par exemple la "Détecteur de fumée Nest". Les ID de sujet utilisés de cette manière, comme les identifiants de profil, doivent contenir un code fournisseur qui empêche les ID de sujet choisis de manière autonome par des fournisseurs disparates d'entrer en conflit, comme suit:
bits 48 à 63 | bits 0 à 47 |
ID fournisseur | Numéro du thème |
WeaveVendorIdentifiers.hpp
Fonctions
CheckTLVType
bool CheckTLVType( nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader )
Vérifiez qu'un élément TLV en cours de lecture présente le type TLV attendu.
Comparez un type de TLV donné au type d'élément au niveau de la tête d'un lecteur TLV.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
"true" si le TLVType de l'élément et aType correspondent.
|
WeaveTLVTypes.h
CheckWDMTag
bool CheckWDMTag( uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader )
Cochez un tag spécifique à WDM.
Comparez le numéro d'une balise spécifique au WDM (.../data-management/DMConstants.h) à celui figurant en tête d'un lecteur TLV.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
true iff aReader.GetTag() génère une balise qui correspond à l'un des formats de tag attendus pour le numéro de tag donné.
|
CloseDataListElement
WEAVE_ERROR CloseDataListElement( nl::Weave::TLV::TLVReader & aReader )
Arrête la lecture d'un élément de liste de données WDM.
Cette méthode suppose que l'élément en question fait partie d'une liste de données WDM et qu'il transmet donc kTLVType_Array à SortContainer().
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de quitter un conteneur.
|
CloseList
WEAVE_ERROR CloseList( nl::Weave::TLV::TLVReader & aReader )
Arrêtez la lecture d'un chemin d'accès WDM ou d'une liste de données.
Cette méthode suppose que la liste en question est l'élément TLV le plus élevé et transmet donc kTLVType_Sructure à SortContainer().
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de quitter un conteneur.
|
EncodeDeprecatedPath
WEAVE_ERROR EncodeDeprecatedPath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ... )
Encodez un chemin WDM à l'aide de tags obsolètes et d'un ID d'instance sous forme de nombre entier.
Remarque:Encodez un chemin à l'aide du jeu de tags obsolètes accepté par le service avant la version 2.0 de Weave. Cette version de la méthode utilise un identifiant d'instance numérique. Cette méthode démarre un conteneur avec ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile), puis insère l'ID de profil avec ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_Deprecated). Il insère ensuite l'ID d'instance avec ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_Deprecated). Il s'agit de l'une des versions obsolètes pour l'encodage d'un tracé. Les nouvelles conceptions doivent éviter d'utiliser ce format.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant une incapacité à mettre en forme le chemin donné.
|
EncodeDeprecatedPath
WEAVE_ERROR EncodeDeprecatedPath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ... )
Encodez un chemin WDM avec des tags obsolètes et un ID d'instance de chaîne.
Remarque:Encodez un chemin à l'aide de l'ensemble de tags obsolète (voir DMConstants.h). Cette version de la méthode utilise une chaîne d'ID d'instance. Cette méthode démarre un conteneur avec ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile), puis insère l'ID de profil avec ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_Deprecated). Il insère ensuite l'ID d'instance avec ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_Deprecated). Il s'agit de l'une des versions obsolètes pour l'encodage d'un tracé. Les nouvelles conceptions doivent éviter d'utiliser ce format.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant une incapacité à mettre en forme le chemin donné.
|
EncodePath
WEAVE_ERROR EncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ... )
Encodez un chemin WDM avec un ID d'instance de profil sous forme d'entier.
Remarque:Écrivez un chemin d'accès TLV du type utilisé pour la gestion des données, en particulier une désignation de profil placée au début afin de permettre l'interprétation des éléments de chemin suivants. Cette version de la méthode utilise un ID d'instance de profil sous forme d'entier.
Cette méthode insère l'ID d'instance à l'aide de ContextTag(kTag_WDMPathProfileInstance), qui est la version la plus récente pour encoder un chemin d'accès.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant une incapacité à mettre en forme le chemin donné.
|
EncodePath
WEAVE_ERROR EncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ... )
Encodez un chemin WDM avec un ID d'instance de tableau d'octets.
Remarque:Écrivez un chemin d'accès TLV du type utilisé pour la gestion des données, en particulier une désignation de profil placée au début afin de permettre l'interprétation des éléments de chemin suivants. Cette version de la méthode utilise un ID d'instance de profil de tableau d'octets ainsi qu'une longueur.
Cette méthode insère l'ID d'instance à l'aide de ContextTag(kTag_WDMPathProfileInstance), qui est la version la plus récente pour encoder un chemin d'accès.
Détails | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant une incapacité à mettre en forme le chemin donné.
|
EncodePath
WEAVE_ERROR EncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ... )
Encodez un chemin WDM avec un ID d'instance de chaîne.
Remarque:Écrivez un chemin d'accès TLV du type utilisé pour la gestion des données, en particulier une désignation de profil placée au début afin de permettre l'interprétation des éléments de chemin suivants. Cette version de la méthode utilise un ID d'instance de profil de chaîne.
Cette méthode insère l'ID d'instance à l'aide de ContextTag(kTag_WDMPathProfileInstance), qui est la version la plus récente pour encoder un chemin d'accès.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant une incapacité à mettre en forme le chemin donné.
|
EndDataListElement
WEAVE_ERROR EndDataListElement( nl::Weave::TLV::TLVWriter & aWriter )
Terminez l'écriture d'un élément de liste de données.
Écrivez la valeur TLV pour la fin d'un élément de liste de données WDM. Notez que cela transmet automatiquement un type de kTLVType_Array à l'appel EndContainer(), en supposant que nous fermons toujours un élément de liste.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de mettre fin à un conteneur.
|
EndEncodePath
WEAVE_ERROR EndEncodePath( TLVWriter & aWriter, TLVType & mOuterContainer, WEAVE_ERROR mError )
EndList
WEAVE_ERROR EndList( nl::Weave::TLV::TLVWriter & aWriter )
Terminez l'écriture d'une liste de chemins d'accès ou d'une liste de données.
Écrivez la valeur TLV à la fin d'un chemin d'accès WDM ou d'une liste de données. Finalisez également l'écriture.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de mettre fin à un conteneur.
|
EndList
WEAVE_ERROR EndList( ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter )
Terminez l'écriture d'une liste de chemins d'accès ou d'une liste de données.
Écrivez la valeur TLV à la fin d'un chemin d'accès WDM ou d'une liste de données. Finalisez également l'écriture. Dans ce cas, l'objet ReferencedTLVData dans lequel la valeur TLV est écrite est transmis et modifié pour refléter la quantité de données écrites.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de mettre fin à un conteneur.
|
IsPublisherSpecific
bool IsPublisherSpecific( const TopicIdentifier & aTopicId )
Vérifiez si un ID de thème est spécifique à un éditeur.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
"true" si l'ID du sujet est spécifique à l'éditeur, "false" dans le cas contraire
|
OpenDataList
WEAVE_ERROR OpenDataList( ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader )
Commencez à lire une liste de données.
À partir d'un nouveau lecteur et d'une liste de données, commencez à lire la liste et validez les balises et les types initialement rencontrés au cours du processus. Si tout se passe comme prévu, le lecteur s'arrête après avoir saisi le conteneur de liste.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant un échec lors de l'ouverture de la liste de données et/ou de la validation des balises et des types concernés.
|
OpenDataListElement
WEAVE_ERROR OpenDataListElement( nl::Weave::TLV::TLVReader & aReader, nl::Weave::TLV::TLVReader & aPathReader, uint64_t & aVersion )
Commencez à lire un élément de liste de données.
À partir d'un lecteur positionné sur un élément de la liste de données, commencez à lire l'élément et validez les balises et les types initialement rencontrés au cours du processus. Si tout se passe comme prévu, le lecteur est positionné au niveau des données des éléments de données, et le lecteur de chemin d'entrée et de sortie est positionné sur le tracé correspondant.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
WEAVE_NO_ERROR en cas de réussite ou WEAVE_ERROR associé à l'ouverture et à la lecture de l'élément de la liste de données.
|
OpenPathList
WEAVE_ERROR OpenPathList( ReferencedTLVData & aPathList, nl::Weave::TLV::TLVReader & aReader )
Commencez à lire une liste de chemins.
À partir d'un nouveau lecteur et d'une liste de chemins d'accès, commencez à lire la liste et validez les balises et les types initialement rencontrés au cours du processus. Si tout se passe comme prévu, le lecteur s'arrête après avoir saisi le conteneur de liste.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR en cas de réussite ; Sinon, une erreur WEAVE_ERROR reflétant un échec lors de l'ouverture de la liste des chemins et/ou de la validation des tags et types pertinents.
|
PublisherSpecificTopicId
TopicIdentifier PublisherSpecificTopicId( void )
Générez de zéro un ID de sujet propre à l'éditeur.
Détails | |
---|---|
Renvoie |
le nouvel identifiant du sujet.
|
SendStatusReport
WEAVE_ERROR SendStatusReport( ExchangeContext *aExchangeCtx, StatusReport & aStatus )
StartDataList
WEAVE_ERROR StartDataList( nl::Weave::TLV::TLVWriter & aWriter )
Commencez à écrire une liste de données.
Saisissez la valeur TLV au début d'une liste de données WDM, par exemple comme argument principal d'une UpdateRequest().
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de démarrer un conteneur.
|
StartDataList
WEAVE_ERROR StartDataList( ReferencedTLVData & aDataList, nl::Weave::TLV::TLVWriter & aWriter )
Commencez à écrire une liste de données dans un objet ReferencedTLVData donné.
Écrivez le TLV au début d'une liste de données WDM. Dans ce cas, nous supposons que nous écrivons la liste de données dans une structure de données TLV référencée. Le rédacteur est supposé être non initialisé ou, dans tous les cas, sera initialisé pour pointer vers l'objet donné.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de démarrer un conteneur.
|
StartDataListElement
WEAVE_ERROR StartDataListElement( nl::Weave::TLV::TLVWriter & aWriter )
Commencez à écrire un élément de liste de données.
Écrivez le TLV pour le début d'un élément de liste de données WDM.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de démarrer un conteneur.
|
StartEncodePath
WEAVE_ERROR StartEncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, TLVType & mOuterContainer, TLVType & mPath )
StartPathList
WEAVE_ERROR StartPathList( nl::Weave::TLV::TLVWriter & aWriter )
Commencez à écrire une liste de chemins d'accès.
Écrivez le TLV au début d'une liste de chemins d'accès WDM, par exemple comme argument principal d'un ViewRequest().
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, renvoyez une erreur WEAVE_ERROR reflétant l'impossibilité de démarrer un conteneur.
|
TxnResponseHandler
void TxnResponseHandler( ExchangeContext *anExchangeCtx, const IPPacketInfo *anAddrInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg )
TxnTimeoutHandler
void TxnTimeoutHandler( ExchangeContext *anExchangeCtx )
ValidateTLVType
WEAVE_ERROR ValidateTLVType( nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader )
Vérifiez qu'un élément TLV en cours de lecture possède le type TLV attendu.
Comparez un type de TLV donné au type d'élément en tête d'un lecteur TLV et renvoyez une erreur en l'absence de correspondance.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR s'il existe une correspondance ou WEAVE_ERROR_WRONG_TLV_TYPE dans le cas contraire.
|
WeaveTLVTypes.h
ValidateWDMTag
WEAVE_ERROR ValidateWDMTag( uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader )
Vérifiez qu'un élément TLV en cours de lecture possède la balise WDM attendue.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite. Sinon, WEAVE_ERROR_INVALID_TLV_TAG, si le tag ne correspond pas au numéro de tag donné lorsqu'il est interprété comme un tag WDM.
|