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

The Internal Reference API. More...

Namespaces

namespace  coreflow
 The internal representation of a vx_array.
 

Typedefs

typedef void(* vx_destructor_f) (vx_reference ref)
 Used to destroy an object in a generic way.
 

Functions

vx_bool coreflow::Context::addReference (const vx_reference &ref)
 Used to add a reference to the context.
 
vx_bool coreflow::Context::removeReference (vx_reference &ref)
 Used to remove a reference from the context.
 
 coreflow::Reference::Reference (vx_context context, vx_enum type, vx_reference scope)
 Construct a new Reference object.
 
virtual coreflow::Reference::~Reference ()
 Destroy the vx reference object.
 
vx_uint32 coreflow::Reference::refCount () const
 Returns the reference count of the object.
 
vx_enum coreflow::Reference::dataType () const
 Returns the type of the reference.
 
const vx_charcoreflow::Reference::refName () const
 Returns the name of the reference.
 
void coreflow::Reference::setName (const vx_char *name)
 Sets the name of the reference.
 
static vx_reference coreflow::Reference::createReference (vx_context context, vx_enum type, vx_reftype_e refType, vx_reference scope)
 Used to create a reference.
 
static void coreflow::Reference::printReference (vx_reference ref)
 Prints the values of a reference.
 
static vx_size coreflow::Reference::sizeOfType (vx_enum type)
 Returns the number of bytes in the internal structure for a given type.
 
vx_uint32 coreflow::Reference::incrementReference (vx_reftype_e refType)
 Increments the ref count.
 
vx_uint32 coreflow::Reference::decrementReference (vx_reftype_e refType)
 Decrements the ref count.
 
vx_uint32 coreflow::Reference::totalReferenceCount ()
 Returns the total reference count of the object.
 
static vx_status coreflow::Reference::releaseReference (vx_reference *ref, vx_enum type, vx_reftype_e reftype, vx_destructor_f special_destructor)
 Used to destroy a reference.
 
void coreflow::Reference::initReferenceForDelay (vx_delay delay, vx_int32 index)
 Used to initialize any vx_reference as a delay element.
 
virtual void coreflow::Reference::destruct ()
 Destruct reference.
 

Detailed Description

The Internal Reference API.

Typedef Documentation

◆ vx_destructor_f

typedef void(* vx_destructor_f) (vx_reference ref)

#include <vx_internal.h>

Used to destroy an object in a generic way.

Function Documentation

◆ addReference()

vx_bool coreflow::Context::addReference ( const vx_reference & ref)

#include <vx_context.h>

Used to add a reference to the context.

Parameters
[in]refThe pointer to the reference object.

◆ createReference()

static vx_reference coreflow::Reference::createReference ( vx_context context,
vx_enum type,
vx_reftype_e refType,
vx_reference scope )
static

#include <vx_reference.h>

Used to create a reference.

Note
This does not add the reference to the system context yet.
Parameters
[in]contextThe system context.
[in]typeThe vx_type_e type desired.
[in]refTypeThe reference type.
[in]scopeThe parent reference.

◆ dataType()

vx_enum coreflow::Reference::dataType ( ) const

#include <vx_reference.h>

Returns the type of the reference.

Returns
vx_enum The type of the reference

◆ decrementReference()

vx_uint32 coreflow::Reference::decrementReference ( vx_reftype_e refType)

#include <vx_reference.h>

Decrements the ref count.

Parameters
[in]refTypeThe reference type to decrement.

◆ destruct()

◆ incrementReference()

vx_uint32 coreflow::Reference::incrementReference ( vx_reftype_e refType)

#include <vx_reference.h>

Increments the ref count.

Parameters
[in]refTypeThe reference type to increment.

◆ initReferenceForDelay()

void coreflow::Reference::initReferenceForDelay ( vx_delay delay,
vx_int32 index )

#include <vx_reference.h>

Used to initialize any vx_reference as a delay element.

Parameters
[in]delayThe delay to which the object belongs
[in]indexThe index in the delay

◆ printReference()

static void coreflow::Reference::printReference ( vx_reference ref)
static

#include <vx_reference.h>

Prints the values of a reference.

Parameters
[in]refThe reference to print.

◆ refCount()

vx_uint32 coreflow::Reference::refCount ( ) const

#include <vx_reference.h>

Returns the reference count of the object.

Returns
vx_uint32 The reference count

◆ Reference()

coreflow::Reference::Reference ( vx_context context,
vx_enum type,
vx_reference scope )
protected

#include <vx_reference.h>

Construct a new Reference object.

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

◆ refName()

const vx_char * coreflow::Reference::refName ( ) const

#include <vx_reference.h>

Returns the name of the reference.

Returns
const vx_char* The name of the reference

◆ releaseReference()

static vx_status coreflow::Reference::releaseReference ( vx_reference * ref,
vx_enum type,
vx_reftype_e reftype,
vx_destructor_f special_destructor )
static

#include <vx_reference.h>

Used to destroy a reference.

Parameters
[in]refThe reference to release.
[in]typeThe vx_type_e to check against.
[in]reftypeThe reference type.
[in]special_destructorThe a special function to call after the total count has reached zero, if NULL, a default destructor is used.

◆ removeReference()

vx_bool coreflow::Context::removeReference ( vx_reference & ref)

#include <vx_context.h>

Used to remove a reference from the context.

Parameters
[in]refThe pointer to the reference object.

◆ setName()

void coreflow::Reference::setName ( const vx_char * name)

#include <vx_reference.h>

Sets the name of the reference.

Parameters
nameThe name to set

◆ sizeOfType()

static vx_size coreflow::Reference::sizeOfType ( vx_enum type)
static

#include <vx_reference.h>

Returns the number of bytes in the internal structure for a given type.

◆ totalReferenceCount()

vx_uint32 coreflow::Reference::totalReferenceCount ( )

#include <vx_reference.h>

Returns the total reference count of the object.

◆ ~Reference()

virtual coreflow::Reference::~Reference ( )
protectedvirtual

#include <vx_reference.h>

Destroy the vx reference object.