31#ifndef DWFRAMEWORK_DWNODES_EGOMOTION_DWGLOBALEGOMOTIONNODE_DWGLOBALEGOMOTIONNODE_HPP_
32#define DWFRAMEWORK_DWNODES_EGOMOTION_DWGLOBALEGOMOTIONNODE_DWGLOBALEGOMOTIONNODE_HPP_
34#include <dw/egomotion/base/Egomotion.h>
35#include <dw/egomotion/global/GlobalEgomotion.h>
36#include <dw/egomotion/global/GlobalEgomotionSerialization.h>
37#include <dw/roadcast/base_types/RoadCastPacketTypes.hpp>
46#include <dwframework/dwnodes/common/GlobalEgomotionCommonTypes.hpp>
47#include <dwframework/dwnodes/common/channelpackets/EgomotionState.hpp>
48#include <dwframework/dwnodes/common/channelpackets/GPS.hpp>
49#include <dwframework/dwnodes/common/channelpackets/GlobalEgomotionCommonTypes.hpp>
98 DW_DESCRIBE_PORT(dwGlobalEgomotionResultPayload,
"GLOBAL_EGOMOTION_RESULT_PAYLOAD"_sv));
104 describePass(StringView{
"SETUP"}, DW_PROCESSOR_TYPE_CPU),
105 describePass(StringView{
"ADD_GPS"}, DW_PROCESSOR_TYPE_CPU),
106 describePass(StringView{
"ADD_RELATIVE_EGOMOTION"}, DW_PROCESSOR_TYPE_CPU),
107 describePass(StringView{
"SEND_STATE"}, DW_PROCESSOR_TYPE_CPU),
108 describePass(StringView{
"TEARDOWN"}, DW_PROCESSOR_TYPE_CPU));
115 const dwContextHandle_t ctx);
123 describeConstructorArgument<dwGlobalEgomotionNodeInitParams>(
137 "nvSciChannelWaitTimeUs"_sv,
140 describeConstructorArgument<dwContextHandle_t>(
142 dwContextHandle_t)));
153 return DW_NOT_SUPPORTED;
#define DW_DESCRIBE_PARAMETER_WITH_DEFAULT(TYPE_NAME, args...)
#define DW_DESCRIBE_UNNAMED_PARAMETER_WITH_SEMANTIC(TYPE_NAME, SEMANTIC_TYPE_NAME, args...)
#define DW_DESCRIBE_UNNAMED_PARAMETER(TYPE_NAME, args...)
#define DW_DESCRIBE_PARAMETER(TYPE_NAME, args...)
#define DW_DESCRIBE_PORT(TYPE_NAME, NAME, args...)
std::unique_ptr< Node > m_impl
virtual dwStatus preShutdown()=0
actions to be taken before node shutdown
The interface to access parameter values identified by name and/or (semantic) type.
This node computes the global vehicle state and motion over time using signals from GPS and relative ...
static constexpr auto describeOutputPorts()
static constexpr auto describePasses()
static constexpr auto describeInputPorts()
dwGlobalEgomotionNode(const dwGlobalEgomotionNodeInitParams ¶ms, const dwContextHandle_t ctx)
dwStatus preShutdown() override
static std::unique_ptr< dwGlobalEgomotionNode > create(ParameterProvider &provider)
static constexpr auto describeParameters()
const char * gpsSensorName
constexpr std::tuple describeConstructorArguments()
constexpr PassDescriptorT< 0 > describePass(dw::core::StringView &&name, dwProcessorType processorType)
dwTime_t nvSciChannelWaitTimeUs
Wait time for nvSciChannel.
constexpr auto describePassCollection(const Args &&... args) -> std::tuple< Args... >
constexpr auto describePortCollection(Args &&... args) -> dw::core::Tuple< Args... >
dwConstRigHandle_t rigHandle