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
DataBuffer <octet[]> | copyTo ( DataBuffer <byte[]> dst, taille longue) Écrivez les références des objets du tableau source dans ce tampon. |
booléen | est égal (Obj objet) |
int | |
DataBuffer <octet[]> | lire (T[] dst, décalage int, longueur int) Lisez les références des objets de ce tampon dans le tableau de destination. |
DataBuffer <octet[]> | écrire (T[] src, int offset, int length) Méthode de put en bloc, utilisant des tableaux int. |
booléen | est égal à (Objet arg0) |
Classe finale<?> | obtenirClasse () |
int | Code de hachage () |
vide final | notifier () |
vide final | notifierTous () |
Chaîne | àChaîne () |
vide final | attendre (long arg0, int arg1) |
vide final | attendez (long arg0) |
vide final | attendez () |
résumé <R> R | |
DataBuffer abstrait <octet[]> | copyTo ( DataBuffer <byte[]> dst, taille longue) Écrivez les références des objets du tableau source dans ce tampon. |
booléen abstrait | est égal (Obj objet) Vérifie l'égalité entre les tampons de données. |
octet abstrait[] | getObject (index long) Lit la valeur à l'index donné. |
booléen abstrait | estReadOnly () Indique si ce tampon est soutenu ou non par un tableau accessible. |
DataBuffer abstrait <octet[]> | étroit (taille longue) Crée un nouveau tampon dont le contenu est une sous-séquence partagée du contenu de ce tampon, dont la taille est définie sur la valeur donnée. |
DataBuffer abstrait <octet[]> | décalage (index long) Crée un nouveau tampon dont le contenu est une sous-séquence partagée du contenu de ce tampon, en commençant à l'index donné. |
DataBuffer abstrait <octet[]> | lire (T[] heure d'été) Lisez les références des objets de ce tampon dans le tableau de destination. |
DataBuffer abstrait <octet[]> | lire (T[] dst, décalage int, longueur int) Lisez les références des objets de ce tampon dans le tableau de destination. |
DataBuffer abstrait <octet[]> | setObject (valeur octet[], index long) Écrit la valeur donnée dans ce tampon à l'index donné. |
abstrait long | taille () Taille du buffer, en éléments. |
DataBuffer abstrait <octet[]> | tranche (index long, taille longue) Crée un nouveau tampon dont le contenu est une sous-séquence partagée du contenu de ce tampon, commençant à l'index donné et de la taille donnée. |
abstrait DataBufferWindow <? étend DataBuffer <T>> | fenêtre (taille longue) Crée un DataBufferWindow qui fournit une vue partielle de ce tampon. |
DataBuffer abstrait <octet[]> | écrire (T[] src) Écrivez les références des objets du tableau source dans ce tampon. |
DataBuffer abstrait <octet[]> | écrire (T[] src, int offset, int length) Méthode de put en bloc, utilisant des tableaux int. |
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 |
---|