CoreFlow 1.0.0
A modern orchestration and execution runtime
Loading...
Searching...
No Matches
Internal Node API

The internal Node API. More...

Namespaces

namespace  coreflow
 The internal representation of a vx_array.
 

Enumerations

enum  vx_node_attribute_internal_e { VX_NODE_ATTRIBUTE_TILE_MEMORY_PTR = VX_ATTRIBUTE_BASE(VX_ID_KHRONOS, VX_TYPE_NODE) + 0xD }
 The internal node attributes. More...
 

Functions

vx_status vxSetChildGraphOfNode (vx_node node, vx_graph graph)
 Used to set the graph as a child of the node within another graph.
 
vx_graph vxGetChildGraphOfNode (vx_node node)
 Retrieves the handle of the child graph, if it exists.
 
 coreflow::Node::Node (vx_context context, vx_reference scope)
 Construct a new Node object.
 
 coreflow::Node::~Node ()
 Destroy the Node object.
 
static vx_node coreflow::Node::createNode (vx_graph graph, vx_kernel kernel)
 Create a new node.
 
static vx_node coreflow::Node::createNode (vx_graph graph, vx_kernel kernel, std::initializer_list< vx_reference > params)
 Create a new node with parameters.
 
void coreflow::Node::setParameter (vx_uint32 index, vx_reference value)
 Node parameter setter, no check.
 
vx_status coreflow::Node::setTarget (vx_enum target_enum, const char *target_string)
 Set the target for the node.
 
vx_size coreflow::Node::localDataSize () const
 Get the local data size of the node.
 
vx_ptr_t coreflow::Node::localDataPtr () const
 Get the local data pointer of the node.
 
vx_size coreflow::Node::globalDataSize () const
 Get the global data size of the node.
 
vx_ptr_t coreflow::Node::globalDataPtr () const
 Get the global data pointer of the node.
 
vx_border_t coreflow::Node::border () const
 Get the border mode of the node.
 
vx_uint32 coreflow::Node::numParams () const
 Get the number of parameters of the node.
 
vx_perf_t coreflow::Node::performance () const
 Get the performance of the node.
 
vx_status coreflow::Node::getStatus () const
 Get the status of the node.
 
vx_status coreflow::Node::setCallbackFn (vx_nodecomplete_f callback)
 Set the Node Callback Fn object.
 
vx_bool coreflow::Node::isReplicated () const
 Is the node replicated?
 
const vx_boolcoreflow::Node::replicatedFlags () const
 Get the replicated parameters flags.
 
vx_enum coreflow::Node::getState () const
 Get the state of the node.
 
vx_bool coreflow::Node::validRectReset () const
 Get the valid rectangle reset flag.
 
cl_command_queue coreflow::Node::clCommandQueue () const
 Get the OpenCL command queue for the node.
 
vx_nodecomplete_f coreflow::Node::callbackFn () const
 Get the callback function for the node.
 
static vx_status coreflow::Node::replicateNode (vx_graph graph, vx_node first_node, vx_bool *replicate, vx_uint32 number_of_parameters)
 Replicate the node in the graph.
 
static vx_status coreflow::Node::setChildGraphOfNode (vx_node node, vx_graph graph)
 Used to set the graph as a child of the node within another graph.
 
static vx_graph coreflow::Node::getChildGraphOfNode (vx_node node)
 Retrieves the handle of the child graph, if it exists.
 
void coreflow::Node::destruct () override final
 Used to completely destroy a node.
 
vx_status coreflow::Node::removeNode ()
 Used to remove a node from a graph.
 
static void coreflow::Node::printNode (vx_node node)
 Print node object.
 

Detailed Description

The internal Node API.

Enumeration Type Documentation

◆ vx_node_attribute_internal_e

#include <vx_node.h>

The internal node attributes.

Enumerator
VX_NODE_ATTRIBUTE_TILE_MEMORY_PTR 

Function Documentation

◆ border()

vx_border_t coreflow::Node::border ( ) const

#include <vx_node.h>

Get the border mode of the node.

Returns
vx_border_t The border mode

◆ callbackFn()

vx_nodecomplete_f coreflow::Node::callbackFn ( ) const

#include <vx_node.h>

Get the callback function for the node.

Returns
vx_nodecomplete_f The callback function

◆ clCommandQueue()

cl_command_queue coreflow::Node::clCommandQueue ( ) const

#include <vx_node.h>

Get the OpenCL command queue for the node.

Returns
cl_command_queue The OpenCL command queue

◆ createNode() [1/2]

static vx_node coreflow::Node::createNode ( vx_graph graph,
vx_kernel kernel )
static

#include <vx_node.h>

Create a new node.

Parameters
graphThe graph associated with this node
kernelThe kernel associated with this node
Returns
vx_node The node object

◆ createNode() [2/2]

static vx_node coreflow::Node::createNode ( vx_graph graph,
vx_kernel kernel,
std::initializer_list< vx_reference > params )
static

#include <vx_node.h>

Create a new node with parameters.

Parameters
graphThe graph associated with this node
kernelThe kernel associated with this node
paramsThe parameters associated with this node
Returns
vx_node The node object

◆ destruct()

void coreflow::Node::destruct ( )
finaloverridevirtual

#include <vx_node.h>

Used to completely destroy a node.

Reimplemented from coreflow::Reference.

◆ getChildGraphOfNode()

static vx_graph coreflow::Node::getChildGraphOfNode ( vx_node node)
static

#include <vx_node.h>

Retrieves the handle of the child graph, if it exists.

Parameters
[in]nodeThe node.
Returns
Returns the handle of the child graph or zero if it doesn't have one.

◆ getState()

vx_enum coreflow::Node::getState ( ) const

#include <vx_node.h>

Get the state of the node.

Returns
vx_enum The state of the node

◆ getStatus()

vx_status coreflow::Node::getStatus ( ) const

#include <vx_node.h>

Get the status of the node.

Returns
vx_status The status of the node

◆ globalDataPtr()

vx_ptr_t coreflow::Node::globalDataPtr ( ) const

#include <vx_node.h>

Get the global data pointer of the node.

Returns
vx_ptr_t The global data pointer

◆ globalDataSize()

vx_size coreflow::Node::globalDataSize ( ) const

#include <vx_node.h>

Get the global data size of the node.

Returns
vx_size The global data size

◆ isReplicated()

vx_bool coreflow::Node::isReplicated ( ) const

#include <vx_node.h>

Is the node replicated?

Returns
vx_bool True if the node is replicated, false otherwise

◆ localDataPtr()

vx_ptr_t coreflow::Node::localDataPtr ( ) const

#include <vx_node.h>

Get the local data pointer of the node.

Returns
vx_ptr_t The local data pointer

◆ localDataSize()

vx_size coreflow::Node::localDataSize ( ) const

#include <vx_node.h>

Get the local data size of the node.

Returns
vx_size The local data size

◆ Node()

coreflow::Node::Node ( vx_context context,
vx_reference scope )

#include <vx_node.h>

Construct a new Node object.

Parameters
contextThe context associated with this obj
scopeThe parent ref of this obj

◆ numParams()

vx_uint32 coreflow::Node::numParams ( ) const

#include <vx_node.h>

Get the number of parameters of the node.

Returns
vx_uint32 The number of parameters

◆ performance()

vx_perf_t coreflow::Node::performance ( ) const

#include <vx_node.h>

Get the performance of the node.

Returns
vx_perf_t The performance metrics

◆ printNode()

static void coreflow::Node::printNode ( vx_node node)
static

#include <vx_node.h>

Print node object.

Parameters
node

◆ removeNode()

vx_status coreflow::Node::removeNode ( )

#include <vx_node.h>

Used to remove a node from a graph.

Returns
A vx_status_e enumeration.
Return values
VX_SUCCESSNo errors.
VX_ERROR_INVALID_REFERENCEIf *n is not a vx_node.

◆ replicatedFlags()

const vx_bool * coreflow::Node::replicatedFlags ( ) const

#include <vx_node.h>

Get the replicated parameters flags.

Returns
const vx_bool* The array of flags indicating which parameters are replicated

◆ replicateNode()

static vx_status coreflow::Node::replicateNode ( vx_graph graph,
vx_node first_node,
vx_bool * replicate,
vx_uint32 number_of_parameters )
static

#include <vx_node.h>

Replicate the node in the graph.

Parameters
graphThe graph to replicate the node in
first_nodeThe first node to replicate
replicateThe array of flags indicating which parameters to replicate
number_of_parametersThe number of parameters to replicate
Returns
vx_status VX_SUCCESS on success, error code otherwise

◆ setCallbackFn()

vx_status coreflow::Node::setCallbackFn ( vx_nodecomplete_f callback)

#include <vx_node.h>

Set the Node Callback Fn object.

Parameters
callbackThe callback function to set
Returns
vx_status VX_SUCCESS on success, error code otherwise

◆ setChildGraphOfNode()

static vx_status coreflow::Node::setChildGraphOfNode ( vx_node node,
vx_graph graph )
static

#include <vx_node.h>

Used to set the graph as a child of the node within another graph.

Parameters
[in]nodeThe node.
[in]graphThe child graph.
Return values
VX_ERROR_INVALID_GRAPHThe Graph's parameters do not match the Node's parameters.

◆ setParameter()

void coreflow::Node::setParameter ( vx_uint32 index,
vx_reference value )

#include <vx_node.h>

Node parameter setter, no check.

◆ setTarget()

vx_status coreflow::Node::setTarget ( vx_enum target_enum,
const char * target_string )

#include <vx_node.h>

Set the target for the node.

Parameters
target_enumThe target enum to set
target_stringThe target string to set
Returns
vx_status VX_SUCCESS on success, error code otherwise

◆ validRectReset()

vx_bool coreflow::Node::validRectReset ( ) const

#include <vx_node.h>

Get the valid rectangle reset flag.

Returns
vx_bool The valid rectangle reset flag

◆ vxGetChildGraphOfNode()

vx_graph vxGetChildGraphOfNode ( vx_node node)

#include <vx_node.h>

Retrieves the handle of the child graph, if it exists.

Parameters
[in]nodeThe node.
Returns
Returns the handle of the child graph or zero if it doesn't have one.

◆ vxSetChildGraphOfNode()

vx_status vxSetChildGraphOfNode ( vx_node node,
vx_graph graph )

#include <vx_node.h>

Used to set the graph as a child of the node within another graph.

Parameters
[in]nodeThe node.
[in]graphThe child graph.
Return values
VX_ERROR_INVALID_GRAPHThe Graph's parameters do not match the Node's parameters.

◆ ~Node()

coreflow::Node::~Node ( )

#include <vx_node.h>

Destroy the Node object.