34 #ifndef PulsarRow_CLASS
35 #define PulsarRow_CLASS
157 Tag getPulsarId()
const;
633 asdmIDL::PulsarRowIDL *
toIDL()
const;
642 void toIDL(asdmIDL::PulsarRowIDL& x)
const;
658 std::string
toXML()
const;
704 void fromText(
const std::string& attributeName,
const std::string& t);
PulsarRow(PulsarTable &table)
Create a PulsarRow.
bool isTimeSpanExists() const
===> Attribute timeSpan, which is optional
std::string toXML() const
Return this row in the form of an XML string.
void refTimeFromText(const std::string &s)
The Interval class implements an interval of time in units of nanoseconds.
void refTimeFromBin(EndianIStream &eis)
virtual ~PulsarRow()
friend class asdm::TableStreamReader<PulsarTable, PulsarRow>;
void numBinFromBin(EndianIStream &eis)
void clearTimeSpan()
Mark timeSpan, which is an optional field, as non-existent.
void endPhaseBinFromBin(EndianIStream &eis)
void refFrequencyFromText(const std::string &s)
Frequency getRefPulseFreq() const
===> Attribute refPulseFreq
void clearRefFrequency()
Mark refFrequency, which is an optional field, as non-existent.
void setRefPhase(double refPhase)
Set refPhase with the specified double.
asdmIDL::PulsarRowIDL * toIDL() const
Return this row in the form of an IDL struct.
double refPhase
===> Attribute refPhase
void refPulseFreqFromText(const std::string &s)
void refPulseFreqFromBin(EndianIStream &eis)
void setRefFrequency(Frequency refFrequency)
Set refFrequency with the specified Frequency.
double getDispersionMeasure() const
Get dispersionMeasure, which is optional.
void phasePolyFromText(const std::string &s)
bool endPhaseBinExists
===> Attribute endPhaseBin, which is optional
bool hasBeenAdded
Whether this row has been added to the table or not.
Interval getTimeSpan() const
Get timeSpan, which is optional.
bool isPhasePolyExists() const
===> Attribute phasePoly, which is optional
void setEndPhaseBin(std::vector< float > endPhaseBin)
Set endPhaseBin with the specified std::vector<float >.
void endPhaseBinFromText(const std::string &s)
void dispersionMeasureFromBin(EndianIStream &eis)
void startPhaseBinFromText(const std::string &s)
void toBin(EndianOSStream &eoss)
Serialize this into a stream of bytes written to an EndianOSStream.
void refPhaseFromBin(EndianIStream &eis)
void clearEndPhaseBin()
Mark endPhaseBin, which is an optional field, as non-existent.
void clearNumPoly()
Mark numPoly, which is an optional field, as non-existent.
bool isNumPolyExists() const
===> Attribute numPoly, which is optional
bool timeSpanExists
===> Attribute timeSpan, which is optional
Frequency getRefFrequency() const
Get refFrequency, which is optional.
void setTimeSpan(Interval timeSpan)
Set timeSpan with the specified Interval.
std::vector< double > phasePoly
void setDispersionMeasure(double dispersionMeasure)
Set dispersionMeasure with the specified double.
std::vector< float > getEndPhaseBin() const
Get endPhaseBin, which is optional.
PulsarTable & table
The table to which this row belongs.
void setPulsarId(Tag pulsarId)
Set pulsarId with the specified Tag value.
void timeSpanFromText(const std::string &s)
The PulsarTable class is an Alma table.
void pulsarIdFromText(const std::string &s)
Frequency refPulseFreq
===> Attribute refPulseFreq
void refFrequencyFromBin(EndianIStream &eis)
int getNumPoly() const
Get numPoly, which is optional.
std::vector< float > startPhaseBin
void setNumPoly(int numPoly)
Set numPoly with the specified int.
void(PulsarRow::* PulsarAttributeFromBin)(EndianIStream &eis)
std::vector< double > getPhasePoly() const
Get phasePoly, which is optional.
void clearDispersionMeasure()
Mark dispersionMeasure, which is an optional field, as non-existent.
void numPolyFromBin(EndianIStream &eis)
ArrayTime refTime
===> Attribute refTime
PulsarTable & getTable() const
Return the table to which this row belongs.
The ArrayTime class implements the concept of a point in time, implemented as an Interval of time sin...
void numPolyFromText(const std::string &s)
The PulsarRow class is a row of a PulsarTable.
void setFromXML(std::string rowDoc)
Fill the values of this row from an XML string that was produced by the toXML() method.
void(PulsarRow::* PulsarAttributeFromText)(const std::string &s)
The Tag class is an implementation of a unique index identifying a row of an ASDM table...
void setRefPulseFreq(Frequency refPulseFreq)
Set refPulseFreq with the specified Frequency.
double getRefPhase() const
===> Attribute refPhase
Extrinsic Table Attributes Links *binary deserialization material from an EndianIStream std::map< std::string, PulsarAttributeFromBin > fromBinMethods
bool numPolyExists
===> Attribute numPoly, which is optional
void startPhaseBinFromBin(EndianIStream &eis)
void setNumBin(int numBin)
Set numBin with the specified int.
bool isEndPhaseBinExists() const
===> Attribute endPhaseBin, which is optional
void setStartPhaseBin(std::vector< float > startPhaseBin)
Set startPhaseBin with the specified std::vector<float >.
int numBin
===> Attribute numBin
bool equalByRequiredValue(PulsarRow *x)
Return true if all required attributes of the value part are equal to their homologues in x and false...
bool isDispersionMeasureExists() const
===> Attribute dispersionMeasure, which is optional
bool isAdded() const
Has this row been added to its table ?
Extrinsic Table Attributes Links *bool compareNoAutoInc(ArrayTime refTime, Frequency refPulseFreq, double refPhase, int numBin)
Compare each mandatory attribute except the autoincrementable one of this PulsarRow with the correspo...
bool compareRequiredValue(ArrayTime refTime, Frequency refPulseFreq, double refPhase, int numBin)
Compare each mandatory value (i.e.
void pulsarIdFromBin(EndianIStream &eis)
void clearStartPhaseBin()
Mark startPhaseBin, which is an optional field, as non-existent.
std::vector< float > getStartPhaseBin() const
Get startPhaseBin, which is optional.
bool startPhaseBinExists
===> Attribute startPhaseBin, which is optional
bool dispersionMeasureExists
===> Attribute dispersionMeasure, which is optional
void dispersionMeasureFromText(const std::string &s)
int getNumBin() const
===> Attribute numBin
void refPhaseFromText(const std::string &s)
void setRefTime(ArrayTime refTime)
Set refTime with the specified ArrayTime.
void timeSpanFromBin(EndianIStream &eis)
void numBinFromText(const std::string &s)
bool phasePolyExists
===> Attribute phasePoly, which is optional
The Frequency class implements a quantity of frequency in hertz.
bool isRefFrequencyExists() const
===> Attribute refFrequency, which is optional
void setFromIDL(asdmIDL::PulsarRowIDL x)
Fill the values of this row from the IDL struct PulsarRowIDL.
*text deserialization material std::map< std::string, PulsarAttributeFromText > fromTextMethods
ArrayTime getRefTime() const
===> Attribute refTime
std::vector< float > endPhaseBin
void phasePolyFromBin(EndianIStream &eis)
bool refFrequencyExists
===> Attribute refFrequency, which is optional
bool isStartPhaseBinExists() const
===> Attribute startPhaseBin, which is optional
void setPhasePoly(std::vector< double > phasePoly)
Set phasePoly with the specified std::vector<double >.
void clearPhasePoly()
Mark phasePoly, which is an optional field, as non-existent.