PPL7-Icon Patrick's Programming Library Version 7.0.0 - Dokumentation
ppl7::ByteArrayPtr Klassenreferenz

Referenz auf einen Speicherbereich. Mehr ...

Basisklasse für ppl7::ByteArray.

Öffentliche Methoden

 ByteArrayPtr ()
 Konstruktor ohne Argumente. Mehr ...
 
 ByteArrayPtr (const ByteArrayPtr &other)
 Copy-Konstruktor. Mehr ...
 
 ByteArrayPtr (const String &data)
 
 ByteArrayPtr (const WideString &data)
 
 ByteArrayPtr (void *adr, size_t size)
 Konstruktor mit Angabe einer Speicheradresse und Größe. Mehr ...
 
 ByteArrayPtr (const void *adr, size_t size)
 
const void * adr () const
 Adresse des Speicherblocks auslesen. Mehr ...
 
ppluint32 crc32 () const
 CRC32-Prüfsumme berechnen. Mehr ...
 
unsigned char get (size_t pos) const
 
void hexDump () const
 
void hexDump (size_t bytes) const
 
void hexDump (size_t offset, size_t bytes) const
 
bool isEmpty () const
 Prüfen, ob der Referenzierte Speicher eine Größe von 0 hat. Mehr ...
 
bool isNull () const
 Prüfen, ob Speicher referenziert ist. Mehr ...
 
String md5 () const
 MD5-Summe berechnen. Mehr ...
 
int memcmp (const ByteArrayPtr &other) const
 
void memset (int value)
 Speicher mit bestimmtem Wert füllen. Mehr ...
 
 operator const char * () const
 Adresse des Speicherblocks auslesen. Mehr ...
 
 operator const unsigned char * () const
 Adresse des Speicherblocks auslesen. Mehr ...
 
 operator const void * () const
 Adresse des Speicherblocks auslesen. Mehr ...
 
bool operator!= (const ByteArrayPtr &other) const
 
bool operator< (const ByteArrayPtr &other) const
 
bool operator<= (const ByteArrayPtr &other) const
 
ByteArrayPtroperator= (const ByteArrayPtr &other)
 Speicherreferenz von anderem ByteArrayPtr-Objekt übernehmen. Mehr ...
 
bool operator== (const ByteArrayPtr &other) const
 
bool operator> (const ByteArrayPtr &other) const
 
bool operator>= (const ByteArrayPtr &other) const
 
unsigned char operator[] (size_t pos) const
 Einzelnes Byte aus dem Speicherbereich auslesen. Mehr ...
 
const void * ptr () const
 Adresse des Speicherblocks auslesen. Mehr ...
 
void set (size_t pos, unsigned char value)
 
size_t size () const
 Größe des Speicherblocks auslesen. Mehr ...
 
String toBase64 () const
 Speicherbereich als Base64 in einen String exportieren. Mehr ...
 
const char * toCharPtr () const
 Adresse des Speicherblocks auslesen. Mehr ...
 
String toHex () const
 Speicherbereich als Hexwerte in einen String exportieren. Mehr ...
 
void use (void *adr, size_t size)
 Referenz auf Speicherbereich setzen. Mehr ...
 
void use (const ByteArrayPtr &other)
 Referenz auf Speicherbereich von einer anderen ByteArrayPtr-Instanz kopieren. Mehr ...
 

Private Attribute

void * ptradr
 Pointer auf den referenzierten Speicherbereich. Mehr ...
 
size_t ptrsize
 Größe des referenzierten Speicherbereichs. Mehr ...
 

Freundbeziehungen

class ByteArray
 

Ausführliche Beschreibung

Beschreibung:
Mit dieser Klasse kann ein einzelner Speicherblock repräsentiert werden. Dieser besteht immer aus einer Speicheraddresse und der Größe des Speicherbereichs in Bytes.
Der Speicherbereich kann mit ByteArray::set gesetzt werden und mit ByteArray::adr und ByteArray::size ausgelesen werden. Außerdem kann mit dem Operator [] ein bestimmtes Byte aus dem Speicherbereich ausgelesen werden.
Die Klasse enthält immer nur eine Referenz auf einen bestehenen Speicherbereich, nicht den Speicher selbst. Soll auch der Speicher verwaltet werden, kann man stattdessen die abgeleitete Klasse ByteArray verwenden.
Siehe auch

Beschreibung der Konstruktoren und Destruktoren

ppl7::ByteArrayPtr::ByteArrayPtr ( )
Beschreibung:
Dieser Konstruktor erstellt eine Inszanz der Klasse ohne einen zugeweisenen Speicherbereich
ppl7::ByteArrayPtr::ByteArrayPtr ( const ByteArrayPtr other)
Beschreibung:
Mit diesem Konstruktor wird eine Referenz auf den Speicherbereich einer anderen ByteArrayPtr- oder ByteArray-Klasse übernommen.
Parameter
[in]otherReferenz auf eine andere ByteArrayReferenz-Klasse
ppl7::ByteArrayPtr::ByteArrayPtr ( const String data)
ppl7::ByteArrayPtr::ByteArrayPtr ( const WideString data)
ppl7::ByteArrayPtr::ByteArrayPtr ( void *  adr,
size_t  size 
)
Beschreibung:
Mit diesem Konstruktor wird eine neue Instanz der Klasse erzeugt, die eine Referenz auf den mit adr und size angegebenen Speicherbereich enthält.
Parameter
[in]adrPointer auf den Beginn des Speicherbereichs
[in]sizeGröße des Speicherbereichs in Bytes
ppl7::ByteArrayPtr::ByteArrayPtr ( const void *  adr,
size_t  size 
)

Dokumentation der Elementfunktionen

const void * ppl7::ByteArrayPtr::adr ( ) const
Beschreibung:
Mit dieser Funktion wird die Adresse des Speicherblocks ausgelesen
Rückgabe
Adresse des Speicherblocks
ppluint32 ppl7::ByteArrayPtr::crc32 ( ) const
Beschreibung:
Diese Funktion liefert die CRC32-Prüfsumme des Speicherbereichs zurück.
Rückgabe
CRC32-Prüfsumme
unsigned char ppl7::ByteArrayPtr::get ( size_t  pos) const
void ppl7::ByteArrayPtr::hexDump ( ) const
void ppl7::ByteArrayPtr::hexDump ( size_t  bytes) const
void ppl7::ByteArrayPtr::hexDump ( size_t  offset,
size_t  bytes 
) const
bool ppl7::ByteArrayPtr::isEmpty ( ) const
Beschreibung:
Mit dieser Funktion kann geprüft werden, ob die Klasse zur Zeit eine Referenz auf einen Speicherbereich enthält und dieser größer als 0 Byte ist.
Rückgabe
Enthält die Klasse keine Referenz auf einen Speicherbereich, der mindestens 1 Byte gross ist, liefert die Funktion true zurück, andernfalls false.
bool ppl7::ByteArrayPtr::isNull ( ) const
Beschreibung:
Mit dieser Funktion kann geprüft werden, ob die Klasse zur Zeit eine Referenz auf einen Speicherbereich enthält.
Rückgabe
Enthält die Klasse keine Referenz auf einen Speicherbereich, liefert die Funktion true zurück, andernfalls false.
String ppl7::ByteArrayPtr::md5 ( ) const

Diese Funktion berechnet die MD5-Summe der binären Daten und gibt diese als String zurück.

Rückgabe
Die Funktion liefert ein String-Objekt zurück. Bei Erfolg enthält dieses die MD5-Summe, im Fehlerfall wird eine Exception geworfen. Ein Fehler kann auftreten, wenn die Klasse keine Daten enthalten hat oder bei der Berechnung der MD5-Summe ein Fehler aufgetreten ist.
int ppl7::ByteArrayPtr::memcmp ( const ByteArrayPtr other) const
void ppl7::ByteArrayPtr::memset ( int  value)
Beschreibung:
Diese Funktion füllt den gesamten verwalteten Speicher mit dem Bytewert value
Parameter
[in]valueBytewert
ppl7::ByteArrayPtr::operator const char * ( ) const
Beschreibung:
Mit diesem Operator wird die Adresse des Speicherblocks ausgelesen
Rückgabe
Adresse des Speicherblocks
ppl7::ByteArrayPtr::operator const unsigned char * ( ) const
Beschreibung:
Mit diesem Operator wird die Adresse des Speicherblocks ausgelesen
Rückgabe
Adresse des Speicherblocks
ppl7::ByteArrayPtr::operator const void * ( ) const
Beschreibung:
Mit diesem Operator wird die Adresse des Speicherblocks ausgelesen
Rückgabe
Adresse des Speicherblocks
bool ppl7::ByteArrayPtr::operator!= ( const ByteArrayPtr other) const
bool ppl7::ByteArrayPtr::operator< ( const ByteArrayPtr other) const
bool ppl7::ByteArrayPtr::operator<= ( const ByteArrayPtr other) const
ByteArrayPtr & ppl7::ByteArrayPtr::operator= ( const ByteArrayPtr other)
Beschreibung:
Mit diesem Operator wird eine Referenz auf einen Speicherbereich von einer anderen ByteArrayPtr- oder ByteArray Instanz übernommen.
Parameter
[in]otherReferenz auf ein anderes ByteArrayPtr-Objekt.
Rückgabe
Referenz auf das Objekt
bool ppl7::ByteArrayPtr::operator== ( const ByteArrayPtr other) const
bool ppl7::ByteArrayPtr::operator> ( const ByteArrayPtr other) const
bool ppl7::ByteArrayPtr::operator>= ( const ByteArrayPtr other) const
unsigned char ppl7::ByteArrayPtr::operator[] ( size_t  pos) const
Beschreibung:
Mit dem Operator [] kann ein bestimmtes Byte pos aus dem Speicherbereich ausgelesen werden. Ist kein Speicher referenziert oder ist pos größer als der Speicherblock, wird eine Exception ausgelöst.
Parameter
[in]posAuszulesendes Byte, beginnend mit 0.
Rückgabe
Wert der Speicherstelle
Ausnahmebehandlung
OutOfBoundsEceptionDiese Exception wird geworfen, wenn die mit pos angegebene Speicherstelle ausseralb des referenzierten Speichers liegt oder kein Speicher referenziert ist.
const void * ppl7::ByteArrayPtr::ptr ( ) const
Beschreibung:
Mit dieser Funktion wird die Adresse des Speicherblocks ausgelesen
Rückgabe
Adresse des Speicherblocks
void ppl7::ByteArrayPtr::set ( size_t  pos,
unsigned char  value 
)
size_t ppl7::ByteArrayPtr::size ( ) const
Beschreibung:
Mit dieser Funktion kann die Größe des Speicherblocks ausgelesen werden.
Rückgabe
Größe des Speicherblocks oder 0, wenn kein Speicher zugeordnet ist.
String ppl7::ByteArrayPtr::toBase64 ( ) const
Beschreibung:
Der referenzierte Speicherbereich wird im Base64-Format als String exportiert.
Rückgabe
Inhalt des Speicherbereichs als Base64-String.
const char * ppl7::ByteArrayPtr::toCharPtr ( ) const
Beschreibung:
Mit diesem Operator wird die Adresse des Speicherblocks ausgelesen
Rückgabe
Adresse des Speicherblocks
String ppl7::ByteArrayPtr::toHex ( ) const
Beschreibung:
Der referenzierte Speicherbereich wird als String mit Hexadezimalwerten exportiert, wobei jedes Byte als zwei Zeichen langer Hexadezimalwert dargestellt wird.
Rückgabe
String mit Hexadezimal-Werten
void ppl7::ByteArrayPtr::use ( void *  adr,
size_t  size 
)
Beschreibung:
Mit dieser Funktion wird der Klasse der Speicherbereich mit der Adresse adr und der Größe size zugeordnet. Der Speicherbereich selbst wird von der Klasse nicht verwaltet, das heisst die Anwendung muss sich um dessen Freigabe kümmern.
Parameter
[in]adrStartadresse des Speicherbereichs
[in]sizeGröße des Speicherbereichs in Bytes
void ppl7::ByteArrayPtr::use ( const ByteArrayPtr other)
Beschreibung:
Mit dieser Funktion wird eine Referenz auf einen Speicherbereich von einer anderen ByteArrayPtr- oder ByteArray- Instanz kopiert.
Parameter
[in]otherReferenz auf ein anderes ByteArray-Objekt.

Freundbeziehungen und Funktionsdokumentation

friend class ByteArray
friend

Dokumentation der Datenelemente

ppl7::ByteArrayPtr::ptradr
private
Beschreibung:
Pointer auf den referenzierten Speicherbereich
ppl7::ByteArrayPtr::ptrsize
private
Beschreibung:
Größe des referenzierten Speicherbereichs

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien: