Table des matières du Kit Réseau | Index du Kit Réseau |
Déclarée dans : be/net/NutBuffer.h
Bibliothèque : libnetapi.so
Allocation: Constructeur uniquement
Après création d'un BNetBuffer, vous pouvez y ajouter des données en utilisant une série de fonctions conçues pour ajouter différents types de données. Par exemple, pour créer un buffer et y placer l'entier long 2 suivi de la chaîne "Ceci est un test.", vous pourrier faire cecei :
BNetBuffer buffer(512); buffer.AppendInt32(2); buffer.AppendString("Ceci est un test.");La fonction AppendInt32() gère automatiquement la conversion de la valeur en ordre d'octet réseau (network byte order), à l'instar de toutes les fonctions AppendXXX() pour les valeurs entières (16/32/64 bits, signée ou non signée). De façon analogue, les fonctions RemoveXXX() extraient les données d'un buffer et effectuent les manipulations sur l'ordre des octets.
|
Créé un BNetBuffer. La première forme créée un nouveau buffer capable de stocker jusqu'à size octets de données. Le buffer ainsi instancié est initialement vide..
La deuxième forme créé un nouveau buffer qui est une copie conforme de l'instance BNetBuffer spécifiée par l'argument from, incluant toute donnée déjà présente dans le buffer. La troisième forme permet de reconstruire un BNetBuffer archivé.
|
Un destructeur typique.
|
Ajoute les données spécifiées à la fin du buffer. Les valeurs entières sont automatiquement converties en network byte order (contrairement aux floats et aux doubles, ainsi que les valeurs dans les structures ajoutées via AppendData()).
Les Strings sont ajoutées comme chaines de caractères terminées par un un NULL.
AppendData() copie size octet en provenance du bufer pointé par data.
CODES DE RETOUR
B_OK. La donnée a été ajoutée sans problème.
|
Data() renvoie un pointeur vers le tampon interne d'un BNetBuffer.
Size() renvoie le nombre d'octets actuellement dans le buffer.
BytesRemaining() renvoie le nombre d'octets encore inutilisés
dans le buffer.
|
Retiredu buffer un exemplaire du type de donnée spécifié. Les valeurs entières sont automatiquement converties en host byte order (contrairement aux floats et aux doubles, ainsi que les valeurs dans les structures retirées à l'aide de RemoveData()).
Les chaînes de caractères (String) sont retirées comme des chaines de caractères terminées par NULL, de longueur inférieure ou égale à size octets. Assurez-vous que le buffer de chaine de caractères ait une capacité d'au moins size octets.
RemoveData() enlève size octets et les copie dans le buffer pointé par data. Assurez-vous que le buffer pointé par data ait une capacité d'au moins size octets.
Ces fonctions commencent leur traitement à partir du début du buffer. Après que chaque donnée soit retirée, l'appel suivant à Remove...() commencera à l'octet suivant dans le buffer.
VALEURS DE RETOUR
B_OK. La donnée a été retiré sans problèmeThe data was removed without error.
|
Copie le BnetBuffer spécifié par from dans l'instance du coté gauche de l'opérateur d'affectation, dupliquant ainsi from. Si from est connecté, l'objet du coté contiendra une réplique et ouvrira la même connection. S'il existe, le tampon de données est également dupliqué.
Table des matières du Kit Réseau | Index du Kit Réseau |
The BeBook,
...in lovely HTML...
for BeOS Release 5.
Copyright © 2000 Be, Inc. All rights reserved..