GlobalObjects
Lade ...
Suche ...
Keine Treffer
glo::PoRefListRecordAttribute Klassenreferenz

Klasse für die Zeiger-Listen-Attribute eines Record. Mehr ...

#include <GloPoRefListRecordAttribute.h>

Klassendiagramm für glo::PoRefListRecordAttribute:

Öffentliche Methoden

 PoRefListRecordAttribute (ClassInfoAttribute *pType, const std::list< ObjIDRecordTuple * > &rValueList, const std::streampos &rFilePos)
 
 PoRefListRecordAttribute (ClassInfoAttribute *pType, const std::streampos &rFilePos)
 
virtual void clearGenericList ()
 
virtual void clearValueList ()
 
virtual void clearValueLot ()
 
virtual BaseRecordAttributegetCopy ()
 
const std::list< GenericPersistent * > & getGenericListRef () const
 
virtual std::string getValueAsStreamString () const
 
virtual void * getValueAsVoidPointer ()
 
const std::list< ObjIDRecordTuple * > & getValueRef () const
 
virtual std::size_t getValueSize () const
 
bool hasRecords () const
 
void insert (const std::list< ObjIDRecordTuple * >::const_iterator &rIter, const ObjIDRecordTuple &rObjIDRecordTuple)
 
bool isGeneric () const
 
void push_back (const ObjIDRecordTuple &rObjIDRecordTuple)
 
void push_front (const ObjIDRecordTuple &rObjIDRecordTuple)
 
void setGenericList (const std::list< GenericPersistent * > &rPersGenericList)
 
void setValue (const std::list< ObjIDRecordTuple * > &rValueList)
 
virtual int setValueFromObjectAttributeID (Persistent &rObject, const AttributeID &rAttributeID)
 
virtual int setValueFromObjectAttributeID (Persistent &rObject, const AttributeID &rAttributeID, bool bWithRefRecords)
 
virtual void setValueFromVoid (void *pValueList)
 
virtual int takeValue (const BaseRecordAttribute &rT)
 
- Öffentliche Methoden geerbt von glo::LotRecordAttribute
 LotRecordAttribute (ClassInfoAttribute *pType, const std::streampos &rFilePos)
 
virtual bool dataIsFieldContent () const
 
virtual int getAttributeValueBlob (eut::Blob &rBlob) const
 
virtual unsigned short getDataFieldLength () const
 
virtual std::string getDataReference () const
 
const std::string & getFileName () const
 
virtual int getFormattedFieldContents (std::string &rsRetVal, DATA_REFERENCE_INFO &rRetValInfo, ObjID ObjID)
 
virtual std::string getValueAsDataString () const
 
virtual std::string getValueAsDisplayString () const
 
virtual std::string getValueAsString () const
 
virtual void initNew ()
 
void setDeterminedFileNameFromAttributeValue (ObjID ObjID)
 
void setFileName (const std::string &rsFileName)
 
virtual int updateDataReference (const std::string &rsDataPath, DATA_REFERENCE_INFO MethodInfo)
 
bool operator== (const LotRecordAttribute &rT) const
 Vergleichsoperator.
 
bool operator!= (const LotRecordAttribute &rT) const
 Vergleichsoperator.
 
- Öffentliche Methoden geerbt von glo::BaseRecordAttribute
 BaseRecordAttribute (ClassInfoAttribute *pClassInfoAttribut, const std::streampos &rFilePos)
 
virtual ~BaseRecordAttribute ()
 
unsigned int forget ()
 
AttributeID getAttributeID () const
 
ClassInfoAttributegetClassInfoAttribute () const
 
std::string getClassMemberName () const
 
std::string getClassName () const
 
EnDataType getDataType () const
 
std::string getFieldName () const
 
int getFieldPos ()
 
std::streampos getFilePosition () const
 
EnDataTypeGroup getInfoType ()
 
unsigned int getReferenceCount () const
 
std::string getTableFieldName () const
 
std::string getTableName () const
 
ClassInfoAttribute::Type getType () const
 
std::string getTypeAsCppString () const
 
std::string getTypeAsString () const
 
std::string getTypeInfo () const
 
unsigned int remember ()
 
virtual void setDataReference (const std::string &rsDataReference)
 
void setFilePosition (const std::streampos &rFilePos)
 
bool operator== (const BaseRecordAttribute &rT) const
 Vergleichsoperator, es werden alle Attribute verglichen.
 
bool operator!= (const BaseRecordAttribute &rT) const
 Vergleichsoperator, es werden alle Attribute verglichen.
 

Geschützte Methoden

 PoRefListRecordAttribute ()
 
 PoRefListRecordAttribute (const PoRefListRecordAttribute &rT)
 
virtual ~PoRefListRecordAttribute ()
 
virtual void streamValueListInFileStream (std::ofstream &rFileStream)
 
bool operator== (const PoRefListRecordAttribute &rT) const
 Vergleichsoperator.
 
bool operator!= (const PoRefListRecordAttribute &rT) const
 Vergleichsoperator.
 
- Geschützte Methoden geerbt von glo::LotRecordAttribute
 LotRecordAttribute ()
 
 LotRecordAttribute (const LotRecordAttribute &rT)
 
virtual ~LotRecordAttribute ()
 
- Geschützte Methoden geerbt von glo::BaseRecordAttribute
 BaseRecordAttribute ()
 
 BaseRecordAttribute (const BaseRecordAttribute &rT)
 

Private Methoden

PoRefListRecordAttributeoperator= (const PoRefListRecordAttribute &)
 

Private Attribute

std::list< GenericPersistent * > m_GenericList
 
std::list< ObjIDRecordTuple * > m_ValueList
 

Weitere Geerbte Elemente

- Geschützte Attribute geerbt von glo::LotRecordAttribute
std::string m_sFileName
 

Ausführliche Beschreibung

Klasse für die Zeiger-Listen-Attribute eines Record.

Repräsentiert ein Attribut z.B. vom Typ TPointerList<MyPersClass> und MyPersClass ein persistentes Objekt ist.

Die Objekte in der Liste werden in der Regel mit dem besitzenden Objekt mitgeladen.

Autor
Helmut Jakoby

Beschreibung der Konstruktoren und Destruktoren

◆ PoRefListRecordAttribute() [1/4]

glo::PoRefListRecordAttribute::PoRefListRecordAttribute ( )
protected

Der Standard-Konstruktor steht nicht zur Verfügung.

◆ ~PoRefListRecordAttribute()

virtual glo::PoRefListRecordAttribute::~PoRefListRecordAttribute ( )
protectedvirtual

Der Destruktor steht nicht zur Verfügung. Das Objekt darf nur über forget() aus dem Speicher entfernt werden.

◆ PoRefListRecordAttribute() [2/4]

glo::PoRefListRecordAttribute::PoRefListRecordAttribute ( ClassInfoAttribute * pType,
const std::streampos & rFilePos )

Konstruktor mit Parameterübergabe.

Parameter
[in]pTypeEs wird ein Klasseninformations-Attribut erwartet.
[in]rFilePosDie Dateiposition.
Ausnahmebehandlung
eut::ErrorNExceptionBei einem Fehler wird eine Exception geworfen.
Achtung
Da Objekte dieser Klassen nur von internen Objekten wie Record und TableReaderInterface instanziiert werden, und die wissen was sie tun, wird auf eine Typüberprüfung des Klasseninformations-Attribut verzichtet!

◆ PoRefListRecordAttribute() [3/4]

glo::PoRefListRecordAttribute::PoRefListRecordAttribute ( ClassInfoAttribute * pType,
const std::list< ObjIDRecordTuple * > & rValueList,
const std::streampos & rFilePos )

Konstruktor mit Parameterübergabe.

Parameter
[in]pTypeEs wird ein Klasseninformations-Attribut erwartet.
[in]rValueListDie Liste der referenzierten Objekte des Attributs.
[in]rFilePosDie Dateiposition.
Ausnahmebehandlung
eut::ErrorNExceptionBei einem Fehler wird eine Exception geworfen.
Achtung
Da Objekte dieser Klassen nur von internen Objekten wie Record und TableReaderInterface instanziiert werden, und die wissen was sie tun, wird auf eine Typüberprüfung des Klasseninformations-Attribut verzichtet!

◆ PoRefListRecordAttribute() [4/4]

glo::PoRefListRecordAttribute::PoRefListRecordAttribute ( const PoRefListRecordAttribute & rT)
protected

Copy-Konstruktor.

Parameter
[in]rTVon diesem Objekt werden die Daten übernommen.
Siehe auch
getCopy()

Dokumentation der Elementfunktionen

◆ clearGenericList()

virtual void glo::PoRefListRecordAttribute::clearGenericList ( )
virtual

Es wird die Liste der generischen Objekte bereinigt (geleert und die Objekte werden aus dem Speicher entfernt).

◆ clearValueList()

virtual void glo::PoRefListRecordAttribute::clearValueList ( )
virtual

Es wird die Liste der referenzierten Objekte bereinigt (geleert und die Objekte werden aus dem Speicher entfernt).

◆ clearValueLot()

virtual void glo::PoRefListRecordAttribute::clearValueLot ( )
virtual

Es werden die Liste der referenzierten Objekte und wenn vorhanden, die Liste der generischen Objekte bereinigt (geleert und die Objekte werden aus dem Speicher entfernt).

Implementiert glo::LotRecordAttribute.

◆ getCopy()

virtual BaseRecordAttribute * glo::PoRefListRecordAttribute::getCopy ( )
virtual

Liefert eine Kopie des Objektes. Manchmal braucht man auch eine Kopie eines Attributs, z.B. wenn ein tiefkopierter Record (mit kopierten Attributen) gebraucht wird.

Rückgabe
Die Kopie dieses Attributs
Achtung
Das gelieferte Objekt muss von aufrufender Instanz aus dem Speicher entfernt werden.

Implementiert glo::BaseRecordAttribute.

◆ getGenericListRef()

const std::list< GenericPersistent * > & glo::PoRefListRecordAttribute::getGenericListRef ( ) const

Liefert eine Referenz auf die Liste generischen Objekte.

Rückgabe
Die Referenz auf die Liste der generischen Objekte.

◆ getValueAsStreamString()

virtual std::string glo::PoRefListRecordAttribute::getValueAsStreamString ( ) const
virtual

Liefert den Wert als String für den DataStreamer.

Rückgabe
Der Wert für den DataStreamer.

Erneute Implementation von glo::LotRecordAttribute.

◆ getValueAsVoidPointer()

virtual void * glo::PoRefListRecordAttribute::getValueAsVoidPointer ( )
virtual

Liefert einen rohen Zeiger auf den Wert.

Rückgabe
Der rohe Zeiger auf den Wert.

Implementiert glo::BaseRecordAttribute.

◆ getValueRef()

const std::list< ObjIDRecordTuple * > & glo::PoRefListRecordAttribute::getValueRef ( ) const

Liefert eine Referenz auf m_ValueList.

Rückgabe
Die Referenz auf die Liste der referenzierten Objekte.

◆ getValueSize()

virtual std::size_t glo::PoRefListRecordAttribute::getValueSize ( ) const
virtual

Liefert die Anzahl der Objekte in der Liste der referenzierten Objekte.

Rückgabe
Die Anzahl.

Implementiert glo::LotRecordAttribute.

◆ hasRecords()

bool glo::PoRefListRecordAttribute::hasRecords ( ) const

Prüft, ob ein Record vom ersten ObjIDRecordTuple im m_ValueList referenziert wird.

Rückgabe
Wenn true, wird ein Record referenziert.

◆ insert()

void glo::PoRefListRecordAttribute::insert ( const std::list< ObjIDRecordTuple * >::const_iterator & rIter,
const ObjIDRecordTuple & rObjIDRecordTuple )

Fügt übergebenen ObjIDRecordTuple in m_ValueList an Position des übergebenen Iterators ein.

Parameter
[in]rIterDer Iterator.
[in]rObjIDRecordTupleDer einzufügende ObjIDRecordTuple.

◆ isGeneric()

bool glo::PoRefListRecordAttribute::isGeneric ( ) const

Prüft, ob ein GenericPersistent in m_GenericList referenziert wird.

Rückgabe
Wenn true, wird ein GenericPersistent referenziert.

◆ operator!=()

bool glo::PoRefListRecordAttribute::operator!= ( const PoRefListRecordAttribute & rT) const
protected

Vergleichsoperator.

Parameter
[in]rTDas mit diesem zu vergleichende Objekt.

◆ operator=()

PoRefListRecordAttribute & glo::PoRefListRecordAttribute::operator= ( const PoRefListRecordAttribute & )
private

Der Zuweisungsoperator steht nicht zur Verfügung.

◆ operator==()

bool glo::PoRefListRecordAttribute::operator== ( const PoRefListRecordAttribute & rT) const
protected

Vergleichsoperator.

Parameter
[in]rTDas mit diesem zu vergleichende Objekt.

◆ push_back()

void glo::PoRefListRecordAttribute::push_back ( const ObjIDRecordTuple & rObjIDRecordTuple)

Fügt übergebenen ObjIDRecordTuple in m_ValueList am Ende ein.

Parameter
[in]rObjIDRecordTupleDer einzufügende ObjIDRecordTuple.

◆ push_front()

void glo::PoRefListRecordAttribute::push_front ( const ObjIDRecordTuple & rObjIDRecordTuple)

Fügt übergebenen ObjIDRecordTuple in m_ValueList am Anfang ein.

Parameter
[in]rObjIDRecordTupleDer einzufügende ObjIDRecordTuple.

◆ setGenericList()

void glo::PoRefListRecordAttribute::setGenericList ( const std::list< GenericPersistent * > & rPersGenericList)

Setzt die Liste der generischen Objekte mit Objekten aus übergebener Liste. Die eigene Liste wird vorher gelöscht.

Parameter
[in]rPersGenericListDie Liste der referenzierten generischen Objekte.

◆ setValue()

void glo::PoRefListRecordAttribute::setValue ( const std::list< ObjIDRecordTuple * > & rValueList)

Übernimmt Die Objekte der übergebenen Liste in die eigene Liste der referenzierten Objekte. Die eigene Liste wird vorher gelöscht.

Parameter
[in]rValueListDie Liste der referenzierten Objekte.

◆ setValueFromObjectAttributeID() [1/2]

virtual int glo::PoRefListRecordAttribute::setValueFromObjectAttributeID ( Persistent & rObject,
const AttributeID & rAttributeID )
virtual

Es wird der Wert des RecordAttributs aus dem Klassenattribut des übergebenen Persistent anhand der übergebenen AttributeID ermittelt und gesetzt.

Parameter
[in]rObjectDas persistente Objekt dessen Attribut herangezogen wird.
[in]rAttributeIDDie ID des Attribut des übergebenen Objekts.
Rückgabe
Ein Rückgabewert < 0 zeigt einen Fehler an.
Ausnahmebehandlung
eut::ErrorNExceptionBei einem schwerwiegenden Fehler, wie z.B. wenn rObject das Attribut nicht hat, wird eine Exception geworfen.

Erneute Implementation von glo::BaseRecordAttribute.

◆ setValueFromObjectAttributeID() [2/2]

virtual int glo::PoRefListRecordAttribute::setValueFromObjectAttributeID ( Persistent & rObject,
const AttributeID & rAttributeID,
bool bWithRefRecords )
virtual

Es wird der Wert des RecordAttributs aus dem Klassenattribut des übergebenen Persistent anhand der übergebenen AttributeID ermittelt und gesetzt.

Parameter
[in]rObjectDas persistente Objekt dessen Attribut herangezogen wird.
[in]rAttributeIDDie ID des Attribut des übergebenen Objekts.
[in]bWithRefRecordsWenn true und es wird auf ein gültiges Objekt referenziert, wird der jeweilige Datensatz generiert und referenziert.
Rückgabe
Ein Rückgabewert < 0 zeigt einen Fehler an.
Ausnahmebehandlung
eut::ErrorNExceptionBei einem schwerwiegenden Fehler, wie z.B. wenn rObject das Attribut nicht hat, wird eine Exception geworfen.

◆ setValueFromVoid()

virtual void glo::PoRefListRecordAttribute::setValueFromVoid ( void * pValueList)
virtual

Übernimmt Die Objekte der übergebenen Liste in die eigene Liste der referenzierten Objekte. Die eigene Liste wird vorher gelöscht.

Wird über einen static_cast gewährleistet.

Parameter
[in]pValueListDer rohe Zeiger auf die Liste der referenzierten Objekte.

Implementiert glo::BaseRecordAttribute.

◆ streamValueListInFileStream()

virtual void glo::PoRefListRecordAttribute::streamValueListInFileStream ( std::ofstream & rFileStream)
protectedvirtual

Überträgt für LotRecordAttribute::updateDataReference (...) die Inhalte des Elementkontainers in geeigneter Form in übergebenen Filestream.

Parameter
[in,out]rFileStreamDer Filestream.
Zu beachten
Übergebener Filestream muss gültig und zum Schreiben geöffnet sein.
Ausnahmebehandlung
eut::ErrorNExceptionEs wird eine Exception geworfen, wenn Parameter rFileStream ungültig bzw. nicht zum Schreiben geöffnet ist.

Implementiert glo::LotRecordAttribute.

◆ takeValue()

virtual int glo::PoRefListRecordAttribute::takeValue ( const BaseRecordAttribute & rT)
virtual

Übernimmt den Wert aus übergebenen Attribut, wenn möglich. Es wird versucht, den Wert irgendwie zu casten.

Parameter
[in]rTDas persistente Attribut aus dem der Wert übernommen werden soll.
Rückgabe
Es wird eine Fehler- bzw. Warnmeldung geliefert, wenn der Cast nicht funktionier.

Erneute Implementation von glo::BaseRecordAttribute.

Dokumentation der Datenelemente

◆ m_GenericList

std::list<GenericPersistent *> glo::PoRefListRecordAttribute::m_GenericList
private

Die Liste der referenzierten generischen Objekte. Wird nur gesetzt, wenn Teil eines generischen Objektes.

◆ m_ValueList

std::list<ObjIDRecordTuple *> glo::PoRefListRecordAttribute::m_ValueList
private

Der Wert des Attributs. Die Liste der referenzierten Objekte über ObjIDRecordTuple's.


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