GlobalObjects
Lade ...
Suche ...
Keine Treffer
glo::LotRecordAttribute Klassenreferenzabstract

Basisklasse für Elementkontainer-Attribute eines Record. Mehr ...

#include <GloLotRecordAttribute.h>

Klassendiagramm für glo::LotRecordAttribute:

Öffentliche Methoden

 LotRecordAttribute (ClassInfoAttribute *pType, const std::streampos &rFilePos)
 
virtual void clearValueLot ()=0
 
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 getValueAsStreamString () const
 
virtual std::string getValueAsString () const
 
virtual std::size_t getValueSize () const =0
 
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
 
virtual BaseRecordAttributegetCopy ()=0
 
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
 
virtual void * getValueAsVoidPointer ()=0
 
unsigned int remember ()
 
virtual void setDataReference (const std::string &rsDataReference)
 
void setFilePosition (const std::streampos &rFilePos)
 
virtual int setValueFromObjectAttributeID (Persistent &rObject, const AttributeID &rAttributeID)
 
virtual void setValueFromVoid (void *pValue)=0
 
virtual int takeValue (const BaseRecordAttribute &rT)
 
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

 LotRecordAttribute ()
 
 LotRecordAttribute (const LotRecordAttribute &rT)
 
virtual ~LotRecordAttribute ()
 
virtual void streamValueListInFileStream (std::ofstream &rFileStream)=0
 
- Geschützte Methoden geerbt von glo::BaseRecordAttribute
 BaseRecordAttribute ()
 
 BaseRecordAttribute (const BaseRecordAttribute &rT)
 

Geschützte Attribute

std::string m_sFileName
 

Private Methoden

LotRecordAttributeoperator= (const LotRecordAttribute &)
 

Ausführliche Beschreibung

Basisklasse für Elementkontainer-Attribute eines Record.

Autor
Helmut Jakoby

Beschreibung der Konstruktoren und Destruktoren

◆ LotRecordAttribute() [1/3]

glo::LotRecordAttribute::LotRecordAttribute ( )
protected

Der Standard-Konstruktor steht nicht zur Verfügung.

◆ ~LotRecordAttribute()

virtual glo::LotRecordAttribute::~LotRecordAttribute ( )
protectedvirtual

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

◆ LotRecordAttribute() [2/3]

glo::LotRecordAttribute::LotRecordAttribute ( 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!

◆ LotRecordAttribute() [3/3]

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

Copy-Konstruktor.

Parameter
[in]rTVon diesem Objekt werden die Daten übernommen.

Dokumentation der Elementfunktionen

◆ clearValueLot()

◆ dataIsFieldContent()

virtual bool glo::LotRecordAttribute::dataIsFieldContent ( ) const
virtual

Liefert false, da Attributdaten grundsätzlich ausserhalb der Tabelle in einer Datei abgelgt werden. In der Tabelle wird die Referenz auf die Datei gespeichert.

Rückgabe
s.o.

Implementiert glo::BaseRecordAttribute.

◆ getAttributeValueBlob()

virtual int glo::LotRecordAttribute::getAttributeValueBlob ( eut::Blob & rBlob) const
virtual

Hier verboten!

Rückgabe
Liefert immer ERR_METHOD_FORBIDDEN.

Erneute Implementation von glo::BaseRecordAttribute.

◆ getDataFieldLength()

virtual unsigned short glo::LotRecordAttribute::getDataFieldLength ( ) const
virtual

Liefert die Feldlänge des Attributwertes als formatierten Datenstring umgewandelt. Ist in diesem Fall immer die Länge der Dateibezeichnung der Datei, in welcher der Elementkontainer untergebracht werden soll.

Rückgabe
Die Feldlänge.

Implementiert glo::BaseRecordAttribute.

◆ getDataReference()

virtual std::string glo::LotRecordAttribute::getDataReference ( ) const
virtual

Liefert die Dateibezeichnung, zusammengesetzt aus der Dateibezeichnung und der Attribut-ID, in der die Daten des Attributs gespeichert werden.

Rückgabe
Ggf. die vorhandene Dateibezeichnung. Wenn leer, dann gibts wohl keine.

Erneute Implementation von glo::BaseRecordAttribute.

◆ getFileName()

const std::string & glo::LotRecordAttribute::getFileName ( ) const

Liefert die Bezeichnung der Datei, in der der Elementkontainer untergebracht werden soll.

Rückgabe
Die Dateibezeichnung.
Achtung
Die Dateibezeichnung wird ohne Pfad und ohne Dateierweiterung gehalten.

◆ getFormattedFieldContents()

virtual int glo::LotRecordAttribute::getFormattedFieldContents ( std::string & rsRetVal,
DATA_REFERENCE_INFO & rRetValInfo,
ObjID ObjID )
virtual

Liefert die Bezeichnung der externen Datei mit den Daten des Attributs und eine Information ob diese neu geschrieben, behalten oder gelöscht werden muss, wenn es einen zu speichernden Inhalt gibt. Es wird die Bezeichnung der externen Datei auch im Attribut m_sFileName gesetzt.

Parameter
[in,out]rsRetValDie Bezeichnung der externen Datei mit den Daten des Attributs.
[in,out]rRetValInfoDie Information wie mit der externen Datei umgegangen werden soll.
[in]ObjIDFalls ein Dateiname kreiert werden muss, wird dieser aus dieser Objekt-ID gebildet. I.d.R. ist dies die Objekt-ID des Objektes mit diesem Attribut. Wenn eine ungültige ObjID (ObjID.isNULL()) übergeben wird, wird eine, nur mit Leerzeichen gefüllteter Bezeichnung geliefert.
Rückgabe
Ein Rückgabewert < 0 zeigt einen Fehler an.

Erneute Implementation von glo::BaseRecordAttribute.

◆ getValueAsDataString()

virtual std::string glo::LotRecordAttribute::getValueAsDataString ( ) const
virtual

Kann den Wert nicht als String liefern, liefert stattdessen "?".

Rückgabe
"?".

Implementiert glo::BaseRecordAttribute.

◆ getValueAsDisplayString()

virtual std::string glo::LotRecordAttribute::getValueAsDisplayString ( ) const
virtual

Liefert den Wert, wie er für das GUI angezeigt werden kann, den Typ und die Anzahl der Objekte im Elementkontainer.

Rückgabe
Der Wert für die Anzeige.

Implementiert glo::BaseRecordAttribute.

◆ getValueAsStreamString()

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

Kann den Wert nicht als String liefern, liefert stattdessen "?".

Rückgabe
"?".

Implementiert glo::BaseRecordAttribute.

Erneute Implementation in glo::OdRefListRecordAttribute, glo::OdRefSetRecordAttribute, glo::PoRefListRecordAttribute und glo::PoRefSetRecordAttribute.

◆ getValueAsString()

virtual std::string glo::LotRecordAttribute::getValueAsString ( ) const
virtual

Kann den Wert nicht als String liefern, liefert stattdessen "?".

Rückgabe
"?".

Implementiert glo::BaseRecordAttribute.

◆ getValueSize()

◆ initNew()

virtual void glo::LotRecordAttribute::initNew ( )
virtual

Initialisiert das Attribut neu, der Elementkontainer wird geleert.

Siehe auch
clearValueLot()

Implementiert glo::BaseRecordAttribute.

◆ operator!=()

bool glo::LotRecordAttribute::operator!= ( const LotRecordAttribute & rT) const

Vergleichsoperator.

Parameter
[in]rTDas mit diesem zu vergleichende Objekt.

◆ operator=()

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

Der Zuweisungsoperator steht nicht zur Verfügung.

◆ operator==()

bool glo::LotRecordAttribute::operator== ( const LotRecordAttribute & rT) const

Vergleichsoperator.

Parameter
[in]rTDas mit diesem zu vergleichende Objekt.

◆ setDeterminedFileNameFromAttributeValue()

void glo::LotRecordAttribute::setDeterminedFileNameFromAttributeValue ( ObjID ObjID)

Setzt die ermittelte Bezeichnung der Datei, in welcher der Elementkontainer untergebracht werden soll, wenn es was zu speichern gibt.

Parameter
[in]ObjIDFalls ein Dateiname kreiert werden muss, wird die Dateibezeichnung aus dieser Objekt-ID gebildet. I.d.R. ist dies die Objekt-ID des Objektes, dessen Attributwert erfragt wird.

◆ setFileName()

void glo::LotRecordAttribute::setFileName ( const std::string & rsFileName)

Setzt die Bezeichnung der Datei, in der der Elementkontainer untergebracht werden soll.

Parameter
[in]rsFileNameDie Dateibezeichnung.
Achtung
Die Dateibezeichnung wird ohne Pfad und ohne Dateierweiterung übergeben, falls jemand in die Verlegenheit kommt, diese Methode selbst aufrufen zu müssen.

◆ streamValueListInFileStream()

virtual void glo::LotRecordAttribute::streamValueListInFileStream ( std::ofstream & rFileStream)
protectedpure virtual

Überträgt in Unterklassen für 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 in glo::DoubleListRecordAttribute, glo::DoubleSetRecordAttribute, glo::DoubleVectorRecordAttribute, glo::IntListRecordAttribute, glo::IntSetRecordAttribute, glo::IntVectorRecordAttribute, glo::OdRefListRecordAttribute, glo::OdRefSetRecordAttribute, glo::PoRefListRecordAttribute, glo::PoRefSetRecordAttribute, glo::StringListRecordAttribute, glo::StringSetRecordAttribute und glo::StringVectorRecordAttribute.

◆ updateDataReference()

virtual int glo::LotRecordAttribute::updateDataReference ( const std::string & rsDataPath,
DATA_REFERENCE_INFO MethodInfo )
virtual

Löscht bzw. speichert eine externe Datei mit den Daten des Attributs.

Parameter
[in]rsDataPathDer vollständigen Verzeichnisnamen, in dem die Daten zu finden sind. Die Daten liegen immer in einem Unterverzeichnis von dem Verzeichnis, in dem die Schemadatei liegt.
[in]MethodInfoDie Information wie mit einer externen Datei umgegangen werden soll.
Rückgabe
Ein Rückgabewert < 0 zeigt einen Fehler an.

Erneute Implementation von glo::BaseRecordAttribute.

Dokumentation der Datenelemente

◆ m_sFileName

std::string glo::LotRecordAttribute::m_sFileName
protected

Elementkontainer sind in Dateien gespeichert, hier die Dateibezeichnung.


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