|
LRAUV
revA
|
A DataAccessor that writes values to the Slate via its associated DataElement. More...
#include <DataWriter.h>


Public Member Functions | |
| DataWriter (Component *owner, DataElement &element, UniversalDataElement *universal, Logger::TimePrecisionType timePrecisionType) | |
| virtual | ~DataWriter () |
| bool | setUnavailable (bool unavailable=true) |
| bool | isUnavailable () |
| bool | setInvalid (bool invalid=true) |
| bool | isInvalid () |
| void | registerChange (void) |
| virtual bool | write (const Unit &unit, const unsigned char value, const Timestamp ×tamp=Timestamp::NOT_SET_TIME) |
| Sets the Component's DataValue, with an optional timestamp. More... | |
| virtual bool | write (const Unit &unit, const double value, const Timestamp ×tamp=Timestamp::NOT_SET_TIME) |
| virtual bool | write (const Unit &unit, const int value, const Timestamp ×tamp=Timestamp::NOT_SET_TIME) |
| Set functions. More... | |
| virtual bool | write (const DataValue &value, const Timestamp ×tamp=Timestamp::NOT_SET_TIME) |
| const Timestamp & | getTimestamp () |
| Returns the Timestamp of the last write. More... | |
| bool | isDataRequested () |
| Returns true if one of the readers registered with this writer's dataElement is requesting data. More... | |
| bool | isImplemented () |
| Returns true if there is a non-failed "implementor" reader of this writer. More... | |
| void | componentRequestData (bool requestingData) |
Public Member Functions inherited from DataAccessor | |
| virtual | ~DataAccessor () |
| virtual DataElement & | getElement (void) const |
| virtual Component * | getOwner (void) const |
| virtual const ElementURI & | getUri (void) const |
| AccessorType | getAccessorType () const |
| DataAccess * | getDataAccess () const |
| Logger::TimePrecisionType | getTimePrecision () const |
Protected Attributes | |
| bool | componentRequestingData_ |
Protected Attributes inherited from DataAccessor | |
| Component * | owner_ |
| DataElement & | element_ |
| AccessorType | accessorType_ |
| Logger::TimePrecisionType | timePrecision_ |
| DataAccess * | dataAccess_ |
Additional Inherited Members | |
Public Types inherited from DataAccessor | |
| enum | AccessorType { DATA_READER = 0, DATA_WRITER = 1 } |
| enum | RequestStrategy { NO_STRATEGY = -1, MIN_POWER, MIN_ERROR, MIN_LATENCY, MAX_FREQUENCY, ALL_DEVICES, STRATEGY_COUNT } |
Static Public Member Functions inherited from DataAccessor | |
| static RequestStrategy | Str2RequestStrategy (const char *const strategyStr) |
| static const char * | RequestStrategy2Str (DataAccessor::RequestStrategy strategy) |
Static Public Attributes inherited from DataAccessor | |
| static const char *const | REQUEST_STRATEGY_STRS [STRATEGY_COUNT] |
Protected Member Functions inherited from DataAccessor | |
| DataAccessor (Component *owner, DataElement &element, AccessorType accessorType, UniversalDataElement *universal, Logger::TimePrecisionType timePrecision=Logger::TIME_PRECISION_MILLIS) | |
| Protected Constructor. More... | |
A DataAccessor that writes values to the Slate via its associated DataElement.
| DataWriter::DataWriter | ( | Component * | owner, |
| DataElement & | element, | ||
| UniversalDataElement * | universal, | ||
| Logger::TimePrecisionType | timePrecisionType | ||
| ) |
References DataAccessor::owner_, Component::registerWriter(), and DataElement::registerWriter().
|
virtual |
|
inline |
References componentRequestingData_.
| const Timestamp & DataWriter::getTimestamp | ( | void | ) |
Returns the Timestamp of the last write.
References DataAccessor::element_, and DataElement::getTimestamp().
| bool DataWriter::isDataRequested | ( | ) |
Returns true if one of the readers registered with this writer's dataElement is requesting data.
References componentRequestingData_, DataAccessor::element_, and DataElement::isDataRequested().
Referenced by NAL9602::awake(), NAL9602::goToSleep(), DVL_micro::isAHRSRequested(), CANONSampler::isDataRequested(), Radio_Surface::isDataRequested(), Aanderaa_O2::isDataRequested(), ISUS::isDataRequested(), SCPI::isDataRequested(), WetLabsBB2FL::isDataRequested(), ElevatorServo::isDataRequested(), RudderServo::isDataRequested(), BuoyancyServo::isDataRequested(), MassServo::isDataRequested(), ThrusterServo::isDataRequested(), Turbulence_NPS::isDataRequested(), AHRS_3DMGX3::isDataRequested(), Turner_Cyclops_rhodamine::isDataRequested(), CTD_NeilBrown::isDataRequested(), AHRS_sp3003D::isDataRequested(), PNI_TCM::isDataRequested(), ESPComponent::isDataRequested(), NAL9602::isDataRequested(), DVL_micro::isPingRequested(), NAL9602::needGSV(), Rowe_600::paused(), SBIT::run(), IBIT::run(), DataOverHttps::run(), CBIT::scanGFChan(), NAL9602::sendingVerify(), and Rowe_600::stopped().
| bool DataWriter::isImplemented | ( | ) |
Returns true if there is a non-failed "implementor" reader of this writer.
References DataAccessor::element_, and DataElement::isImplemented().
Referenced by VerticalControl::setPitch().
| bool DataWriter::isInvalid | ( | void | ) |
References DataAccessor::getElement(), and DataElement::isInvalid().
Referenced by WetLabsBB2FL::writeData().
| bool DataWriter::isUnavailable | ( | void | ) |
References DataAccessor::getElement(), and DataElement::isUnavailable().
Referenced by DataOverHttps::run().
| void DataWriter::registerChange | ( | void | ) |
References DataAccessor::getElement(), DataElement::registerChangeDone(), and DataElement::registerChangePending().
Referenced by Component::setFailure().
| bool DataWriter::setInvalid | ( | bool | invalid = true | ) |
References DataAccessor::getElement(), and DataElement::setInvalid().
Referenced by NAL9602::needFix(), WetLabsBB2FL::parse(), DVL_micro::pause(), Turbulence_NPS::pause(), CTD_NeilBrown::pause(), DVL_micro::processNQ1(), HFRCMReconstructedInterpolator::publishSurfaceCurrentAtVehicleLocation(), HFRadarModelCalc::publishSurfaceCurrentAtVehicleLocation(), SpeedCalculator::run(), Depth_Keller::run(), PAR_Licor::run(), HFRCMSurfaceCurrentAtVehicleLocation::run(), HFRCMVirtualSurfaceDrifter::run(), Turner_Cyclops_rhodamine::runnable(), DVL_micro::setAcousticWritersInvalid(), Rowe_600LCM::setAltitudeWritersInvalid(), Rowe_600::setBottomTrackWritersInvalid(), Rowe_600LCM::setSOGWritersInvalid(), Rowe_600::setWaterReferenceLayerWritersInvalid(), Rowe_600LCM::setWaterWritersInvalid(), PNI_TCM::setWritersInvalid(), BPC1::setWritersInvalid(), AHRS_sp3003D::setWritersInvalid(), DVL_micro::stop(), Turner_Cyclops_rhodamine::stop(), Turbulence_NPS::stop(), CTD_NeilBrown::stop(), WetLabsBB2FL::writeData(), Turbulence_NPS::writeData(), CTD_NeilBrown::writeData(), Rowe_600::writeData(), and Navigator::writeVehiclePosition().
| bool DataWriter::setUnavailable | ( | bool | unavailable = true | ) |
References DataAccessor::getElement(), and DataElement::setUnavailable().
Referenced by DataOverHttps::DataOverHttps(), and DataOverHttps::run().
|
virtual |
Sets the Component's DataValue, with an optional timestamp.
References DataAccessor::element_, DataAccessor::owner_, DataElement::set(), and Component::setWriteTimestamp().
Referenced by WetLabsBB2FL::calculate_and_report_temporal_bin_statistics(), CTD_NeilBrown::calculate_and_report_temporal_bin_statistics(), Onboard::calculateAvgCurrent(), TempGradientCalculator::captureTempGradPeak(), CommandLine::commandConversation(), VerticalControl::controlDepth(), HorizontalControl::controlHeading(), Lane::doRun(), CBIT::empiricalFaultClassification(), LuaAPI::Exec(), NAL9602::getMTQueueSignalStrength(), NAL9602::getReceivedSignalStrength(), CBIT::handleComponentFaults(), HorizontalControl::headingControl(), SBIT::initialize(), IBIT::initialize(), CommandLine::initialize(), CBIT::initialize(), Component::logCurrent(), Component::logVoltage(), VerticalControl::massAndElevatorControl(), VerticalControl::massControl(), CBIT::monitorShorePower(), NAL9602::needFix(), NAL9602::needGSV(), BPC1::parseWriteDataA(), BPC1::parseWriteDataB(), ThrusterServo::pause(), NAL9602::pause(), AcousticModem_Benthos_ATM900::publishData(), DAT::publishData(), ExternalSim::publishState(), NavigationSim::publishState(), InternalSim::publishState(), Tracking::queryDAT(), Batt_Ocean_Server::readDataA(), Batt_Ocean_Server::readDataB(), DeadReckonUsingMultipleVelocitySources::readVehicleVelocity(), PeakDetectHorizontal::reportPeak(), CycleStarter::run(), Assign::run(), Onboard::run(), AsyncPiEstimator::run(), DropWeight::run(), PAR_Licor::run(), Depth_Keller::run(), Batt_Ocean_Server::run(), SBIT::run(), Buoyancy::run(), IBIT::run(), VerticalControl::run(), PitchServo::run(), NavChart::run(), YawRateCalculator::run(), SetSpeed::run(), HFRadarModelPoint::run(), Waypoint::run(), PitchRateCalculator::run(), MissionManager::run(), Circle::run(), DataOverHttps::run(), DepthRateCalculator::run(), KeepStation::run(), DepthServo::run(), HFRadarModel::runIfUnsatisfied(), AltitudeEnvelope::runIfUnsatisfied(), DepthEnvelope::runIfUnsatisfied(), Point::runIfUnsatisfied(), GoToSurface::runIfUnsatisfied(), PeakDetectVsDepth::runIfUnsatisfied(), PrepareToDive::runIfUnsatisfied(), Pitch::runIfUnsatisfied(), ValueDetect::runIfUnsatisfied(), OffshoreEnvelope::runIfUnsatisfied(), WaterDepthEnvelope::runIfUnsatisfied(), SCPI::runnable(), ElevatorServo::runnable(), MassServo::runnable(), BuoyancyServo::runnable(), CANONSampler::runnable(), VemcoVR2C::runnable(), Turner_Cyclops_rhodamine::runnable(), RudderServo::runnable(), AHRS_3DMGX3::runnable(), ThrusterServo::runnable(), AHRS_sp3003D::runnable(), BPC1::runnable(), CBIT::scanGFChan(), NAL9602::sendingVerify(), VerticalControl::setBuoyancy(), Component::setDurationOfLastRun(), HorizontalControl::setHeading(), HFRCMVirtualSurfaceDrifter::setLocation(), VerticalControl::setMassAndElevator(), VerticalControl::setPitch(), HorizontalControl::setRudderAngle(), SpeedControl::setSpeed(), SCPI::stop(), ISUS::stop(), OffshoreEnvelope_Test::testRun(), UniversalBlobWriter::write(), BlobWriter::write(), ZigZag::writeCmds(), YoYo::writeCmds(), VerticalTemperatureHomogeneityIndexCalculator::writeData(), StratificationFrontDetector::writeData(), DVL_micro::writeData(), Aanderaa_O2::writeData(), HFRCMVirtualSurfaceDrifter::writeData(), Radio_Surface::writeData(), ISUS::writeData(), WetLabsBB2FL::writeData(), CANONSampler::writeData(), Turbulence_NPS::writeData(), Rowe_600LCM::writeData(), Tracking::writeData(), CTD_NeilBrown::writeData(), Rowe_600::writeData(), PNI_TCM::writeData(), ESPComponent::writeData(), Slate::WriteOnce(), and Navigator::writeVehiclePosition().
|
virtual |
|
virtual |
Set functions.
References DataAccessor::getElement(), DataAccessor::owner_, DataElement::set(), and Component::setWriteTimestamp().
|
virtual |
Reimplemented in BlobWriter, and UniversalBlobWriter.
References DataAccessor::element_, DataAccessor::owner_, DataElement::set(), and Component::setWriteTimestamp().
|
protected |
Referenced by componentRequestData(), and isDataRequested().