This node computes the vehicle state and relative motion over time using signals from IMU and wheelspeed sensors.
The user has the option to use a odometry-only model as well, where IMU is not used anymore.
Input modalities
Output signals
Definition at line 120 of file dwRelativeEgomotionIMUNode.hpp.


Public Member Functions | |
| dwRelativeEgomotionIMUNode (const dwRelativeEgomotionIMUNodeInitParams ¶ms, const dwContextHandle_t ctx) | |
| dwStatus | executeAsyncReset () override |
| dwStatus | preShutdown () override |
| dwStatus | setAsyncReset () override |
Public Member Functions inherited from dw::framework::ExceptionSafeProcessNode | |
| ExceptionSafeProcessNode (std::unique_ptr< Node > impl) | |
| dwStatus | getErrorSignal (dwGraphErrorSignal *&errorSignal) override |
| dwStatus | getHealthSignal (dwGraphHealthSignal *&healthSignal, bool updateFromModule=false) override |
| dwStatus | getName (const char **name) override |
| size_t | getPassCount () const noexcept override |
| dwStatus | getPasses (VectorFixed< Pass * > &passList) override |
| dwStatus | getPasses (VectorFixed< Pass * > &passList, dwProcessorType processorType, dwProcessType processType) override |
| dwStatus | reportCurrentErrorSignal (dwGraphErrorSignal &signal) override |
| dwStatus | reportCurrentHealthSignal (dwGraphHealthSignal &signal) override |
| dwStatus | reset () override |
| void | resetPorts () override |
| dwStatus | run () override |
| dwStatus | runPass (size_t passIndex) override |
| dwStatus | runPassByID (uint8_t passID) override |
| dwStatus | setInputChannel (ChannelObject *channel, uint8_t portID) override |
| dwStatus | setInputChannel (ChannelObject *channel, uint8_t portID, dwSerializationType dataType) override |
| dwStatus | setIterationCount (uint32_t iterationCount) override final |
| dwStatus | setName (const char *name) override |
| dwStatus | setOutputChannel (ChannelObject *channel, uint8_t portID) override |
| dwStatus | setState (const char *state) override |
| dwStatus | validate () override |
| ~ExceptionSafeProcessNode () override=default | |
Public Member Functions inherited from dw::framework::Node | |
| virtual dwStatus | getErrorSignal (dwGraphErrorSignal *&errorSignal)=0 |
| Get the pointer to the error signal for this node. More... | |
| virtual dwStatus | getHealthSignal (dwGraphHealthSignal *&healthSignals, bool updateFromModule=false)=0 |
| Get the pointer to the health signal for this node. More... | |
| virtual dwStatus | getName (const char **name)=0 |
| Get the name of the node. More... | |
| virtual size_t | getPassCount () const noexcept=0 |
| Get number of passes in the node. More... | |
| virtual dwStatus | getPasses (VectorFixed< Pass * > &passList)=0 |
| Get all the passes in the node. More... | |
| virtual dwStatus | getPasses (VectorFixed< Pass * > &passList, dwProcessorType processorType, dwProcessType processType)=0 |
| Get node passes filtered by processor type and process type. More... | |
| virtual dwStatus | reportCurrentErrorSignal (dwGraphErrorSignal &signal)=0 |
| A function that allows user override to update error signal It is automatically called by dwFramework when getErrorSignal is called and when pass returns non-success return code. More... | |
| virtual dwStatus | reportCurrentHealthSignal (dwGraphHealthSignal &signal)=0 |
| A function that allows user override to update health signal It is automatically called by dwFramework during teardown and when pass returns non-success return code. More... | |
| virtual dwStatus | reset ()=0 |
| Resets the state of the node. More... | |
| virtual void | resetPorts ()=0 |
| Resets all the ports in the node. More... | |
| virtual dwStatus | run ()=0 |
| Runs all the passes in the node. More... | |
| virtual dwStatus | runPass (size_t passIndex)=0 |
| Run one pass by index as defined by the pass descriptors. More... | |
| virtual dwStatus | runPassByID (uint8_t passID)=0 |
| Run one pass by ID as defined by the PassList enum class. More... | |
| virtual dwStatus | setInputChannel (ChannelObject *channel, uint8_t portID)=0 |
| Sets an input channel for this node with an accompanying port. More... | |
| virtual dwStatus | setInputChannel (ChannelObject *channel, uint8_t portID, dwSerializationType dataType)=0 |
| Sets an input channel for this node with an accompanying port. More... | |
| virtual dwStatus | setIterationCount (uint32_t iterationCount)=0 |
| Sets the node's iteration count. More... | |
| virtual dwStatus | setName (const char *name)=0 |
| Set the name of the node. More... | |
| virtual dwStatus | setOutputChannel (ChannelObject *channel, uint8_t portID)=0 |
| Sets an output channel for this node with an accompanying port. More... | |
| virtual dwStatus | setState (const char *state)=0 |
| Set the current state in node. Node implementation of this API need to be thread-safe. More... | |
| virtual dwStatus | validate ()=0 |
| Checks that all mandatory ports are bound. The implementation should validate that all the ports are bound to the appropriate channels (any required ports, that is). For example, a camera node may have processed output and raw output ports, but only one is required to be bound. More... | |
| virtual | ~Node ()=default |
Public Member Functions inherited from dw::framework::IAsyncResetable | |
| virtual dwStatus | executeAsyncReset ()=0 |
| Executes a reset if the async reset flag is set. More... | |
| virtual dwStatus | setAsyncReset ()=0 |
| Set the async reset flag. More... | |
| virtual | ~IAsyncResetable ()=default |
Public Member Functions inherited from dw::framework::IContainsPreShutdownAction | |
| virtual dwStatus | preShutdown ()=0 |
| actions to be taken before node shutdown More... | |
| virtual | ~IContainsPreShutdownAction ()=default |
Static Public Member Functions | |
| static std::unique_ptr< dwRelativeEgomotionIMUNode > | create (ParameterProvider &provider) |
| static constexpr auto | describeInputPorts () |
| static constexpr auto | describeOutputPorts () |
| static constexpr auto | describeParameters () |
| static constexpr auto | describePasses () |
Additional Inherited Members | |
Public Types inherited from dw::framework::Node | |
| using | Name_t = FixedString< MAX_NAME_LEN > |
Static Public Attributes inherited from dw::framework::Node | |
| static constexpr size_t | MAX_NAME_LEN = 128 |
| static constexpr uint32_t | MAX_PASS_COUNT = 256 |
| static constexpr uint32_t | MAX_PORT_COUNT = 256 |
| static constexpr uint8_t | PASS_SETUP = std::numeric_limits<uint8_t>::max() - 1 |
| static constexpr uint8_t | PASS_TEARDOWN = std::numeric_limits<uint8_t>::max() |
Protected Attributes inherited from dw::framework::ExceptionSafeProcessNode | |
| std::unique_ptr< Node > | m_impl |
| dw::framework::dwRelativeEgomotionIMUNode::dwRelativeEgomotionIMUNode | ( | const dwRelativeEgomotionIMUNodeInitParams & | params, |
| const dwContextHandle_t | ctx | ||
| ) |
|
static |
|
inlinestaticconstexpr |
Definition at line 123 of file dwRelativeEgomotionIMUNode.hpp.
References dw::framework::describePortCollection(), and DW_DESCRIBE_PORT.
|
inlinestaticconstexpr |
Definition at line 134 of file dwRelativeEgomotionIMUNode.hpp.
References dw::framework::describePortCollection(), and DW_DESCRIBE_PORT.
|
inlinestaticconstexpr |
Definition at line 193 of file dwRelativeEgomotionIMUNode.hpp.
References dw::framework::dwRelativeEgomotionIMUNodeInitParams::automaticUpdate, dw::framework::describeConstructorArgument(), DW_DESCRIBE_PARAMETER, DW_DESCRIBE_UNNAMED_PARAMETER, DW_DESCRIBE_UNNAMED_PARAMETER_WITH_SEMANTIC, dw::framework::dwRelativeEgomotionIMUNodeInitParams::enableSuspension, dw::framework::dwRelativeEgomotionIMUNodeInitParams::estimateInitialOrientation, dw::framework::dwRelativeEgomotionIMUNodeInitParams::historySize, dw::framework::dwRelativeEgomotionIMUNodeInitParams::imuSensorName, dw::framework::dwRelativeEgomotionIMUNodeInitParams::linearAccelerationFilterParameters, dw::framework::dwRelativeEgomotionIMUNodeInitParams::motionModel, dw::framework::dwRelativeEgomotionIMUNodeInitParams::rigHandle, dw::framework::dwRelativeEgomotionIMUNodeInitParams::speedMeasurementType, and dw::framework::dwRelativeEgomotionIMUNodeInitParams::vehicleSensorName.
|
inlinestaticconstexpr |
Definition at line 143 of file dwRelativeEgomotionIMUNode.hpp.
References dw::framework::describePass(), and dw::framework::describePassCollection().
|
inlineoverridevirtual |
Implements dw::framework::IAsyncResetable.
Definition at line 171 of file dwRelativeEgomotionIMUNode.hpp.
References dw::framework::IAsyncResetable::executeAsyncReset(), dw::framework::Exception::guardWithReturn(), and dw::framework::ExceptionSafeProcessNode::m_impl.
|
inlineoverridevirtual |
Implements dw::framework::IContainsPreShutdownAction.
Definition at line 183 of file dwRelativeEgomotionIMUNode.hpp.
References dw::framework::ExceptionSafeProcessNode::m_impl, and dw::framework::IContainsPreShutdownAction::preShutdown().
|
inlineoverridevirtual |
Implements dw::framework::IAsyncResetable.
Definition at line 159 of file dwRelativeEgomotionIMUNode.hpp.
References dw::framework::Exception::guardWithReturn(), dw::framework::ExceptionSafeProcessNode::m_impl, and dw::framework::IAsyncResetable::setAsyncReset().