Definition at line 127 of file SimpleNodeT.hpp.
Public Types | |
using | NodeT = T |
Public Member Functions | |
dwStatus | reset () override |
The default implementation calls SimpleNode::resetPorts. More... | |
virtual dwStatus | setupImpl () |
The default implementation calls SimpleNode::setup. More... | |
SimpleNodeT () | |
Default constructor registering the setup and teardown passes. More... | |
SimpleNodeT (NodeAllocationParams params) | |
virtual dwStatus | teardownImpl () |
The default implementation calls SimpleNode::teardown. More... | |
dwStatus | validate () override |
Validate that all registered ports which have the flag binding-required are bound to a channel. More... | |
![]() | |
dwStatus | addToErrorSignal (uint32_t error, dwTime_t timestamp=0L) final |
dwStatus | addToHealthSignal (uint32_t error, dwTime_t timestamp=0L) override |
dwStatus | clearErrorSignal () override |
dwStatus | clearHealthSignal () override |
dwStatus | collectErrorSignals (dwGraphErrorSignal *&errorSignal, bool updateFromModule=true) override |
dwStatus | collectHealthSignals (dwGraphHealthSignal *&healthSignal, bool updateFromModule=false) override |
dwStatus | getInputChannel (const size_t portID, ChannelObject *&channel) const override |
Gets the input channel associated with the input port. More... | |
template<typename NodeT , size_t PortIndex> | |
ManagedPortInput< decltype(portType< NodeT, PortDirection::INPUT, PortIndex >())> & | getInputPort () |
Get a previously initialized non-array ManagedPortInput. More... | |
dwStatus | getInputPort (const size_t portID, dw::framework::PortBase *&port) const override |
Gets the input port associated with the input port Id. More... | |
template<typename NodeT , size_t PortIndex> | |
ManagedPortInput< decltype(portType< NodeT, PortDirection::INPUT, PortIndex >())> & | getInputPort (size_t arrayIndex) |
Get one specific ManagedPortInput from a previously initialized input array port. More... | |
uint32_t | getIterationCount () const |
dwStatus | getModuleErrorSignal (dwErrorSignal &errorSignal) override |
dwStatus | getModuleHealthSignal (dwHealthSignal &healthSignal) override |
dwStatus | getName (const char **name) override |
dwStatus | getNodeErrorSignal (dwGraphErrorSignal &errorSignal) override |
dwStatus | getNodeHealthSignal (dwGraphHealthSignal &healthSignal) override |
uint32_t | getNodePeriod () const |
dwStatus | getOutputChannel (const size_t portID, ChannelObject *&channel) const override |
Gets the output channel associated with the output port. More... | |
template<typename NodeT , size_t PortIndex> | |
ManagedPortOutput< decltype(portType< NodeT, PortDirection::OUTPUT, PortIndex >())> & | getOutputPort () |
Get a previously initialized non-array ManagedPortOutput. More... | |
dwStatus | getOutputPort (const size_t portID, dw::framework::PortBase *&port) const override |
Gets the output port associated with the output port Id. More... | |
template<typename NodeT , size_t PortIndex> | |
ManagedPortOutput< decltype(portType< NodeT, PortDirection::OUTPUT, PortIndex >())> & | getOutputPort (size_t arrayIndex) |
Get one specific ManagedPortOutput from a previously initialized output array port. More... | |
dwStatus | getPass (Pass **pass, size_t index) override |
size_t | getPassCount () const noexcept override |
dwStatus | getPasses (VectorFixed< Pass * > &passList) override |
const dw::core::HeapHashMap< size_t, std::shared_ptr< ManagedPortInputBase > > & | getRegisteredInputPorts () const |
const dw::core::HeapHashMap< size_t, std::shared_ptr< ManagedPortOutputBase > > & | getRegisteredOutputPorts () const |
template<typename NodeT , size_t PortIndex, typename... Args> | |
void | initInputArrayPort (size_t arrayIndex, Args &&... args) |
Initialize one ManagedPortInput of an array which will be owned by the base class and can be retrieved using getInputPort(size_t). More... | |
template<typename NodeT , size_t PortIndex, typename... Args> | |
void | initInputArrayPorts (Args &&... args) |
Initialize an array of ManagedPortInput which will be owned by the base class and can be retrieved using getInputPort(size_t). More... | |
template<typename NodeT , size_t PortIndex, typename... Args> | |
void | initInputPort (Args &&... args) |
Initialize a ManagedPortInput which will be owned by the base class and can be retrieved using getInputPort(). More... | |
template<typename NodeT , size_t PortIndex, typename... Args> | |
void | initOutputArrayPort (size_t arrayIndex, Args &&... args) |
Initialize one ManagedPortOutput of an array which will be owned by the base class and can be retrieved using getOutputPort(size_t). More... | |
template<typename NodeT , size_t PortIndex, typename... Args> | |
void | initOutputArrayPorts (Args &&... args) |
Initialize an array of ManagedPortOutput which will be owned by the base class and can be retrieved using getOutputPort(size_t). More... | |
template<typename NodeT , size_t PortIndex, typename... Args> | |
void | initOutputPort (Args &&... args) |
Initialize a ManagedPortOutput which will be owned by the base class and can be retrieved using getOutputPort(). More... | |
template<typename Func > | |
void | iterateManagedInputPorts (Func func) |
template<typename Func > | |
void | iterateManagedOutputPorts (Func func) |
template<typename Func , typename PortList > | |
void | iteratePorts (PortList &portList, Func func) |
dwStatus | reset () override |
void | resetPorts () override |
Default implementation to reset ports managed by the base class. More... | |
dwStatus | run () override |
dwStatus | runPass (size_t passIndex) override |
dwStatus | setInputChannel (ChannelObject *channel, size_t portID) override |
Associate an input port with a channel instances. More... | |
dwStatus | setIterationCount (uint32_t iterationCount) override |
template<typename ModuleHandle_t > | |
dwStatus | setModuleHandle (ModuleHandle_t handle, dwContextHandle_t context) |
dwStatus | setName (const char *name) final |
dwStatus | setNodePeriod (uint32_t period) override |
virtual dwStatus | setObjectHandle (dwModuleHandle_t handle) |
dwStatus | setOutputChannel (ChannelObject *channel, size_t portID) override |
Associate an output port with a channel instances. More... | |
dwStatus | setState (const char *state) override |
dwStatus | setup () |
Default implementation of the setup pass. More... | |
SimpleNode (NodeAllocationParams params) | |
Constructor which tailors the preallocated size of the internal collections for ports and passes to the need of the concrete node. More... | |
dwStatus | teardown () |
Default implementation of the teardown pass. More... | |
dwStatus | updateCurrentErrorSignal (dwGraphErrorSignal &signal) override |
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... | |
dwStatus | updateCurrentHealthSignal (dwGraphHealthSignal &signal) override |
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... | |
dwStatus | updateHealthSignal (const dwGraphHealthSignal &signal) |
Adds the provided Health Signal to the Health Signal Array. If the array is full, the new signal will not be added. More... | |
dwStatus | validate () override |
dwStatus | validate (const char *direction, const PortCollectionDescriptor &collection, dw::core::Function< bool(size_t)> isPortBound) |
Helper function used by dw::framework::SimpleNodeT::validate. More... | |
![]() | |
virtual dwStatus | addToErrorSignal (uint32_t error, dwTime_t timestamp=0L)=0 |
A function the allows user to add an error to the error signal list. More... | |
virtual dwStatus | addToHealthSignal (uint32_t error, dwTime_t timestamp=0L)=0 |
A function the allows user to add an error to the health signal list. More... | |
virtual dwStatus | clearErrorSignal ()=0 |
Clear the error signal for this node. More... | |
virtual dwStatus | clearHealthSignal ()=0 |
Clear the health signal for this node. More... | |
virtual dwStatus | collectErrorSignals (dwGraphErrorSignal *&errorSignal, bool updateFromModule=true)=0 |
Collect error signals from node and module, combine and return the pointer to the error signal for this node. If combination of module and node signals exceeds max amount, will return up to max amount, node first, and DW_BUFFER_FULL. More... | |
virtual dwStatus | collectHealthSignals (dwGraphHealthSignal *&healthSignal, bool updateFromModule=false)=0 |
Collect health signals from node and module, combine and return the pointer to the health signal for this node. If combination of module and node signals exceeds max amount, will return up to max amount, node first, and DW_BUFFER_FULL. More... | |
virtual dwStatus | getInputChannel (const size_t portID, ChannelObject *&channel) const =0 |
Gets the input channel associated with the input port. More... | |
virtual dwStatus | getInputPort (const size_t portID, dw::framework::PortBase *&port) const =0 |
Gets the input port associated with the port id. More... | |
virtual dwStatus | getModuleErrorSignal (dwErrorSignal &errorSignal)=0 |
Get a copy of the error signals from the module that is a member of this node. More... | |
virtual dwStatus | getModuleHealthSignal (dwHealthSignal &healthSignal)=0 |
Return a copy of health signals from module that is a member of node. More... | |
virtual dwStatus | getName (const char **name)=0 |
Get the name of the node. More... | |
virtual dwStatus | getNodeErrorSignal (dwGraphErrorSignal &errorSignal)=0 |
Get a copy of the error signals for the node. More... | |
virtual dwStatus | getNodeHealthSignal (dwGraphHealthSignal &healthSignal)=0 |
Return a copy of graph health signals for the node. More... | |
virtual dwStatus | getOutputChannel (const size_t portID, ChannelObject *&channel) const =0 |
Gets the output channel associated with the output port. More... | |
virtual dwStatus | getOutputPort (const size_t portID, dw::framework::PortBase *&port) const =0 |
Gets the output port associated with the port id. More... | |
virtual dwStatus | getPass (Pass **pass, size_t index)=0 |
Get a const pointer to the pass at a specific index. 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 | 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 | setInputChannel (ChannelObject *channel, size_t portID)=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 | setNodePeriod (uint32_t period)=0 |
Set the node's period. More... | |
virtual dwStatus | setOutputChannel (ChannelObject *channel, size_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 | updateCurrentErrorSignal (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 | updateCurrentHealthSignal (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 | 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 |
Additional Inherited Members | |
![]() | |
static constexpr const size_t | MAX_NAME_LEN {128U} |
![]() | |
dwGraphHealthSignal & | getHealthSignal () |
dwStatus | getModuleHandle (dwModuleHandle_t *moduleHandle, void *handle, dwContextHandle_t context) |
template<typename NodeT , size_t PassIndex, typename PassFunctionT > | |
void | registerPass (PassFunctionT func, cudaStream_t const cudaStream, std::initializer_list< std::pair< dwStatus, uint32_t > > const &returnMapping={}) |
Register a GPU pass function and a cuda stream with the node base class. More... | |
template<typename NodeT , size_t PassIndex, typename PassFunctionT > | |
void | registerPass (PassFunctionT func, std::initializer_list< std::pair< dwStatus, uint32_t > > const &returnMapping={}) |
Register a pass function with the node base class. More... | |
![]() | |
std::atomic< bool > | m_asyncResetFlag |
dw::core::HeapHashMap< size_t, std::shared_ptr< ManagedPortInputBase > > | m_inputPorts |
dw::core::HeapHashMap< size_t, std::shared_ptr< ManagedPortOutputBase > > | m_outputPorts |
using dw::framework::SimpleNodeT< T >::NodeT = T |
Definition at line 131 of file SimpleNodeT.hpp.
|
inline |
Default constructor registering the setup and teardown passes.
Definition at line 134 of file SimpleNodeT.hpp.
|
inline |
Definition at line 140 of file SimpleNodeT.hpp.
|
inlineoverridevirtual |
The default implementation calls SimpleNode::resetPorts.
Reimplemented from dw::framework::SimpleNode.
Definition at line 159 of file SimpleNodeT.hpp.
References dw::framework::SimpleNode::resetPorts().
|
inlinevirtual |
The default implementation calls SimpleNode::setup.
Definition at line 147 of file SimpleNodeT.hpp.
References dw::framework::SimpleNode::setup().
|
inlinevirtual |
The default implementation calls SimpleNode::teardown.
Definition at line 153 of file SimpleNodeT.hpp.
References dw::framework::SimpleNode::teardown().
|
inlineoverridevirtual |
Validate that all registered ports which have the flag binding-required are bound to a channel.
Reimplemented from dw::framework::SimpleNode.
Definition at line 166 of file SimpleNodeT.hpp.
References dw::framework::PortCollectionDescriptor::getPortSize(), dw::framework::SimpleNode::getRegisteredInputPorts(), dw::framework::SimpleNode::getRegisteredOutputPorts(), and dw::framework::SimpleNode::validate().