CARMA C++
carma::monitor::MonitorPointNumeric Class Referenceabstract

Abstract base class for a numeric monitor point. More...

#include <carma/monitor/MonitorPointNumeric.h>

Inheritance diagram for carma::monitor::MonitorPointNumeric:
carma::monitor::MonitorPoint carma::monitor::MonitorComponent carma::monitor::MonitorPointByte carma::monitor::MonitorPointChar carma::monitor::MonitorPointInt carma::monitor::MonitorPointReal carma::monitor::MonitorPointShort carma::monitor::MonitorPointAbstime carma::monitor::MonitorPointDouble carma::monitor::MonitorPointFloat

Public Member Functions

virtual void accumulate (MonitorPointAverageNumeric &average) const
 Accumulates data from monitor point samples belonging this monitor point. More...
 
virtual void accumulateAverage (MonitorPointAverageNumeric &accumulator)
 Accumulates pre-calculated average value from current monitor point for computing averages. More...
 
virtual enum MonitorPoint::VALIDITY accumulateSample (MonitorPointAverageNumeric &average, int index) const
 Accumulates data from one monitor point sample (sample index == index) belonging this monitor point. More...
 
double getAccumulatedAverageDouble (const MonitorPointAverageNumeric &average) const
 Computes average from accumulated data in MonitorPointAverageNumeric object. More...
 
virtual double getAveNumeric () const =0
 Returns average sample value as a double. More...
 
double getMaxValueDouble (const MonitorPointAverageNumeric &average) const
 Returns maximum value from accumulated data in MonitorPointAverageNumeric object. More...
 
double getMinValueDouble (const MonitorPointAverageNumeric &average) const
 Returns minimum value from accumulated data in MonitorPointAverageNumeric object. More...
 
virtual double getValueNumeric (int sampleIndex) const =0
 Returns sample value as a double. More...
 
bool operator== (const MonitorComponent &component) const
 Compares monitor point for equality to the monitor component passed. More...
 
virtual void resetAccumulator (MonitorPointAverageNumeric &average) const
 Resets accumulators and sample count for computing averages. More...
 
void setTimeSeries (bool timeSeries)
 Determines whether data should be interpreted as time series or as an array (spectrum) when there are multiple samples per frame. More...
 
virtual ~MonitorPointNumeric ()
 Destructor. More...
 
- Public Member Functions inherited from carma::monitor::MonitorPoint
std::string archivePriorityToString () const
 Get a string for the archive priority for this monitor point. More...
 
void checkThreshold (const MonitorPointThreshold &threshold) const
 Method checks that threshold object corresponds to this monitor point - checks to see that threshold's tagID == this monitor point's tagID, and that value type of threshold == value type of this monitor point. More...
 
void clearComment ()
 Clear all comment attributes for the monitor point. More...
 
virtual std::string dumpSamples (bool includeAverage=true, bool includeValidity=true) const
 Create a string with sample and average values and validities. More...
 
bool errorHighDefaultIsSet () const
 Returns true if a default value was set for errorHigh for this monitor point. More...
 
bool errorLowDefaultIsSet () const
 Returns true if a default value was set for errorLow for this monitor point. More...
 
virtual void evaluateTolerance (const MonitorPointThreshold &threshold)
 Set the validity flags for the MonitorPoint using the threshold limits stored in the input MonitorPointThreshold object. More...
 
ARCHIVE_PRIORITY getArchivePriority () const
 Get the archive priority. More...
 
virtual std::string getAverageToString () const =0
 Abstract method that returns the average value as a string. More...
 
virtual VALIDITY getAveValidity () const
 Get the validity for the average. More...
 
BLANKING_FLAGGING getBlankingFlagging () const
 Get the blanking/flagging flag for the average. More...
 
std::string getComment () const
 Get a comment for the monitor point. More...
 
double getCommentTime () const
 Get time last comment was inserted. More...
 
std::string getCommentUser () const
 Get username that generated comment for the monitor point. More...
 
std::string getCoreValueAsString (int sampleIndex=0) const
 Get value as a string using the underlying basic type representation. More...
 
MonitorValue getErrorHighDefault () const
 Get the upper error default threshold. More...
 
MonitorValue getErrorLowDefault () const
 Get the upper error default threshold. More...
 
MonitorPointSample getMonitorPointSample (int sampleIndex) const
 Get the monitor point sample. More...
 
MonitorPointSample getMonitorPointSample0 () const
 
MONITOR_POINT_TYPE getMonitorPointType () const
 Get the type of the monitor point. More...
 
int getNumSamples () const
 Get the number of samples per frame. More...
 
int getNumValidSamples () const
 Get the number of valid samples per frame. More...
 
std::string getPaddedAverageString (int width) const
 Gets the average value as a string, padded to requested width. More...
 
std::string getPaddedAverageString () const
 Gets the average value as a string, padded to internal width. More...
 
std::string getPaddedValueString (int width, int sampleIndex) const
 Gets the data value as a string, padded to requested width. More...
 
std::string getPaddedValueString (int sampleIndex) const
 Gets the data value as a string, padded to internal width. More...
 
short getPrecision () const
 Get the number of digits to the right of the decimal point when translating the value to a string. More...
 
MonitorPointSample getSampleAverage () const
 
tagIDType getTagID () const
 Get the tagID (unique identifier of monitor point). More...
 
std::string getUnits () const
 Get the units string for the monitor point. More...
 
int getUpdateInterval () const
 Get the basic sampling update interval in frames. More...
 
VALIDITY getValidity (int sampleIndex) const
 Get the validity flag for a sample. More...
 
VALIDITY getValidity () const
 
virtual std::string getValueToString (int sampleIndex) const =0
 Abstract method that returns the data value as a string. More...
 
MonitorValueType getValuetype () const
 Get the datatype of the value. More...
 
MonitorValue getWarnHighDefault () const
 Get the upper warning default threshold. More...
 
MonitorValue getWarnLowDefault () const
 Get the lower warning default threshold. More...
 
virtual short getWidth () const
 Get the string length to use when interpreting the value to a string. More...
 
bool hasAllData () const
 See if all MPs in this component and below have data samples. More...
 
virtual ::std::string hierarchyToString (bool canonical=false, bool verbose=false, bool value=true, int sampleIndex=0, int indent=0, int levels=-1) const
 Dump this and all contained monitor components to a string. More...
 
virtual ::std::string hierarchyToStringAverage (bool canonical=false, bool verbose=false, bool value=true, int indent=0, int levels=-1) const
 Dump this and all contained monitor components to a string. More...
 
virtual void hierarchyToVector (::std::vector< ::std::string > &hierarchyList, bool canonical=false, bool verbose=false, int sampleIndex=0) const
 Dump this and all contained monitor component strings into a map hierarchy. More...
 
bool isAveValid () const
 Check to see if the average is valid. More...
 
virtual bool isMonitorPoint () const
 Identifies this component as a MonitorPoint or any derivative Should be over-ridden by the MonitorPoint class; others that don't derive from MP can use this default implementation. More...
 
bool isPersistent () const
 Returns the persistent state of the data. More...
 
bool isSnapshotAverage () const
 Returns state of snapshot averaging for this MP. More...
 
bool isTimeSeries () const
 Are multiple samples in a frame a time series or an array. More...
 
bool isValid (int sampleIndex) const
 Check if this monitor point validity is any of the valid states. More...
 
bool isValid () const
 
virtual std::string leafToString (bool verbose=false, bool value=true, int sampleIndex=0) const
 Dump all leaf nodes below this component to a string. More...
 
 MonitorPoint (const std::string &name, MonitorValueType valuetype, MONITOR_POINT_TYPE monitorPointType=MONITOR)
 Constructor, name is later used to lookup the tagID. More...
 
virtual std::string monitorPointTags (bool untagged=false) const
 Write list of monitor points and their tagIDs to a string, one monitor point per line. More...
 
std::string monitorPointTypeToString () const
 Get a string representation for the monitor point type of this monitor point. More...
 
virtual bool operator< (const MonitorPoint &rhs) const
 Compares monitor point for precedence to the one passed. More...
 
virtual bool operator== (const MonitorPoint &rhs) const
 Compares monitor point for equality to the one passed. More...
 
void setAllValidity (VALIDITY validity, bool markMpAsModified=true) const
 Set the validity for all samples and the average. More...
 
void setArchivePriority (ARCHIVE_PRIORITY priority)
 Set the archive priority Priority may be used by archiver to control data volume.,. More...
 
void setAveValidity (VALIDITY validity) const
 Set the validity for the average. More...
 
void setBlankingFlagging (BLANKING_FLAGGING flag) const
 Set the blanking/flagging flag for the average. More...
 
void setComment (const std::string &text)
 Set a comment for the monitor point. More...
 
void setComment (const std::string &text, const std::string &user, double mjd)
 Set all comment attributes for the monitor point. More...
 
void setDefaultArchivePriority (ARCHIVE_PRIORITY priority)
 Set the default archive priority If the archive priority is set to DEFAULT, it is replaced with the new priority. More...
 
void setErrorHighDefault (const MonitorValue threshold)
 Set the upper error default threshold. More...
 
void setErrorLowDefault (const MonitorValue threshold)
 Set the upper error default threshold. More...
 
void setMonitorPointHeader (MonitorPointHeader header)
 Set the monitor point header. More...
 
void setNoData () const
 Recursively mark all data samples as INVALID_NO_DATA. More...
 
virtual void setNumSamples (int nSamples) const
 Set the number of samples per frame. More...
 
void setPersistent (bool persistent)
 Set the persistent state of the data. More...
 
void setPrecision (short precision)
 Set the number of digits to the right of the decimal point when translating the value to a string. More...
 
void setSnapshotAverage (bool state)
 Controls whether averaging is done as a normal true average or if it is just a snapshot of the last value. More...
 
void setTagID (tagIDType tagID, bool assignedOTF)
 Set tagID. More...
 
void setUnits (const std::string &units)
 Get the units string for the monitor point. More...
 
void setUpdateInterval (int interval)
 Set the basic sampling update interval. More...
 
void setValidity (VALIDITY validity, int sampleIndex=0) const
 Set the validity for a single sample. More...
 
void setWarnHighDefault (const MonitorValue threshold)
 Set the upper warning default threshold. More...
 
void setWarnLowDefault (const MonitorValue threshold)
 Set the lower warning default threshold. More...
 
void setWidth (short width) const
 Set the maximum width(length) of the string for interpreting the value to a string. More...
 
std::string toString (bool canonicalName=false, bool verbose=false, bool value=true, int sampleIndex=0, int indent=0) const
 Write this monitor component to a string. More...
 
std::string toStringAverage (bool canonicalName=false, bool verbose=false, bool value=true, int indent=0) const
 Write this monitor component to a string, using frame average values. More...
 
virtual std::string toStringShort (int sampleIndex=0) const
 Dumps name and value of monitor point as a short string (name=value). More...
 
virtual void updateFrameAverage (ScratchAverages &scratchAvgs)=0
 Abstract method that updates the average value/validity for the frame. More...
 
std::string valuetypeToString () const
 Get a string representation for the datatype of this monitor point. More...
 
bool warnHighDefaultIsSet () const
 Returns true if a default value was set for warnHigh for this monitor point. More...
 
bool warnLowDefaultIsSet () const
 Returns true if a default value was set for warnLow for this monitor point. More...
 
virtual ~MonitorPoint ()
 Destructor. More...
 
- Public Member Functions inherited from carma::monitor::MonitorComponent
const std::string & getCanonicalName () const
 Get the canonical component name. More...
 
virtual const std::string & getDescription () const
 Get the verbose description of the monitor component. More...
 
virtual const std::string & getLongName () const
 Get the long name of the monitor component. More...
 
virtual const std::string & getName () const
 Get the component name (leaf part of canonical name). More...
 
virtual std::string getPhysicalDeviceName () const
 Get the physical device name, if one exists. More...
 
std::string getPhysicalDeviceString () const
 Get the physical device name, if one exists, enclosed in parentheses. More...
 
std::string getPhysicalName () const
 Get the physical name, which is location.device.component or if there is no associated physical device it is just component name. More...
 
virtual const std::string & getShortName () const
 Get the short name of the monitor component. More...
 
virtual bool isSubsystem () const
 Check if the component is a MonitorSubsystem. More...
 
 MonitorComponent (const std::string &name)
 Constructor. More...
 
bool operator!= (const MonitorComponent &component) const
 Checks if components are not equal. More...
 
virtual void setCanonicalName (const std::string &parents)
 Recursively set the canonical component name for this and all below. More...
 
void setDescription (const std::string &text)
 Set the verbose description of the monitor component. More...
 
void setLongName (const std::string &name)
 Set the long name of the monitor component. More...
 
void setName (const std::string &name)
 Set the leaf part of the canonical name of the monitor component. More...
 
void setShortName (const std::string &name)
 Set the short name of the monitor component. More...
 
void setShortName (const std::string &name, int index)
 Set the short name of the monitor component, with an index appended. More...
 
virtual std::string transportStatisticsToString (bool canonical=false) const
 Dump end-toe-end transport statistics (if available). More...
 
virtual ~MonitorComponent ()
 Destructor. More...
 

Protected Member Functions

double computeFrameAverage (MonitorPointAverageNumeric &scratchAvg)
 
VALIDITY getAveValidityNumeric () const
 
BLANKING_FLAGGING getBlankingFlaggingNumeric () const
 
 MonitorPointNumeric (const ::std::string &name, MonitorValueType valuetype, MONITOR_POINT_TYPE monitorPointType=MONITOR)
 
- Protected Member Functions inherited from carma::monitor::MonitorPoint
void clearAllDefaults ()
 Clears all default threshold values (makes them zero) and sets thresholdFlags_ to THRESHOLD_NONE_SET. More...
 
bool getAveBoolean () const
 
char getAveChar () const
 
::std::complex< float > getAveComplex () const
 
double getAveDouble () const
 
float getAveFloat () const
 
long getAveLong () const
 
long getAveSerialNo () const
 
short getAveShort () const
 
std::string getSnapshotAverageToString () const
 
bool getValueBoolean (int sampleIndex) const
 
char getValueChar (int sampleIndex) const
 
::std::complex< float > getValueComplex (int sampleIndex) const
 
double getValueDouble (int sampleIndex) const
 
float getValueFloat (int sampleIndex) const
 
long getValueLong (int sampleIndex) const
 
long getValueSerialNo () const
 
short getValueShort (int sampleIndex) const
 
MonitorValueStringChunk getValueStringChunk (int sampleIndex) const
 
bool isEqualTo (const MonitorPoint &mp) const
 
void setAve (char d) const
 
void setAve (short d) const
 
void setAve (long d) const
 
void setAve (bool d) const
 
void setAve (float d) const
 
void setAve (double d) const
 
void setAve (const ::std::complex< float > &d) const
 
void setAveSerialNo (long d) const
 
void setValue (char d, int sampleIndex) const
 
void setValue (short d, int sampleIndex) const
 
void setValue (long d, int sampleIndex) const
 
void setValue (bool d, int sampleIndex) const
 
void setValue (float d, int sampleIndex) const
 
void setValue (double d, int sampleIndex) const
 
void setValue (const ::std::complex< float > &d, int sampleIndex) const
 
void setValueSerialNo (long d) const
 
void setValuesStringChunksAndValidities (const MonitorValueStringChunk *chunks, int numChunks, VALIDITY validity) const
 

Additional Inherited Members

- Public Types inherited from carma::monitor::MonitorPoint
enum  BLANKING_FLAGGING {
  UNDETERMINED, OK, BLANKED, FLAGGED,
  BLANKED_FLAGGED, MAX_BLANKING_FLAGGING
}
 Blanking/flagging status of the data. More...
 
enum  MONITOR_POINT_TYPE { MONITOR, CONTROL }
 Monitor point type. More...
 
enum  VALIDITY {
  INVALID_NO_DATA, INVALID_NO_HW, INVALID_HW_BAD, VALID,
  VALID_NOT_CHECKED, VALID_GOOD, VALID_WARNING, VALID_ERROR,
  VALID_WARNING_LOW, VALID_WARNING_HIGH, VALID_ERROR_LOW, VALID_ERROR_HIGH,
  MAX_VALIDITY
}
 Validity states of the data value. More...
 
- Public Types inherited from carma::monitor::MonitorComponent
enum  ARCHIVE_PRIORITY {
  VITAL, USEFUL, NORMAL, DEBUG,
  VERBOSE, DEFAULT, DONTARCHIVE
}
 Archiving priority. More...
 
- Static Public Member Functions inherited from carma::monitor::MonitorPoint
static std::string blankingFlaggingToString (BLANKING_FLAGGING flag)
 Get a string representation for a blanking/flagging flag. More...
 
static bool isValid (VALIDITY validity)
 Check for any of the valid states. More...
 
static std::string monitorPointTypeToString (MONITOR_POINT_TYPE monitorPointType)
 Get a string representation for a monitor point type. More...
 
static std::string validityToString (VALIDITY validity)
 Get a string representation for a validity. More...
 
static std::string valuetypeToString (MonitorValueType valuetype)
 Get a string representation for a valuetype. More...
 
- Static Public Member Functions inherited from carma::monitor::MonitorComponent
static std::string archivePriorityToString (MonitorComponent::ARCHIVE_PRIORITY priority)
 Get a string representation for an archive priority. More...
 
static std::string convertAllLower (std::string name)
 Convert a name to all lower case. More...
 
- Protected Attributes inherited from carma::monitor::MonitorPoint
bool timeSeries_
 
short width_
 
- Protected Attributes inherited from carma::monitor::MonitorComponent
bool debug_
 

Detailed Description

Abstract base class for a numeric monitor point.

The number of samples per frame defaults to one.

Definition at line 32 of file MonitorPointNumeric.h.

Constructor & Destructor Documentation

virtual carma::monitor::MonitorPointNumeric::~MonitorPointNumeric ( )
virtual

Destructor.

Member Function Documentation

virtual void carma::monitor::MonitorPointNumeric::accumulate ( MonitorPointAverageNumeric average) const
virtual

Accumulates data from monitor point samples belonging this monitor point.

Parameters
averageMonitorPointAverageNumeric holds data for computing average.
See Also
carma::monitor::MonitorPointAverageT
virtual void carma::monitor::MonitorPointNumeric::accumulateAverage ( MonitorPointAverageNumeric accumulator)
virtual

Accumulates pre-calculated average value from current monitor point for computing averages.

Parameters
accumulatorMonitorPointAverageNumeric& will accumulate values over time for computing averages.
Returns
none
virtual enum MonitorPoint::VALIDITY carma::monitor::MonitorPointNumeric::accumulateSample ( MonitorPointAverageNumeric average,
int  index 
) const
virtual

Accumulates data from one monitor point sample (sample index == index) belonging this monitor point.

Parameters
averageMonitorPointAverageNumeric holds data for computing average.
Returns
enum MonitorPoint::VALIDITY validity flag of sample.
See Also
carma::monitor::MonitorPointAverageT
double carma::monitor::MonitorPointNumeric::getAccumulatedAverageDouble ( const MonitorPointAverageNumeric average) const

Computes average from accumulated data in MonitorPointAverageNumeric object.

Parameters
averageMonitorPointAverageNumeric holds data for computing average.
See Also
carma::monitor::MonitorPointAverageT
virtual double carma::monitor::MonitorPointNumeric::getAveNumeric ( ) const
pure virtual
double carma::monitor::MonitorPointNumeric::getMaxValueDouble ( const MonitorPointAverageNumeric average) const

Returns maximum value from accumulated data in MonitorPointAverageNumeric object.

Parameters
averageMonitorPointAverageNumeric holds data for computing average.
See Also
carma::monitor::MonitorPointAverageT

Definition at line 166 of file MonitorPointNumeric.h.

double carma::monitor::MonitorPointNumeric::getMinValueDouble ( const MonitorPointAverageNumeric average) const

Returns minimum value from accumulated data in MonitorPointAverageNumeric object.

Parameters
averageMonitorPointAverageNumeric holds data for computing average.
See Also
carma::monitor::MonitorPointAverageT

Definition at line 174 of file MonitorPointNumeric.h.

virtual double carma::monitor::MonitorPointNumeric::getValueNumeric ( int  sampleIndex) const
pure virtual
bool carma::monitor::MonitorPointNumeric::operator== ( const MonitorComponent rhs) const
virtual

Compares monitor point for equality to the monitor component passed.

The names must match; value checks will have to be implemented by the derived types.

Parameters
rhsmonitor component to compare to

Reimplemented from carma::monitor::MonitorPoint.

virtual void carma::monitor::MonitorPointNumeric::resetAccumulator ( MonitorPointAverageNumeric average) const
virtual

Resets accumulators and sample count for computing averages.

Parameters
averageMonitorPointAverageNumeric holds data for computing average.
See Also
carma::monitor::MonitorPointAverageT
void carma::monitor::MonitorPointNumeric::setTimeSeries ( bool  timeSeries)
virtual

Determines whether data should be interpreted as time series or as an array (spectrum) when there are multiple samples per frame.

Only numeric types can be an array; this overrides the base method. Default is time series.

Parameters
timeSeriestrue if data is time series, false if array

Reimplemented from carma::monitor::MonitorPoint.

Definition at line 159 of file MonitorPointNumeric.h.


The documentation for this class was generated from the following file: