Definition at line 67 of file dwSensorDrainerTemplate.hpp.
Public Types | |
using | OnDataDropped = dw::core::Function< void(dwTime_t const)> |
Public Member Functions | |
virtual dwStatus | drainProcessedData (ProcessedDataType *processedOutput, dwTime_t ×tampOutput, dwTime_t &nextTimestampOutput, dwTime_t virtualSyncTime) |
dwBaseDrainerTemplate (dwSensorDrainerParams params, std::unique_ptr< ReadProcessedDataFunc > readProcessedDataFunc, DataSourceType dataSource) | |
virtual dwStatus | getNextData (ProcessedDataType *outFrame, dwTime_t timeout) |
virtual dwStatus | getNextTimestamp (dwTime_t ×tamp, dwTime_t timeout) |
virtual dwTime_t | getReadTimeout () const |
virtual void | isLockstepDataAvailable (dwStatus &status, dwTime_t &readTimeout) |
virtual bool | isVirtualDataReady (dwTime_t dataTime, dwTime_t timeout) |
virtual dwStatus | readProcessedData (ProcessedDataType *outFrame, dwTime_t &latestTimestamp, dwTime_t timeout, bool isDroppingData=false)=0 |
virtual dwStatus | reset () |
void | setOnDataDropped (OnDataDropped onDataDropped) |
virtual void | setVirtualSyncTime (dwTime_t virtualSyncTime) |
virtual dwStatus | tryRead (ProcessedDataType *outFrame, dwTime_t &latestTimestamp, dwTime_t timeout, bool isDroppingData=false) |
Static Public Attributes | |
static constexpr int32_t | DRAIN_SENSOR_DATA_COUNT_MAX = 50 |
static constexpr char | LOG_TAG [] = "dwBaseDrainerTemplate" |
Protected Attributes | |
dwTime_t | m_blockingTimeout = 60000 |
DataSourceType | m_dataSource |
bool | m_dropStaleData = false |
bool | m_isVirtual = false |
Node::Name_t | m_name {} |
bool | m_nextDataReady = false |
dwTime_t | m_nonBlockingTimeout = 100 |
OnDataDropped | m_onDataDropped {} |
bool | m_outputAvailable = false |
std::unique_ptr< ReadProcessedDataFunc > | m_readProcessedDataFunc |
dwTime_t | m_virtualSyncTime = 0 |
bool | m_waitForNewData = false |
Static Protected Attributes | |
static constexpr dwTime_t | REPLAY_SENSOR_READ_TIMEOUT = 10000000 |
using dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::OnDataDropped = dw::core::Function<void(dwTime_t const)> |
Definition at line 74 of file dwSensorDrainerTemplate.hpp.
|
inlineexplicit |
Definition at line 76 of file dwSensorDrainerTemplate.hpp.
|
inlinevirtual |
Reimplemented in dw::framework::dwVehicleStateDrainer, and dw::framework::dwVehicleStateChannelDrainer.
Definition at line 233 of file dwSensorDrainerTemplate.hpp.
References dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::DRAIN_SENSOR_DATA_COUNT_MAX, FRWK_LOGD, FRWK_LOGE, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextTimestamp(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getReadTimeout(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::isLockstepDataAvailable(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_blockingTimeout, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_dropStaleData, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_isVirtual, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_name, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_nonBlockingTimeout, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_outputAvailable, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_virtualSyncTime, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_waitForNewData, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::readProcessedData(), and dw::framework::status.
|
inlinevirtual |
Definition at line 109 of file dwSensorDrainerTemplate.hpp.
References FRWK_LOGE, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_dataSource, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_nextDataReady, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_readProcessedDataFunc, and dw::framework::status.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::tryRead().
|
inlinevirtual |
Reimplemented in dw::framework::dwSensorDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc >, and dw::framework::dwSensorDrainerTemplate< dwVehicleIOState, vio::ReadProcessedData >.
Definition at line 93 of file dwSensorDrainerTemplate.hpp.
References dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_dataSource, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_nextDataReady, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_readProcessedDataFunc, dw::framework::status, and dw::framework::timestamp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::tryRead().
|
inlinevirtual |
Definition at line 174 of file dwSensorDrainerTemplate.hpp.
References dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_blockingTimeout, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_nonBlockingTimeout, and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_waitForNewData.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData().
|
inlinevirtual |
Definition at line 292 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData().
|
inlinevirtual |
Definition at line 187 of file dwSensorDrainerTemplate.hpp.
References FRWK_LOGD, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_blockingTimeout, and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_virtualSyncTime.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::tryRead().
|
pure virtual |
Implemented in dw::framework::dwChannelDrainerTemplate< dwVehicleIOState, vio::ReadProcessedVehicleStateDataFromChannel >, dw::framework::dwSensorDrainerTemplate< dwVehicleIOState, vio::ReadProcessedData >, dw::framework::dwChannelDrainerTemplate< OutputProcessedDataType, ReadProcessedDataFunc, InputProcessedDataType >, and dw::framework::dwSensorDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc >.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData().
|
inlinevirtual |
Reimplemented in dw::framework::dwChannelDrainerTemplate< OutputProcessedDataType, ReadProcessedDataFunc, InputProcessedDataType >, dw::framework::dwChannelDrainerTemplate< dwVehicleIOState, vio::ReadProcessedVehicleStateDataFromChannel >, dw::framework::dwSensorDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc >, and dw::framework::dwSensorDrainerTemplate< dwVehicleIOState, vio::ReadProcessedData >.
Definition at line 166 of file dwSensorDrainerTemplate.hpp.
References dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_nextDataReady, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_readProcessedDataFunc, and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_virtualSyncTime.
|
inline |
Definition at line 88 of file dwSensorDrainerTemplate.hpp.
|
inlinevirtual |
Definition at line 179 of file dwSensorDrainerTemplate.hpp.
|
inlinevirtual |
Definition at line 125 of file dwSensorDrainerTemplate.hpp.
References FRWK_LOGE, FRWK_LOGW, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextData(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextTimestamp(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::isVirtualDataReady(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_isVirtual, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_name, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_nextDataReady, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_onDataDropped, dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::m_outputAvailable, and dw::framework::status.
Referenced by dw::framework::dwChannelDrainerTemplate< OutputProcessedDataType, ReadProcessedDataFunc, InputProcessedDataType >::readProcessedData().
|
staticconstexpr |
Definition at line 73 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData().
|
staticconstexpr |
Definition at line 70 of file dwSensorDrainerTemplate.hpp.
|
protected |
Definition at line 299 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getReadTimeout(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::isVirtualDataReady().
|
protected |
Definition at line 295 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextData(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextTimestamp().
|
protected |
Definition at line 307 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData().
|
protected |
Definition at line 306 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::tryRead().
|
protected |
Definition at line 303 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::tryRead().
|
protected |
Definition at line 305 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextData(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextTimestamp(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::reset(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::tryRead().
|
protected |
Definition at line 300 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getReadTimeout().
|
protected |
Definition at line 310 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::setOnDataDropped(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::tryRead().
|
protected |
Definition at line 304 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::tryRead().
|
protected |
Definition at line 297 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextData(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getNextTimestamp(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::reset().
|
protected |
Definition at line 301 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::isVirtualDataReady(), dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::reset(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::setVirtualSyncTime().
|
protected |
Definition at line 308 of file dwSensorDrainerTemplate.hpp.
Referenced by dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::drainProcessedData(), and dw::framework::dwBaseDrainerTemplate< ProcessedDataType, ReadProcessedDataFunc, DataSourceType >::getReadTimeout().
|
staticconstexprprotected |
Definition at line 312 of file dwSensorDrainerTemplate.hpp.