This reference page is linked to from the following overview
topics: Port
Data Access.
#include <xsi_dataarray2D.h>
Class Description
template<class T>
class XSI::CDataArray2D< T >
This template class encapsulates 2D data arrays that are passed
to custom node plug-ins during a graph evaluation. The underlying
data arrays are zero-based, the following types are available:
As for
CDataArray, instances of
CDataArray2D are created based on the current evaluation
context and a specific port type (input ports only).
CDataArray2D objects are also indexed with
CIndexSet objects. Unlike
CDataArray,
CDataArray2D contains sub-arrays where data can be accessed
through the
CDataArray2D::Accessor class.
- Note:
- If the class type doesn't match the port data type being
evaluated, an error occurs at run-time and a class instance is
created with an empty array.
- See also:
-
CDataArray2D,
CIndexSet,
ICENodeDef, Type
Definitions for CDataArray2D
- Since:
- 7.0
- Example:
Inherits CBaseDataArray2D.
List of all
members.
Member Typedef Documentation
TData is the underlying data type of a
CDataArray2D instance. Possible values are:
Constructor & Destructor Documentation
Constructor for data types bound to input ports.
- Parameters:
-
in_ctxt |
ICENode
evaluation context. |
in_nInputPortID |
Input port identifier. |
in_nInstanceIndex |
The group instance of the port. |
Constructor for data types bound to output ports.
- Parameters:
-
in_ctxt |
ICENode
evaluation context. |
Member Function Documentation
SICPPSDK_INLINE CStatus CopyFrom |
( |
ULONG |
in_nInputPortID, |
|
|
ULONG |
in_nInstanceIndex =
0 |
|
) |
|
|
Copy the data from a given input port to this object buffer
without allocating memory. This is typically used for passing data
by reference from input to output ports, similar to what the
built-in 'pass through' node is doing.
- Parameters:
-
in_nInputPortID |
Input port identifier. |
in_nInstanceIndex |
The group instance of the port. |
- Returns:
-
CStatus::OK Success
-
CStatus::InvalidArgument Fails if in_nInputPortID is not an
input port identifier or in_nInstanceIndex is invalid.
-
CStatus::AccessDenied This array is not an output type or
wasn't created properly.
- Example:
Returns an accessor at a given index. This operator is called
when reading the data so the return value is read-only.
- Parameters:
-
in_nArrayIndex |
Index in the array. The index must be smaller than the number
of elements in the array, otherwise the results are
unpredicted. |
- Returns:
- Accessor object.
Changes the size of the sub-array at a given position and
returns an accessor pointing to the resized sub-array.
- Parameters:
-
in_nArrayIndex |
Index in the array. The index must be smaller than the number
of elements in the array, otherwise the results are
unpredicted. |
in_nSize |
The new size. |
- Returns:
- Accessor object.
SICPPSDK_INLINE ULONG GetCount |
( |
void |
|
) |
const |
Returns the number of elements in the array.
- Returns:
- Number of elements.
SICPPSDK_INLINE bool IsConstant |
( |
|
) |
const |
Returns true if the array is constant or false otherwise. A
constant array has only one value.
- Returns:
- True if constant, false otherwise.
The documentation for this class was generated from the following
file: