Public Types | |
using | Name_t = FixedString< MAX_NAME_LEN > |
Public Member Functions | |
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 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 |
Static Public Attributes | |
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() |
using dw::framework::Node::Name_t = FixedString<MAX_NAME_LEN> |
|
virtualdefault |
|
pure virtual |
Get the pointer to the error signal for this node.
[out] | errorSignal | The error signal. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Get the pointer to the health signal for this node.
[out] | healthSignals | The health signal. |
[in] | updateFromModule | fetch from module if set to true |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Get the name of the node.
name | The output name. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtualnoexcept |
Get number of passes in the node.
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Get all the passes in the node.
passList | The output list to populate. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Get node passes filtered by processor type and process type.
passList | The output list to populate. |
processorType | Filter by this processor type. |
processType | Filter by this process type. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
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.
[in,out] | signal | that the node owner modifies to store current health. It is pre-filled with the latest module health signal |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
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.
[in,out] | signal | that the node owner modifies to store current health. It is pre-filled with the latest module health signal |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Resets the state of the node.
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, dw::framework::SimpleNode, and dw::framework::SimpleNodeT< T >.
|
pure virtual |
Runs all the passes in the node.
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Run one pass by index as defined by the pass descriptors.
passIndex | The index of the pass to run. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Run one pass by ID as defined by the PassList enum class.
passID | The ID of the pass to run. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Sets an input channel for this node with an accompanying port.
channel | The channel to bind to the portID. |
portID | The port to bind the channel with. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Sets an input channel for this node with an accompanying port.
channel | The channel to bind to the portID. |
portID | The port to bind the channel with. |
dataType | The type of data received by this node from the channel |
Implemented in dw::framework::SimpleNode, dw::framework::ExceptionSafeProcessNode, and dw::framework::ExceptionSafeSensorNode.
|
pure virtual |
Sets the node's iteration count.
iterationCount | The current iteration count |
Implemented in dw::framework::SimpleNode, dw::framework::ExceptionSafeProcessNode, and dw::framework::ExceptionSafeSensorNode.
|
pure virtual |
Set the name of the node.
name | The name of the node. |
Implemented in dw::framework::SimpleNode, dw::framework::ExceptionSafeProcessNode, and dw::framework::ExceptionSafeSensorNode.
|
pure virtual |
Sets an output channel for this node with an accompanying port.
channel | The channel to bind to the portID. |
portID | The port to bind the channel with. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
Set the current state in node. Node implementation of this API need to be thread-safe.
state | The name of the new state which is about to start. The pointer is valid only for the runtime of the function and data should be stored with a deep copy. |
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, and dw::framework::SimpleNode.
|
pure virtual |
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.
Implemented in dw::framework::ExceptionSafeProcessNode, dw::framework::ExceptionSafeSensorNode, dw::framework::SimpleNode, and dw::framework::SimpleNodeT< T >.
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |