34 #ifndef EphemerisRow_CLASS
35 #define EphemerisRow_CLASS
303 std::vector<std::vector<double > >
getDir()
const;
315 void setDir (std::vector<std::vector<double > >
dir);
604 asdmIDL::EphemerisRowIDL *
toIDL()
const;
613 void toIDL(asdmIDL::EphemerisRowIDL& x)
const;
622 void setFromIDL (asdmIDL::EphemerisRowIDL x) ;
629 std::string
toXML()
const;
675 void fromText(
const std::string& attributeName,
const std::string& t);
785 std::vector<std::vector<double > >
dir;
void numPolyDistFromBin(EndianIStream &eis)
std::vector< double > distance
===> Attribute distance
void setTimeOrigin(ArrayTime timeOrigin)
Set timeOrigin with the specified ArrayTime.
bool radVelExists
===> Attribute radVel, which is optional
void numPolyDistFromText(const std::string &s)
int getNumPolyDist() const
===> Attribute numPolyDist
void setEquinoxEquator(double equinoxEquator)
Set equinoxEquator with the specified double.
void setOrigin(std::string origin)
Set origin with the specified std::string.
The EphemerisTable class is an Alma table.
std::vector< double > getRadVel() const
Get radVel, which is optional.
void clearRadVel()
Mark radVel, which is an optional field, as non-existent.
int numPolyDir
===> Attribute numPolyDir
The ArrayTimeInterval class aggregates an instance of ArrayTime and an instance of Interval...
bool compareRequiredValue(std::vector< double > observerLocation, double equinoxEquator, int numPolyDir, std::vector< std::vector< double > > dir, int numPolyDist, std::vector< double > distance, ArrayTime timeOrigin, std::string origin)
Compare each mandatory value (i.e.
void timeOriginFromText(const std::string &s)
EphemerisTable & getTable() const
Return the table to which this row belongs.
void dirFromBin(EndianIStream &eis)
std::vector< double > observerLocation
===> Attribute observerLocation
int getNumPolyDir() const
===> Attribute numPolyDir
void setDistance(std::vector< double > distance)
Set distance with the specified std::vector<double >.
std::vector< double > getDistance() const
===> Attribute distance
void setFromIDL(asdmIDL::EphemerisRowIDL x)
Fill the values of this row from the IDL struct EphemerisRowIDL.
void setNumPolyRadVel(int numPolyRadVel)
Set numPolyRadVel with the specified int.
void radVelFromBin(EndianIStream &eis)
void distanceFromText(const std::string &s)
void toBin(EndianOSStream &eoss)
Serialize this into a stream of bytes written to an EndianOSStream.
EphemerisRow(EphemerisTable &table)
Create a EphemerisRow.
void numPolyRadVelFromBin(EndianIStream &eis)
EphemerisTable & table
The table to which this row belongs.
Extrinsic Table Attributes Links *binary deserialization material from an EndianIStream std::map< std::string, EphemerisAttributeFromBin > fromBinMethods
bool equalByRequiredValue(EphemerisRow *x)
Return true if all required attributes of the value part are equal to their homologues in x and false...
void timeIntervalFromText(const std::string &s)
double getEquinoxEquator() const
===> Attribute equinoxEquator
double equinoxEquator
===> Attribute equinoxEquator
The EphemerisRow class is a row of a EphemerisTable.
void radVelFromText(const std::string &s)
*text deserialization material std::map< std::string, EphemerisAttributeFromText > fromTextMethods
int getEphemerisId() const
===> Attribute ephemerisId
void setEphemerisId(int ephemerisId)
Set ephemerisId with the specified int.
void dirFromText(const std::string &s)
void setRadVel(std::vector< double > radVel)
Set radVel with the specified std::vector<double >.
void numPolyDirFromText(const std::string &s)
void setNumPolyDir(int numPolyDir)
Set numPolyDir with the specified int.
void equinoxEquatorFromBin(EndianIStream &eis)
std::vector< double > getObserverLocation() const
===> Attribute observerLocation
void timeIntervalFromBin(EndianIStream &eis)
ArrayTime timeOrigin
===> Attribute timeOrigin
void numPolyRadVelFromText(const std::string &s)
int ephemerisId
===> Attribute ephemerisId
void numPolyDirFromBin(EndianIStream &eis)
std::vector< double > radVel
Extrinsic Table Attributes Links *bool compareNoAutoInc(ArrayTimeInterval timeInterval, int ephemerisId, std::vector< double > observerLocation, double equinoxEquator, int numPolyDir, std::vector< std::vector< double > > dir, int numPolyDist, std::vector< double > distance, ArrayTime timeOrigin, std::string origin)
Compare each mandatory attribute except the autoincrementable one of this EphemerisRow with the corre...
The ArrayTime class implements the concept of a point in time, implemented as an Interval of time sin...
bool numPolyRadVelExists
===> Attribute numPolyRadVel, which is optional
void setTimeInterval(ArrayTimeInterval timeInterval)
Set timeInterval with the specified ArrayTimeInterval.
void ephemerisIdFromText(const std::string &s)
int getNumPolyRadVel() const
Get numPolyRadVel, which is optional.
bool isNumPolyRadVelExists() const
===> Attribute numPolyRadVel, which is optional
bool isAdded() const
Has this row been added to its table ?
void setFromXML(std::string rowDoc)
Fill the values of this row from an XML string that was produced by the toXML() method.
void distanceFromBin(EndianIStream &eis)
virtual ~EphemerisRow()
friend class asdm::TableStreamReader<EphemerisTable, EphemerisRow>;
std::vector< std::vector< double > > getDir() const
===> Attribute dir
asdmIDL::EphemerisRowIDL * toIDL() const
Return this row in the form of an IDL struct.
std::string origin
===> Attribute origin
bool hasBeenAdded
Whether this row has been added to the table or not.
void(EphemerisRow::* EphemerisAttributeFromBin)(EndianIStream &eis)
void originFromBin(EndianIStream &eis)
int numPolyDist
===> Attribute numPolyDist
std::string getOrigin() const
===> Attribute origin
void timeOriginFromBin(EndianIStream &eis)
void setObserverLocation(std::vector< double > observerLocation)
Set observerLocation with the specified std::vector<double >.
std::vector< std::vector< double > > dir
===> Attribute dir
void setNumPolyDist(int numPolyDist)
Set numPolyDist with the specified int.
void ephemerisIdFromBin(EndianIStream &eis)
void originFromText(const std::string &s)
void(EphemerisRow::* EphemerisAttributeFromText)(const std::string &s)
bool isRadVelExists() const
===> Attribute radVel, which is optional
std::string toXML() const
Return this row in the form of an XML string.
void clearNumPolyRadVel()
Mark numPolyRadVel, which is an optional field, as non-existent.
ArrayTime getTimeOrigin() const
===> Attribute timeOrigin
void observerLocationFromText(const std::string &s)
void equinoxEquatorFromText(const std::string &s)
void observerLocationFromBin(EndianIStream &eis)
void setDir(std::vector< std::vector< double > > dir)
Set dir with the specified std::vector<std::vector<double > >.