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

Flexibler Datentyp, der verschiedene Datentypen aufnehmen kann. Mehr ...

Öffentliche Typen

enum  DataType {
  TYPE_UNKNOWN =0, TYPE_STRING =4, TYPE_ASSOCARRAY =5, TYPE_BYTEARRAY =6,
  TYPE_POINTER =7, TYPE_WIDESTRING =8, TYPE_ARRAY =9, TYPE_DATETIME =11,
  TYPE_BYTEARRAYPTR =12
}
 Enumeration der verschiedenen Datenobjekte, die in der Library verwendet werden. Mehr ...
 

Öffentliche Methoden

 Variant ()
 Konstruktor der Klasse. Mehr ...
 
 Variant (const Variant &value)
 Copy-Konstruktor der Klasse. Mehr ...
 
 Variant (const String &value)
 Konstruktor mit Datentyp String. Mehr ...
 
 Variant (const WideString &value)
 Konstruktor mit Datentyp WideString. Mehr ...
 
 Variant (const Array &value)
 Konstruktor mit Datentyp Array. Mehr ...
 
 Variant (const AssocArray &value)
 Konstruktor mit Datentyp AssocArray. Mehr ...
 
 Variant (const ByteArray &value)
 Konstruktor mit Datentyp ByteArray. Mehr ...
 
 Variant (const ByteArrayPtr &value)
 Konstruktor mit Datentyp ByteArrayPtr. Mehr ...
 
 Variant (const DateTime &value)
 Konstruktor mit Datentyp DateTime. Mehr ...
 
 Variant (const Pointer &value)
 Konstruktor mit Datentyp Pointer. Mehr ...
 
 ~Variant ()
 Destruktor. Mehr ...
 
void clear ()
 Inhalt des Objekts löschen. Mehr ...
 
bool isArray () const
 Prüft, ob es sich um den Datentyp Array handelt. Mehr ...
 
bool isAssocArray () const
 Prüft, ob es sich um den Datentyp AssocArray handelt. Mehr ...
 
bool isByteArray () const
 Prüft, ob es sich um den Datentyp ByteArray handelt. Mehr ...
 
bool isByteArrayPtr () const
 Prüft, ob es sich um den Datentyp ByteArrayPtr handelt. Mehr ...
 
bool isDateTime () const
 Prüft, ob es sich um den Datentyp DateTime handelt. Mehr ...
 
bool isPointer () const
 Prüft, ob es sich um den Datentyp Pointer handelt. Mehr ...
 
bool isString () const
 Prüft, ob es sich um den Datentyp String handelt. Mehr ...
 
bool isType (DataType type) const
 Prüft auf einen bestimmten Datentyp. Mehr ...
 
bool isWideString () const
 Prüft, ob es sich um den Datentyp WideString handelt. Mehr ...
 
 operator Array () const
 
 operator AssocArray () const
 
 operator ByteArray () const
 
 operator ByteArrayPtr () const
 
 operator DateTime () const
 
 operator Pointer () const
 
 operator String () const
 
 operator WideString () const
 
Variantoperator= (const Variant &other)
 
Variantoperator= (const String &other)
 
Variantoperator= (const WideString &other)
 
Variantoperator= (const Array &other)
 
Variantoperator= (const AssocArray &other)
 
Variantoperator= (const ByteArray &other)
 
Variantoperator= (const ByteArrayPtr &other)
 
Variantoperator= (const DateTime &other)
 
Variantoperator= (const Pointer &other)
 
void set (const Variant &value)
 Wert eines anderen Variant kopieren. Mehr ...
 
void set (const String &value)
 Der Wert eines String wird übernommen. Mehr ...
 
void set (const WideString &value)
 Der Wert eines WideString wird übernommen. Mehr ...
 
void set (const Array &value)
 Der Wert eines Array wird übernommen. Mehr ...
 
void set (const AssocArray &value)
 Der Wert eines AssocArray wird übernommen. Mehr ...
 
void set (const ByteArray &value)
 Der Wert eines ByteArray wird übernommen. Mehr ...
 
void set (const ByteArrayPtr &value)
 Der Wert eines ByteArrayPtr wird übernommen. Mehr ...
 
void set (const DateTime &value)
 Der Wert eines DateTime wird übernommen. Mehr ...
 
void set (const Pointer &value)
 Der Wert eines Pointer wird übernommen. Mehr ...
 
const ArraytoArray () const
 Typkonvertierung zu: const Array. Mehr ...
 
ArraytoArray ()
 Typkonvertierung zu: Array. Mehr ...
 
const AssocArraytoAssocArray () const
 Typkonvertierung zu: const AssocArray. Mehr ...
 
AssocArraytoAssocArray ()
 Typkonvertierung zu: AssocArray. Mehr ...
 
const ByteArraytoByteArray () const
 Typkonvertierung zu: const ByteArray. Mehr ...
 
ByteArraytoByteArray ()
 Typkonvertierung zu: ByteArray. Mehr ...
 
const ByteArrayPtrtoByteArrayPtr () const
 Typkonvertierung zu: const ByteArrayPtr. Mehr ...
 
ByteArrayPtrtoByteArrayPtr ()
 Typkonvertierung zu: ByteArrayPtr. Mehr ...
 
const DateTimetoDateTime () const
 Typkonvertierung zu: const DateTime. Mehr ...
 
DateTimetoDateTime ()
 Typkonvertierung zu: DateTime. Mehr ...
 
const PointertoPointer () const
 Typkonvertierung zu: const Pointer. Mehr ...
 
PointertoPointer ()
 Typkonvertierung zu: Pointer. Mehr ...
 
const StringtoString () const
 Typkonvertierung zu: const String. Mehr ...
 
StringtoString ()
 Typkonvertierung zu: String. Mehr ...
 
const WideStringtoWideString () const
 Typkonvertierung zu: const WideString. Mehr ...
 
WideStringtoWideString ()
 Typkonvertierung zu: WideString. Mehr ...
 
DataType type () const
 Liefert den Datentyp des Objekts zurück. Mehr ...
 

Private Attribute

DataType t
 Variable, zum Speichern des Datentyps. Mehr ...
 
void * value
 Pointer auf den Inhalt des Datentyps. Mehr ...
 

Ausführliche Beschreibung

Beschreibung:
Dieser Datentyp kann andere Datentypen aufnehmen. Unterstützt werden:
Beispiel:
void Machwas(const Variant &object)
{
Variant::DataType t=object.type();
const ppl7::ByteArray &bin= static_cast<const ppl7::ByteArray&>(object); // Objekt zu ByteArray umwandeln
printf ("Es ist ein ByteArray mit %i Bytes an Daten\n",bin.size());
return;
} else if (t==Variant::TYPE_STRING) {
const String &str= static_cast<const String&>(object); // Objekt zu String umwandeln
printf ("Es ist ein String mit folgendem Inhalt: %s\n",(const char*)str);
return;
} else if (t==Variant::TYPE_ARRAY) {
const Array &array= static_cast<const Array&>(object); // Objekt zu Array umwandeln
printf ("Es ist ein Array mit %i Elementen\n",array.count());
return;
}
printf ("Datentyp wird nicht unterstützt\n");
}

Dokumentation der Aufzählungstypen

Enumeration der verschiedenen Datenobjekte, die in der Library verwendet werden

Aufzählungswerte
TYPE_UNKNOWN 

Unbekannter Datentyp.

TYPE_STRING 

Datentyp ist String.

TYPE_ASSOCARRAY 

Datentyp ist AssocArray.

TYPE_BYTEARRAY 

Datentyp ist ByteArray.

TYPE_POINTER 

Datentyp ist Pointer.

TYPE_WIDESTRING 

Datentyp ist WideString.

TYPE_ARRAY 

Datentyp ist Array.

TYPE_DATETIME 

Datentyp ist DateTime.

TYPE_BYTEARRAYPTR 

Datentyp ist ByteArrayPtr.

Beschreibung der Konstruktoren und Destruktoren

ppl7::Variant::Variant ( )
Beschreibung:
Der Konstruktor initialisiert den Typ der Klasse mit Variant::TYPE_UNKNOWN. Es ist aufgabe der abgeleiteten Klasse den korrekten Datentyp zu setzen.
ppl7::Variant::~Variant ( )
Beschreibung:
Gibt den durch das Objekt belegten Speicher wieder frei.
ppl7::Variant::Variant ( const Variant value)
Beschreibung:
Der Inhalt des anderen Variant-Objekts value wird kopiert.
ppl7::Variant::Variant ( const String value)

Der Inhalt des Strings value wird kopiert.

Parameter
value
ppl7::Variant::Variant ( const WideString value)

Der Inhalt des WideStrings value wird kopiert.

Parameter
value
ppl7::Variant::Variant ( const Array value)

Der Inhalt des Arrays value wird kopiert.

Parameter
value
ppl7::Variant::Variant ( const AssocArray value)

Der Inhalt des AssocArrays value wird kopiert.

Parameter
value
ppl7::Variant::Variant ( const ByteArray value)

Der Inhalt des ByteArrays value wird kopiert.

Parameter
value
ppl7::Variant::Variant ( const ByteArrayPtr value)

Der Inhalt des ByteArrayPtrs value wird kopiert.

Parameter
value
ppl7::Variant::Variant ( const DateTime value)

Der Inhalt des DateTimes value wird kopiert.

Parameter
value
ppl7::Variant::Variant ( const Pointer value)

Der Inhalt des Pointers value wird kopiert.

Parameter
value

Dokumentation der Elementfunktionen

void ppl7::Variant::clear ( )
Beschreibung:
Der im Objekte gespeicherte Datentyp wird gelöscht und sein Speicher freigegeben.
bool ppl7::Variant::isArray ( ) const
Beschreibung:
Prüft, ob es sich um den Datentyp Array handelt
Rückgabe
Liefert true zurück, wenn es such um den Datentyp Array handelt, sonst false.
bool ppl7::Variant::isAssocArray ( ) const
Beschreibung:
Prüft, ob es sich um den Datentyp AssocArray handelt
Rückgabe
Liefert true zurück, wenn es such um den Datentyp AssocArray handelt, sonst false.
bool ppl7::Variant::isByteArray ( ) const
Beschreibung:
Prüft, ob es sich um den Datentyp ByteArray handelt
Rückgabe
Liefert true zurück, wenn es such um den Datentyp ByteArray handelt, sonst false.
bool ppl7::Variant::isByteArrayPtr ( ) const
Beschreibung:
Prüft, ob es sich um den Datentyp ByteArrayPtr handelt
Rückgabe
Liefert true zurück, wenn es such um den Datentyp ByteArrayPtr handelt, sonst false.
bool ppl7::Variant::isDateTime ( ) const
Beschreibung:
Prüft, ob es sich um den Datentyp DateTime handelt
Rückgabe
Liefert true zurück, wenn es such um den Datentyp DateTime handelt, sonst false.
bool ppl7::Variant::isPointer ( ) const
Beschreibung:
Prüft, ob es sich um den Pointer DateTime handelt
Rückgabe
Liefert true zurück, wenn es such um den Pointer DateTime handelt, sonst false.
bool ppl7::Variant::isString ( ) const
Beschreibung:
Prüft, ob es sich um den Datentyp String handelt
Rückgabe
Liefert true zurück, wenn es such um den Datentyp String handelt, sonst false.
bool ppl7::Variant::isType ( DataType  type) const
Beschreibung:
Prüft, ob es sich bei diesem Objekt um den Datentyp type handelt.
Parameter
typeZu überprüfender Typ. Wert aus der Enumerationr Variant::DataType
Rückgabe
Liefert true zurück, wenn es sich um den angegebenen Datentyp type handelt, sonst false.
bool ppl7::Variant::isWideString ( ) const
Beschreibung:
Prüft, ob es sich um den Datentyp WideString handelt
Rückgabe
Liefert true zurück, wenn es such um den Datentyp WideString handelt, sonst false.
ppl7::Variant::operator Array ( ) const
ppl7::Variant::operator AssocArray ( ) const
ppl7::Variant::operator ByteArray ( ) const
ppl7::Variant::operator ByteArrayPtr ( ) const
ppl7::Variant::operator DateTime ( ) const
ppl7::Variant::operator Pointer ( ) const
ppl7::Variant::operator String ( ) const
ppl7::Variant::operator WideString ( ) const
Variant & ppl7::Variant::operator= ( const Variant other)
Variant & ppl7::Variant::operator= ( const String other)
Variant & ppl7::Variant::operator= ( const WideString other)
Variant & ppl7::Variant::operator= ( const Array other)
Variant & ppl7::Variant::operator= ( const AssocArray other)
Variant & ppl7::Variant::operator= ( const ByteArray other)
Variant & ppl7::Variant::operator= ( const ByteArrayPtr other)
Variant & ppl7::Variant::operator= ( const DateTime other)
Variant & ppl7::Variant::operator= ( const Pointer other)
void ppl7::Variant::set ( const Variant value)
Beschreibung:
Der Wert des anderen Variant value wird kopiert.
Parameter
value
void ppl7::Variant::set ( const String value)
Beschreibung:
Der Wert des Strings value wird kopiert.
Parameter
value
void ppl7::Variant::set ( const WideString value)
Beschreibung:
Der Wert des WideStrings value wird kopiert.
Parameter
value
void ppl7::Variant::set ( const Array value)
Beschreibung:
Der Wert des Arrays value wird kopiert.
Parameter
value
void ppl7::Variant::set ( const AssocArray value)
Beschreibung:
Der Wert des AssocArrays value wird kopiert.
Parameter
value
void ppl7::Variant::set ( const ByteArray value)
Beschreibung:
Der Wert des ByteArrays value wird kopiert.
Parameter
value
void ppl7::Variant::set ( const ByteArrayPtr value)
Beschreibung:
Der Wert des ByteArrayPtrs value wird kopiert.
Parameter
value
void ppl7::Variant::set ( const DateTime value)
Beschreibung:
Der Wert des DateTimes value wird kopiert.
Parameter
value
void ppl7::Variant::set ( const Pointer value)
Beschreibung:
Der Wert des Pointers value wird kopiert.
Parameter
value
const Array & ppl7::Variant::toArray ( ) const
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf das gespeicherten Array zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf Array
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um ein Array handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
Array & ppl7::Variant::toArray ( )
Beschreibung:
Der Aufruf dieser Funktion liefert eine Referenz auf das gespeicherten Array zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf Array
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um ein Array handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
const AssocArray & ppl7::Variant::toAssocArray ( ) const
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf das gespeicherten AssocArray zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf AssocArray
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um ein AssocArray handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
AssocArray & ppl7::Variant::toAssocArray ( )
Beschreibung:
Der Aufruf dieser Funktion liefert eine Referenz auf das gespeicherten AssocArray zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf AssocArray
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um ein AssocArray handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
const ByteArray & ppl7::Variant::toByteArray ( ) const
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf das gespeicherten ByteArray zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf ByteArray
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um ein ByteArray handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
ByteArray & ppl7::Variant::toByteArray ( )
Beschreibung:
Der Aufruf dieser Funktion liefert eine Referenz auf das gespeicherten ByteArray zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf ByteArray
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um ein ByteArray handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
const ByteArrayPtr & ppl7::Variant::toByteArrayPtr ( ) const
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf den gespeicherten ByteArrayPtr zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf ByteArrayPtr
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen ByteArrayPtr handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
ByteArrayPtr & ppl7::Variant::toByteArrayPtr ( )
Beschreibung:
Der Aufruf dieser Funktion liefert eine Referenz auf den gespeicherten ByteArrayPtr zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf ByteArrayPtr
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen ByteArrayPtr handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
const DateTime & ppl7::Variant::toDateTime ( ) const
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf den gespeicherten DateTime zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf DateTime
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen DateTime handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
DateTime & ppl7::Variant::toDateTime ( )
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf den gespeicherten DateTime zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf DateTime
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen DateTime handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
const Pointer & ppl7::Variant::toPointer ( ) const
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf den gespeicherten Pointer zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf Pointer
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen Pointer handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
Pointer & ppl7::Variant::toPointer ( )
Beschreibung:
Der Aufruf dieser Funktion liefert eine Referenz auf den gespeicherten Pointer zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf Pointer
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen Pointer handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
const String & ppl7::Variant::toString ( ) const
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf den gespeicherten String zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf String
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen String handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
String & ppl7::Variant::toString ( )
Beschreibung:
Der Aufruf dieser Funktion liefert eine Referenz auf den gespeicherten String zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf String
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen String handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
const WideString & ppl7::Variant::toWideString ( ) const
Beschreibung:
Der Aufruf dieser Funktion liefert eine unveränderliche Referenz auf den gespeicherten WideString zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf WideString
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen WideString handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
WideString & ppl7::Variant::toWideString ( )
Beschreibung:
Der Aufruf dieser Funktion liefert eine Referenz auf den gespeicherten WideString zurück, sofern der Variant diesen Datentyp enthält. Ist dies nicht der Fall, wird eine Exception geworfen.
Rückgabe
Referenz auf WideString
Ausnahmebehandlung
TypeConversionExceptionWird geworfen, wenn es sich nicht um einen WideString handelt.
EmptyDataExceptionWird geworfen, wenn keine Daten in diesem Variant hinterlegt sind.
Variant::DataType ppl7::Variant::type ( ) const
Beschreibung:
Diese Funktion liefert den Datentyp des Objekts zurück.
Rückgabe
ID aus der Enumeration Variant::DataType

Dokumentation der Datenelemente

ppl7::Variant::t
private
ppl7::Variant::value
private

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