Tampon pour stocker les données du tenseur de chaîne.
Les valeurs sont stockées sous forme de tableau de TF_TString
, enveloppé en interne avec tensorflow::tstring
, qui est essentiellement une version portable de std::string
.
Les données du buffer doivent être initialisées une seule fois, en appelant ERROR(/#init(NdArray, Function))
, et le buffer doit avoir été alloué avec suffisamment d'espace (utilisez ERROR(/#computeSize(NdArray, Function))
en priorité pour savoir exactement combien d'octets sont nécessaires pour stocker les données).
Une fois ses données initialisées, le tampon est en lecture seule car il n'est pas possible de modifier une valeur en toute sécurité sans réinitialiser l'ensemble des données.
Méthodes publiques
statique <T> long | calculateSize ( ByteSequenceProvider <?> byteSequenceProvider) Calcule le nombre d'octets nécessaires pour stocker les données données dans un tampon de chaîne. |
DataBuffer <octet[]> | copyTo ( DataBuffer <byte[]> dst, taille longue) Écrivez les références des objets du tableau source dans ce tampon. |
octet[] | getObject (index long) |
<T> nul | |
booléen | estReadOnly () |
DataBuffer <octet[]> | setObject (valeurs d'octet [], index long) |
long | taille () |
DataBuffer <octet[]> | tranche (index long, taille longue) |
Méthodes héritées
Méthodes publiques
public static long computingSize ( ByteSequenceProvider <?> byteSequenceProvider)
Calcule le nombre d'octets nécessaires pour stocker les données données dans un tampon de chaîne.
Paramètres
fournisseur de séquence d'octets | produit des séquences d'octets |
---|
Retour
- nombre d'octets requis pour stocker les données.
public DataBuffer <byte[]> copyTo ( DataBuffer <byte[]> dst, taille longue)
Écrivez les références des objets du tableau source dans ce tampon.
S'il y a plus de valeurs à copier que la taille du tampon de destination, c'est-à-dire size > dst.size()
, alors aucune valeur n'est transférée et une BufferOverflowException est levée. D'un autre côté, s'il y a plus de valeurs à copier que la taille du tampon source, c'est-à-dire > src.size()
, alors une BufferUnderfloatException est levée.
Sinon, cette méthode copie les valeurs n = size
de ce tampon dans le tampon de destination.
Paramètres
heure d'été | le tampon de destination dans lequel les valeurs sont copiées ; ne doit pas être ce tampon |
---|---|
taille | nombre de valeurs à copier dans le tampon de destination |
Retour
- ce tampon
public byte[] getObject (index long)
public void init ( ByteSequenceProvider <T> byteSequenceProvider)
Initialisez les données de ce buffer.
Bien qu'elle ne soit pas appliquée par programme, il est obligatoire que cette méthode ne soit appelée qu'une seule fois après la création du tampon. Le tampon doit avoir été alloué selon le même ensemble de données, en appelant le priorité ERROR(/#computeSize(NdArray, Function))
pour s'assurer qu'il y a suffisamment d'espace pour le stocker.
Paramètres
fournisseur de séquence d'octets | produit des séquences d'octets à utiliser comme données tensorielles |
---|