LRAUV  revA
HFRCMReconstructedInterpolator Class Reference

Specifies the interface details for the HFRCMReconstructedInterpolator component in the EstimationModule. More...

#include <HFRCMReconstructedInterpolator.h>

Inheritance diagram for HFRCMReconstructedInterpolator:
Collaboration diagram for HFRCMReconstructedInterpolator:

Public Member Functions

 HFRCMReconstructedInterpolator (const Module *module)
 
virtual ~HFRCMReconstructedInterpolator ()
 
void initialize (void)
 Initialize function. More...
 
void run ()
 The actual "payload" of the component. More...
 
bool lookupSurfaceCurrent (float &eastVelocity, float &northVelocity, const double epoch, const float latDeg, const float lonDeg)
 look up the surface current at a specified location and time More...
 
- Public Member Functions inherited from SyncComponent
CycleOrder getCycleOrder (void)
 Getter function for controlThreadOrderPreference. More...
 
void setRepeating (bool repeating)
 
int getDivisor () const
 
int getModulo () const
 
bool isRepeater ()
 
bool isRepeating ()
 
- Public Member Functions inherited from Component
virtual ~Component ()
 Destructor cleans up readers_ and writers_. More...
 
void registerReader (DataReader *reader)
 
void unregisterReader (DataReader *reader)
 
void registerWriter (DataWriter *writer)
 
void unregisterWriter (DataWriter *writer)
 
void disableMetering (void)
 
FlexArray< DataReader * > & getReaderList (void)
 
FlexArray< DataWriter * > & getWriterList (void)
 
const ModulegetModule ()
 
virtual void configure ()
 Read (or re-read!) configuration settings. More...
 
virtual void execute (void)
 
virtual void uninitialize ()
 Provide a space for uninitialization. More...
 
bool isActive () const
 Indicates if the component is active. More...
 
const CodedStrgetName (void) const
 Returns the name. More...
 
const TimestampgetTimeOfLastRun (void) const
 
ComponentState getState (void)
 Return the component's current state. More...
 
void setState (ComponentState state)
 
RunState getRunState (void)
 Return the component's run state. More...
 
bool isUsingRunState ()
 Return true if using runState. More...
 
void requestData (bool requestingData)
 Tell the component to start (or stop) sending data. More...
 
void requestStart ()
 Tell the component to start runnning. More...
 
void requestPause (const Timespan expectedPauseTime)
 Tell the component to pause runnning. More...
 
void requestResume ()
 Tell the component resume from pause. More...
 
void requestStop ()
 Tell the component to stop runnning. More...
 
virtual RunState start ()
 Do what needs to be done to run Similar to initialize, in old init/run/uninit sequence. More...
 
virtual RunState starting ()
 Might follow a STOP...START sequence Subseqent. More...
 
virtual RunState runnable ()
 Should eventually follow a START request or RESETTING. More...
 
virtual RunState satisfied ()
 Possible return value of a Behavior. More...
 
virtual RunState pause ()
 Pause for a short period (indicated by pauseTime) More...
 
virtual RunState pausing ()
 Might follow a PAUSE request. More...
 
virtual RunState paused ()
 Should eventually follow a PAUSE request: should set continueTime. More...
 
virtual RunState resume ()
 Resume from PAUSE. More...
 
virtual RunState resuming ()
 Might follow a PAUSE...RESUME sequence. More...
 
virtual RunState resetting ()
 Might occur in case of Error. More...
 
virtual RunState stop ()
 Initial state – can be later followed by START. More...
 
virtual RunState stopping ()
 Might follow a STOP request. More...
 
virtual RunState stopped ()
 Should eventually follow a STOP request. More...
 
void setCriticalFailureReported (bool boolVal)
 
void setRecoveringFromCritical (bool boolVal)
 
void setFailureReported (bool boolVal)
 
bool isFailureUninitialized ()
 
void setFailureUninitialized (bool boolVal)
 
void setRetryTimeout (const Timespan &timeout)
 
virtual bool isCompleted (void)
 Query if this component is completed. More...
 
void setPeriod (const Timespan &period)
 Set the period of this component... used if it is periodic. More...
 
const TimespangetPeriod (void)
 Returns the component's period (regardless of whether it is periodic) More...
 
ComponentType getComponentType ()
 Getter function for ComponentType. More...
 
virtual bool isFailed (void) const
 
virtual FailureMode::FailType getFailureType (void) const
 
virtual bool getCriticalFailureReported (void) const
 
virtual bool getFailureReported (void) const
 
virtual Timespan getRetryTimeout (void) const
 
virtual FailureMode::FailType setFailure (FailureMode::FailType failureType)
 
virtual int getFailCount (void) const
 
virtual bool isFailureMissionCritical ()
 
virtual int getAllowableFailures (void) const
 
virtual void setAllowableFailures (int fails)
 
LoggergetLogger (void)
 
virtual int incrementFailCount (void)
 
virtual void resetFailCount (void)
 
virtual int getSkippedRunsSinceFail (void) const
 
virtual int incrementSkippedRunsSinceFail (void)
 
virtual void logVoltage (float voltage, float averageVoltage)
 
virtual void logCurrent (float current, float averageCurrent)
 
const TimestampgetWriteTimestamp (void)
 
void setWriteTimestamp (const Timestamp &writeTimestamp)
 
BlobReadernewBlobReader (const BlobURI &blobURI)
 
BlobReadernewBlobReaderFromUniversal (const Str &componentName, const UniversalBlobURI &blobURI)
 
BlobWriternewBlobWriter (const BlobURI &blobURI, Logger::TimePrecisionType timePrecision=Logger::TIME_PRECISION_MILLIS)
 
ConfigReadernewConfigReader (const ConfigURI &configURI)
 
DataReadernewDataReader (const DataURI &dataURI)
 
DataReadernewDataReaderFromUniversal (const Str &componentName, const UniversalURI &universalURI)
 
DataWriternewDataWriter (const DataURI &dataURI, Logger::TimePrecisionType timePrecision=Logger::TIME_PRECISION_MILLIS)
 
UniversalBlobReadernewUniversalBlobReader (const UniversalBlobURI &universalURI)
 
UniversalBlobWriternewUniversalBlobWriter (const UniversalBlobURI &universalURI, const Unit &accuracyUnit=Units::NONE, const float accuracy=DataElement::NO_ACCURACY, Logger::TimePrecisionType timePrecision=Logger::TIME_PRECISION_MILLIS)
 
UniversalDataReadernewUniversalReader (const UniversalURI &universalURI)
 
UniversalDataWriternewUniversalWriter (const UniversalURI &universalURI, const Unit &accuracyUnit=Units::NONE, const float accuracy=DataElement::NO_ACCURACY, Logger::TimePrecisionType timePrecision=Logger::TIME_PRECISION_MILLIS)
 

Static Public Member Functions

static HFRCMReconstructedInterpolatorInstance ()
 Return the singleton. More...
 

Protected Member Functions

void updateExpansionCoefficients (void)
 
void reproject (void)
 
void publishSurfaceCurrentAtVehicleLocation (void)
 publish the surface current at the present location of the vehicle More...
 
bool getPreviousTimeIndex (int &time_index, double es)
 
bool getLowerLeftCorner (int &latitude_index, int &longitude_index, const float latitude_degrees, const float longitude_degrees)
 
float interpolateRaveledThreeDimensionalGrid (const Mtx z, const float epoch, const float latitude_degrees, const float longitude_degrees, const int time_index, const int latitude_index, const int longitude_index, const int starting_offset=0)
 
- Protected Member Functions inherited from SyncEstimationComponent
 SyncEstimationComponent (const Str &name, const Module *module, int divisor=1, int modulo=0)
 
- Protected Member Functions inherited from SyncComponent
void setRepeater (bool repeater)
 
- Protected Member Functions inherited from Component
virtual ConfigURI getConfigURI (ConfigOption configOption) const
 Should return [myNamespace]::SIMULATE_HARDWARE, or [myNamespace]::POWER, etc. More...
 
virtual ConfigURI getConfigURI (ConfigOption configOption, ElementURI forElement) const
 Should return [myNamespace]::POWER_[forElement], [myNamespace]::LATENCY_[forElement], etc. More...
 
virtual void setDurationOfLastRun (const Timespan &span)
 
virtual void setTimeOfRun (const Timestamp &time)
 
virtual void setTimeOfLastRun (const Timestamp &time)
 
virtual void setDt (const Timespan &dt)
 
virtual bool setEnabled (bool enabled=true)
 
void setRunState (const RunState runState)
 
const Timespan getPauseTime () const
 
virtual void setFailureMissionCritical (bool failureMissionCritical)
 
bool simulateHardware ()
 

Protected Attributes

const bool debug_
 
int verbosity_
 
const Mtx eofs_
 
const Mtx ensMean_
 
const Mtx gridIdxRev_
 
const Mtx gridLon_
 
const Mtx gridLat_
 
const Mtx scalingFactors_
 
Mtx gridIdx_
 
int numLocations_
 
int numModes_
 
int numTimes_
 
double forecastEpochSeconds_ [HFRadarCompactModelForecasterIF::TOTAL_HOURS]
 
Timestamp forecastStart_
 
Timestamp forecastEnd_
 
Mtx expansionCoefficients_
 
Mtx currentField_
 
float eastVelocity_
 
float northVelocity_
 
float velocityAccuracy_
 
bool haveValidForecast_
 
UniversalDataReaderlatitudeReader_
 
UniversalDataReaderlongitudeReader_
 
BlobReaderexpansionCoefficientsReader_
 
BlobReaderforecastTimesReader_
 
UniversalDataWritereastVelocityWriter_
 
UniversalDataWriternorthVelocityWriter_
 
ConfigReaderverbosityLevelConfigReader_
 
ConfigReadervelocityAccuracyConfigReader_
 
- Protected Attributes inherited from Component
Logger logger_
 
Syslog::Severity debugLevel_
 
ComponentState state_
 Keep track of whether the component has "completed" or should be run again. More...
 
Timespan desiredPeriod_
 
CodedStrname_
 Store the component's name (used for logging purposes) More...
 
Timestamp timeOfRun_
 
Timestamp timeOfLastRun_
 
Timespan durationOfLastRun_
 
Timespan dt_
 
Timespan retryTimeout_
 
bool enabled_
 
bool failureReported_
 Indicates if the failure has been reported – cuts down on syslog. More...
 
bool criticalFailureReported_
 Indicates if a "Critical" failure has been reported – cuts down on syslog. More...
 
bool recoveringFromCritical_
 Indicates that a component had a previous critical failure that has been cleared temporarily awaiting final word from the component itself. More...
 
bool failureUninitialized_
 Indicates if the failure has resulted in an uninitialize call. More...
 
int failCount_
 Number of failures logged by PCaller. More...
 
bool failureMissionCritical_
 If true (default), complete failure ends mission. More...
 
int allowableFailures_
 Number of failures allowed to occur. More...
 
int skippedRunsSinceFail_
 Number of skipped runs since failureMode_ set by failCount_. More...
 
FailureMode::FailType failureType_
 Failed status. If failCount_ > 0, then this may be reset. More...
 
Timestamp timeOfFailure_
 Time of last failure. Relevant only if failed=true. More...
 
Timestamp writeTimestamp_
 Time of last write. More...
 
FlexArray< DataReader * > readers_
 
FlexArray< DataWriter * > writers_
 
const Modulemodule_
 
Timespan pauseTime_
 
bool meteringEnabled_
 If true, metering is enabled. More...
 
DataWriterdurationOfLastRunWriter_
 Writer for durationOfLastRun. More...
 
DataWritervoltageWriter_
 
DataWriteravgVoltageWriter_
 
DataWritercurrentWriter_
 
DataWriteravgCurrentWriter_
 
bool persistentPause_
 True if data is persistent while component is paused. More...
 

Static Protected Attributes

static HFRCMReconstructedInterpolatorInstance_
 

Private Member Functions

 HFRCMReconstructedInterpolator (const HFRCMReconstructedInterpolator &old)
 

Additional Inherited Members

- Public Types inherited from Component
enum  ComponentState {
  BLOCK_CONTINUOUS, BLOCK_PERIODIC, BLOCK_NORMAL, BLOCK_COMPLETED,
  BLOCK_UNKNOWN
}
 In this model, the component has basically two states: wanting to run, and completed (no longer needing to run). More...
 
enum  ComponentType { COMPONENT_ASYNC, COMPONENT_CONFIG, COMPONENT_BEHAVIOR, COMPONENT_SYNC }
 Components can indicate how they want to be handled by their type. More...
 
enum  RunState {
  NO_RUN_STATE = 0, START, STARTING, RUNNABLE,
  SATISFIED, PAUSE, PAUSING, PAUSED,
  RESUME, RESUMING, RESETTING, STOP,
  STOPPING, STOPPED
}
 
- Static Public Attributes inherited from SyncComponent
static const int CYCLE_INCREMENT
 
static const int CYCLE_REPEAT_OFFSET
 
static const CycleOrder CYCLE_STARTER
 
static const CycleOrder CYCLE_SIMULATOR
 
static const CycleOrder CYCLE_SENSOR
 
static const CycleOrder CYCLE_DERIVATION
 
static const CycleOrder CYCLE_ESTIMATION
 
static const CycleOrder CYCLE_NAVIGATION
 
static const CycleOrder CYCLE_MISSION_MANAGER
 
static const CycleOrder CYCLE_MISSION
 
static const CycleOrder CYCLE_CONTROL
 
static const CycleOrder CYCLE_SERVO
 
static const CycleOrder CYCLE_TEST
 
static const CycleOrder CYCLE_REPORTER
 
static const CycleOrder CYCLE_LOGGER
 
- Protected Types inherited from Component
enum  ConfigOption { CONFIG_SIMULATE_HARDWARE, CONFIG_POWER, CONFIG_FREQUENCY, CONFIG_LATENCY }
 

Detailed Description

Specifies the interface details for the HFRCMReconstructedInterpolator component in the EstimationModule.

HFRCMReconstructedInterpolator.h should only be included by HFRCMReconstructedInterpolator.cpp Other classes should include HFRCMReconstructedInterpolatorIF.h

Constructor & Destructor Documentation

HFRCMReconstructedInterpolator::HFRCMReconstructedInterpolator ( const Module module)

References Instance_.

HFRCMReconstructedInterpolator::~HFRCMReconstructedInterpolator ( )
virtual
HFRCMReconstructedInterpolator::HFRCMReconstructedInterpolator ( const HFRCMReconstructedInterpolator old)
private

Member Function Documentation

bool HFRCMReconstructedInterpolator::getLowerLeftCorner ( int &  latitude_index,
int &  longitude_index,
const float  latitude_degrees,
const float  longitude_degrees 
)
protected
bool HFRCMReconstructedInterpolator::getPreviousTimeIndex ( int &  time_index,
double  es 
)
protected
static HFRCMReconstructedInterpolator* HFRCMReconstructedInterpolator::Instance ( )
inlinestatic

Return the singleton.

References Instance_.

float HFRCMReconstructedInterpolator::interpolateRaveledThreeDimensionalGrid ( const Mtx  z,
const float  epoch,
const float  latitude_degrees,
const float  longitude_degrees,
const int  time_index,
const int  latitude_index,
const int  longitude_index,
const int  starting_offset = 0 
)
protected
bool HFRCMReconstructedInterpolator::lookupSurfaceCurrent ( float &  eastVelocity,
float &  northVelocity,
const double  epoch,
const float  latDeg,
const float  lonDeg 
)
void HFRCMReconstructedInterpolator::reproject ( void  )
protected

Member Data Documentation

Mtx HFRCMReconstructedInterpolator::currentField_
protected

Referenced by lookupSurfaceCurrent(), and reproject().

const bool HFRCMReconstructedInterpolator::debug_
protected

Referenced by getPreviousTimeIndex().

float HFRCMReconstructedInterpolator::eastVelocity_
protected
UniversalDataWriter* HFRCMReconstructedInterpolator::eastVelocityWriter_
protected
const Mtx HFRCMReconstructedInterpolator::ensMean_
protected

Referenced by reproject().

const Mtx HFRCMReconstructedInterpolator::eofs_
protected

Referenced by reproject().

Mtx HFRCMReconstructedInterpolator::expansionCoefficients_
protected
BlobReader* HFRCMReconstructedInterpolator::expansionCoefficientsReader_
protected
Timestamp HFRCMReconstructedInterpolator::forecastEnd_
protected
double HFRCMReconstructedInterpolator::forecastEpochSeconds_[HFRadarCompactModelForecasterIF::TOTAL_HOURS]
protected
Timestamp HFRCMReconstructedInterpolator::forecastStart_
protected
BlobReader* HFRCMReconstructedInterpolator::forecastTimesReader_
protected
Mtx HFRCMReconstructedInterpolator::gridIdx_
protected
const Mtx HFRCMReconstructedInterpolator::gridIdxRev_
protected

Referenced by initialize().

const Mtx HFRCMReconstructedInterpolator::gridLat_
protected
const Mtx HFRCMReconstructedInterpolator::gridLon_
protected
bool HFRCMReconstructedInterpolator::haveValidForecast_
protected
HFRCMReconstructedInterpolator * HFRCMReconstructedInterpolator::Instance_
staticprotected
UniversalDataReader* HFRCMReconstructedInterpolator::latitudeReader_
protected
UniversalDataReader* HFRCMReconstructedInterpolator::longitudeReader_
protected
float HFRCMReconstructedInterpolator::northVelocity_
protected
UniversalDataWriter* HFRCMReconstructedInterpolator::northVelocityWriter_
protected
int HFRCMReconstructedInterpolator::numLocations_
protected

Referenced by lookupSurfaceCurrent().

int HFRCMReconstructedInterpolator::numModes_
protected
int HFRCMReconstructedInterpolator::numTimes_
protected
const Mtx HFRCMReconstructedInterpolator::scalingFactors_
protected

Referenced by reproject().

float HFRCMReconstructedInterpolator::velocityAccuracy_
protected
ConfigReader* HFRCMReconstructedInterpolator::velocityAccuracyConfigReader_
protected
int HFRCMReconstructedInterpolator::verbosity_
protected
ConfigReader* HFRCMReconstructedInterpolator::verbosityLevelConfigReader_
protected

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