PPL6-Icon Patrick's Programming Library Version 6.4.21 - Dokumentation
ppl6::CMemoryReference Klassenreferenz

Referenz auf einen Speicherbereich. Mehr ...

Öffentliche Methoden

 CMemoryReference ()
 Konstruktor ohne Argumente. Mehr ...
 
 CMemoryReference (const CMemoryReference &other)
 Copy-Konstruktor. Mehr ...
 
 CMemoryReference (const CBinary &bin)
 Copy-Konstruktor von einem CBinary-Objekt. Mehr ...
 
 CMemoryReference (void *adr, size_t size)
 Konstruktor mit Angabe einer Speicheradresse und Größe. Mehr ...
 
void * adr () const
 Adresse des Speicherblocks auslesen. Mehr ...
 
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 ...
 
 operator CBinary () const
 Referenz auf den Speicherbereich als CBinary-Objekt zurückgeben. Mehr ...
 
 operator void * () const
 Adresse des Speicherblocks auslesen. Mehr ...
 
CMemoryReferenceoperator= (const CMemoryReference &other)
 Speicherreferenz von anderem CMemoryReference-Objekt übernehmen. Mehr ...
 
CMemoryReferenceoperator= (const CBinary &bin)
 Speicherreferenz von einem CBinary-Objekt übernehmen. Mehr ...
 
unsigned char operator[] (size_t pos) const
 Einzelnes Byte aus dem Speicherbereich kopieren. Mehr ...
 
void set (void *adr, size_t size)
 Referenz auf Speicherbereich setzen. Mehr ...
 
void set (const CMemoryReference &other)
 Referenz auf Speicherbereich von einer anderen CMemoryReference-Instanz kopieren. Mehr ...
 
void set (const CBinary &bin)
 Referenz auf Speicherbereich eines CBinary-Objekts übernehmen. Mehr ...
 
size_t size () const
 Größe des Speicherblocks auslesen. Mehr ...
 
CString toHex () const
 Speicherbereich als Hexwerte in einem String exportieren. Mehr ...
 

Private Attribute

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

Freundbeziehungen

class CMemory
 

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 CMemory::set gesetzt werden und mit CMemory::adr und CMemory::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 CMemory verwenden.
Siehe auch
Seit
Diese Klasse wurde mit Version 6.3.3 eingeführt

Beschreibung der Konstruktoren und Destruktoren

ppl6::CMemoryReference::CMemoryReference ( )
Beschreibung:
Dieser Konstruktor erstellt eine Inszanz der Klasse ohne einen zugeweisenen Speicherbereich
ppl6::CMemoryReference::CMemoryReference ( const CMemoryReference other)
Beschreibung:
Mit diesem Konstruktor wird eine Referenz auf den Speicherbereich einer anderen CMemoryReference- oder CMemory-Klasse übernommen.
Parameter
[in]otherReferenz auf eine andere CMemoryReferenz-Klasse
ppl6::CMemoryReference::CMemoryReference ( const CBinary bin)
Beschreibung:
Mit diesem Konstruktor wird eine Referenz auf den Speicherbereich eines CBinary-Objekts übernommen.
Parameter
[in]binReferenz auf ein CBinary-Objekt
ppl6::CMemoryReference::CMemoryReference ( 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

Dokumentation der Elementfunktionen

void * ppl6::CMemoryReference::adr ( ) const
Beschreibung:
Mit dieser Funktion wird die Adresse des Speicherblocks ausgelesen
Rückgabe
Adresse des Speicherblocks
bool ppl6::CMemoryReference::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 ppl6::CMemoryReference::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.
ppl6::CMemoryReference::operator CBinary ( ) const
Beschreibung:
Den Referenzierten Speicher als CBinary-Objekt zurückgeben.
Rückgabe
CBinary-Objekt mit Referenz auf den Speicherbereich dieses Objekts
ppl6::CMemoryReference::operator void * ( ) const
Beschreibung:
Mit diesem Operator wird die Adresse des Speicherblocks ausgelesen
Rückgabe
Adresse des Speicherblocks
CMemoryReference & ppl6::CMemoryReference::operator= ( const CMemoryReference other)
Beschreibung:
Mit diesem Operator wird eine Referenz auf einen Speicherbereich von einer anderen CMemoryReference- oder CMemory Instanz übernommen.
Parameter
[in]otherReferenz auf ein anderes CMemoryReference-Objekt.
Rückgabe
Referenz auf das Objekt
CMemoryReference & ppl6::CMemoryReference::operator= ( const CBinary bin)
Beschreibung:
Mit diesem Operator wird eine Referenz auf den Speicherbereich eines CBinary-Objekts übernommen.
Parameter
[in]otherReferenz auf ein CBinary-Objekt.
Rückgabe
Referenz auf das Objekt
unsigned char ppl6::CMemoryReference::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.
void ppl6::CMemoryReference::set ( 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 ppl6::CMemoryReference::set ( const CMemoryReference other)
Beschreibung:
Mit dieser Funktion wird eine Referenz auf einen Speicherbereich von einer anderen CMemoryReference- oder CMemory- Instanz kopiert.
Parameter
[in]otherReferenz auf ein anderes CMemory-Objekt.
void ppl6::CMemoryReference::set ( const CBinary bin)
Beschreibung:
Mit dieser Funktion wird eine Referenz auf den Speicherbereich eines CBinary-Objekts übernommen.
Parameter
[in]binReferenz auf ein CBinary-Objekt.
size_t ppl6::CMemoryReference::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.
CString ppl6::CMemoryReference::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

Freundbeziehungen und Funktionsdokumentation

friend class CMemory
friend

Dokumentation der Datenelemente

ppl6::CMemoryReference::ptr
private
Beschreibung:
Pointer auf den referenzierten Speicherbereich
ppl6::CMemoryReference::s
private
Beschreibung:
Größe des referenzierten Speicherbereichs

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