34 #ifndef FieldRow_CLASS
35 #define FieldRow_CLASS
162 Tag getFieldId()
const;
242 std::vector<std::vector<Angle > >
getDelayDir()
const;
272 std::vector<std::vector<Angle > >
getPhaseDir()
const;
539 bool isAssocFieldIdExists()
const;
668 std::vector <EphemerisRow *> getEphemeriss();
764 asdmIDL::FieldRowIDL *
toIDL()
const;
773 void toIDL(asdmIDL::FieldRowIDL& x)
const;
789 std::string
toXML()
const;
837 void fromText(
const std::string& attributeName,
const std::string& t);
1038 bool assocFieldIdExists;
void codeFromText(const std::string &s)
std::string getFieldName() const
===> Attribute fieldName
bool isEphemerisIdExists() const
===> Attribute ephemerisId, which is optional
int numPoly
===> Attribute numPoly
void delayDirFromText(const std::string &s)
void setAssocFieldId(Tag assocFieldId)
Set assocFieldId with the specified Tag.
std::string getCode() const
Get code, which is optional.
bool isTimeExists() const
===> Attribute time, which is optional
void clearTime()
Mark time, which is an optional field, as non-existent.
void phaseDirFromBin(EndianIStream &eis)
void setFieldId(Tag fieldId)
Set fieldId with the specified Tag value.
std::vector< std::vector< Angle > > referenceDir
===> Attribute referenceDir
asdmIDL::FieldRowIDL * toIDL() const
Return this row in the form of an IDL struct.
The FieldTable class is an Alma table.
std::vector< SourceRow * > getSources()
===> Slice link from a row of Field table to a collection of row of Source table. ...
void(FieldRow::* FieldAttributeFromBin)(EndianIStream &eis)
bool assocNatureExists
===> Attribute assocNature, which is optional
DirectionReferenceCodeMod::DirectionReferenceCode getDirectionCode() const
Get directionCode, which is optional.
ArrayTime getDirectionEquinox() const
Get directionEquinox, which is optional.
bool equalByRequiredValue(FieldRow *x)
Return true if all required attributes of the value part are equal to their homologues in x and false...
std::vector< std::vector< Angle > > getReferenceDir() const
===> Attribute referenceDir
bool compareNoAutoInc(std::string fieldName, int numPoly, std::vector< std::vector< Angle > > delayDir, std::vector< std::vector< Angle > > phaseDir, std::vector< std::vector< Angle > > referenceDir)
Compare each mandatory attribute except the autoincrementable one of this FieldRow with the correspon...
int getNumPoly() const
===> Attribute numPoly
void assocFieldIdFromText(const std::string &s)
void setDirectionEquinox(ArrayTime directionEquinox)
Set directionEquinox with the specified ArrayTime.
void sourceIdFromText(const std::string &s)
void(FieldRow::* FieldAttributeFromText)(const std::string &s)
void directionCodeFromBin(EndianIStream &eis)
void delayDirFromBin(EndianIStream &eis)
void phaseDirFromText(const std::string &s)
std::vector< std::vector< Angle > > getPhaseDir() const
===> Attribute phaseDir
int getEphemerisId() const
Get ephemerisId, which is optional.
bool isDirectionCodeExists() const
===> Attribute directionCode, which is optional
void setReferenceDir(std::vector< std::vector< Angle > > referenceDir)
Set referenceDir with the specified std::vector<std::vector<Angle > >.
void setFromIDL(asdmIDL::FieldRowIDL x)
Fill the values of this row from the IDL struct FieldRowIDL.
void sourceIdFromBin(EndianIStream &eis)
bool sourceIdExists
===> Attribute sourceId, which is optional
void numPolyFromBin(EndianIStream &eis)
virtual ~FieldRow()
friend class asdm::TableStreamReader<FieldTable, FieldRow>;
void referenceDirFromText(const std::string &s)
void ephemerisIdFromBin(EndianIStream &eis)
void assocFieldIdFromBin(EndianIStream &eis)
void setPhaseDir(std::vector< std::vector< Angle > > phaseDir)
Set phaseDir with the specified std::vector<std::vector<Angle > >.
bool compareRequiredValue(std::string fieldName, int numPoly, std::vector< std::vector< Angle > > delayDir, std::vector< std::vector< Angle > > phaseDir, std::vector< std::vector< Angle > > referenceDir)
Compare each mandatory value (i.e.
bool directionEquinoxExists
===> Attribute directionEquinox, which is optional
std::vector< std::vector< Angle > > getDelayDir() const
===> Attribute delayDir
void referenceDirFromBin(EndianIStream &eis)
void assocNatureFromText(const std::string &s)
void fieldIdFromText(const std::string &s)
void setAssocNature(std::string assocNature)
Set assocNature with the specified std::string.
std::string getAssocNature() const
Get assocNature, which is optional.
void numPolyFromText(const std::string &s)
void clearSourceId()
Mark sourceId, which is an optional field, as non-existent.
void setSourceId(int sourceId)
Set sourceId with the specified int.
int getSourceId() const
Get sourceId, which is optional.
Links *binary deserialization material from an EndianIStream std::map< std::string, FieldAttributeFromBin > fromBinMethods
std::string toXML() const
Return this row in the form of an XML string.
bool codeExists
===> Attribute code, which is optional
void timeFromText(const std::string &s)
ArrayTime getTime() const
Get time, which is optional.
void clearDirectionEquinox()
Mark directionEquinox, which is an optional field, as non-existent.
FieldTable & table
The table to which this row belongs.
void clearDirectionCode()
Mark directionCode, which is an optional field, as non-existent.
void directionCodeFromText(const std::string &s)
void ephemerisIdFromText(const std::string &s)
bool isAdded() const
Has this row been added to its table ?
void fieldNameFromBin(EndianIStream &eis)
The ArrayTime class implements the concept of a point in time, implemented as an Interval of time sin...
void setTime(ArrayTime time)
Set time with the specified ArrayTime.
bool directionCodeExists
===> Attribute directionCode, which is optional
bool isCodeExists() const
===> Attribute code, which is optional
void setDirectionCode(DirectionReferenceCodeMod::DirectionReferenceCode directionCode)
Set directionCode with the specified DirectionReferenceCodeMod::DirectionReferenceCode.
void assocNatureFromBin(EndianIStream &eis)
FieldRow(FieldTable &table)
Create a FieldRow.
void toBin(EndianOSStream &eoss)
Serialize this into a stream of bytes written to an EndianOSStream.
The Tag class is an implementation of a unique index identifying a row of an ASDM table...
void setFieldName(std::string fieldName)
Set fieldName with the specified std::string.
void codeFromBin(EndianIStream &eis)
FieldRow * getFieldUsingAssocFieldId()
assocFieldId pointer to the row in the Field table having Field.assocFieldId == assocFieldId ...
bool isSourceIdExists() const
===> Attribute sourceId, which is optional
void timeFromBin(EndianIStream &eis)
bool timeExists
===> Attribute time, which is optional
void clearAssocNature()
Mark assocNature, which is an optional field, as non-existent.
std::string fieldName
===> Attribute fieldName
The FieldRow class is a row of a FieldTable.
void directionEquinoxFromBin(EndianIStream &eis)
void setNumPoly(int numPoly)
Set numPoly with the specified int.
void fieldNameFromText(const std::string &s)
void setCode(std::string code)
Set code with the specified std::string.
void fieldIdFromBin(EndianIStream &eis)
bool ephemerisIdExists
===> Attribute ephemerisId, which is optional
void clearEphemerisId()
Mark ephemerisId, which is an optional field, as non-existent.
void clearAssocFieldId()
Mark assocFieldId, which is an optional field, as non-existent.
void setDelayDir(std::vector< std::vector< Angle > > delayDir)
Set delayDir with the specified std::vector<std::vector<Angle > >.
bool hasBeenAdded
Whether this row has been added to the table or not.
bool isAssocNatureExists() const
===> Attribute assocNature, which is optional
FieldTable & getTable() const
Return the table to which this row belongs.
Tag getAssocFieldId() const
Get assocFieldId, which is optional.
void setFromXML(std::string rowDoc)
Fill the values of this row from an XML string that was produced by the toXML() method.
void setEphemerisId(int ephemerisId)
Set ephemerisId with the specified int.
std::vector< std::vector< Angle > > phaseDir
===> Attribute phaseDir
void clearCode()
Mark code, which is an optional field, as non-existent.
ArrayTime directionEquinox
DirectionReferenceCodeMod::DirectionReferenceCode directionCode
bool isDirectionEquinoxExists() const
===> Attribute directionEquinox, which is optional
std::vector< std::vector< Angle > > delayDir
===> Attribute delayDir
void directionEquinoxFromText(const std::string &s)
*text deserialization material std::map< std::string, FieldAttributeFromText > fromTextMethods