ProtoOutputStream.MakeToken(Int32, Boolean, Int32, Int32, Int32) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Creare un token.
[Android.Runtime.Register("makeToken", "(IZIII)J", "", ApiSince=30)]
public static long MakeToken(int tagSize, bool repeated, int depth, int objectId, int offset);
[<Android.Runtime.Register("makeToken", "(IZIII)J", "", ApiSince=30)>]
static member MakeToken : int * bool * int * int * int -> int64
Parametri
- tagSize
- Int32
Dimensione in byte del tag di campo codificato. Vengono archiviati solo i 3 bit bassi.
- repeated
- Boolean
Indica se l'oggetto è un campo ripetuto.
- depth
- Int32
Profondità di annidamento dell'oggetto. Vengono archiviati solo i 9 bit bassi.
- objectId
- Int32
Identificatore dell'oggetto utilizzato per il controllo degli errori. Vengono archiviati solo i 19 bit bassi.
- offset
- Int32
Offset del buffer associato all'oggetto . Vengono archiviati tutti i 32 bit.
Valori restituiti
Token a 64 bit contenente le dimensioni del tag mascherate, il flag ripetuto, la profondità mascherata, l'identificatore dell'oggetto mascherato e l'offset.
- Attributi
Commenti
I bit da 61 a 63 contengono le dimensioni del tag; bit 60 contiene il flag ripetuto; i bit da 51 a 59 contengono la profondità; i bit da 32 a 50 contengono l'identificatore dell'oggetto; e i bit da 0 a 31 contengono l'offset. Bit 0 è il bit meno significativo.
La profondità e l'identificatore dell'oggetto sono mascherati rispettivamente a 9 e 19 bit. I valori archiviati sono compresi tra 0 e 511 e da 0 a 524287. I bit più alti vengono scartati; questo metodo non convalida i valori forniti.
Questi campi descrivono un token di oggetto interno, non un tag di campo protobuf. Usare il token restituito da Start(Int64) con End(Int64) durante la scrittura di messaggi annidati.
Vedere l'implementazione AOSP di ProtoStream.makeToken per il layout del token.