This reference page is linked to from the following overview
topics: Softimage
2014.
#include <xsi_longarray.h>
Class Description
The CLongArray
is an uni-dimensional array of LONG values.
The array is zero-based, which means that the first item index
is 0 and the larger index is one less than the number of elements
contained in the array.
Items are added with CLongArray::Add.
You can also use CLongArray::Attach
to encapsulate an external array. When an array is attached, its
items are accessible through the CLongArray
API.
- See also:
- Cluster::FindIndices,
CClusterElementArray::GetArray, X3DObject::AddPolygonMesh,
CTriangleRefArray::GetIndexArray, Triangle::GetIndexArray,
CSegmentRefArray::GetIndexArray,
CSampleRefArray::GetIndexArray, PolygonMesh::Get,
PolygonMesh::Set,
Point::GetIndexArray,
CNurbsSampleRefArray::GetUVSamplingCoordinateArray,
CNurbsSampleRefArray::GetIndexArrayFromUVSamplingCoordinateArray,
Geometry::AddCluster,
Facet::GetIndexArray, ClusterProperty::PutItemsByIndex,
ClusterProperty::GetItemsByIndex, Geometry::CreateSubComponent
List of all
members.
Constructor & Destructor Documentation
Constructs a CLongArray
and optionally initializes the array to a known size.
- Parameters:
-
in_size |
Size of array, defaults to 0. |
Member Function Documentation
Assignment operator.
- Parameters:
-
in_array |
constant class object. |
- Returns:
- A reference to this array.
Adds the value of each element of in_array
to the
value of the corresponding element of this CLongArray.
The result is stored in this CLongArray
object.
- Parameters:
-
- Returns:
- A reference to this array.
- Since:
- 5.1
Subtracts the value of each element of in_array
from the value of the corresponding element of this CLongArray.
The result is stored in this CLongArray
object.
- Parameters:
-
- Returns:
- A reference to this array.
- Since:
- 5.1
Returns the number of items in this CLongArray
- Returns:
- The number of items in the array.
CStatus Attach |
( |
LONG * |
in_pArray, |
|
|
LONG |
in_nSize |
|
) |
|
|
Encapsulates a pointer to LONG without taking ownership of it
(i.e. the memory is not released when the CLongArray
is deleted). The content of the CLongArray
is erased before attaching the external array. Attach does not take
a copy of the external array, however functions like Add and Resize
will force a copy of the encapsulated array.
- Parameters:
-
in_pArray |
Array to encapsulate. |
in_nSize |
Number of elements in the array. |
- Returns:
-
CStatus::OK success
-
CStatus::Fail Operation failed.
-
CStatus::InvalidArgument Pointer is null or size is <=
0.
- See also:
- CLongArray::Add,
CLongArray::Resize
- Since:
- 5.1
CStatus Add |
( |
const LONG & |
in_item |
) |
|
Adds a LONG at the end of this array.
- Parameters:
-
in_item |
New item to be added at the end of the array. |
- Note:
- There is a performance cost when calling Add if an external
array has been attached with the Attach method: CLongArray
takes a copy of the external array before appending the item.
- Returns:
-
CStatus::OK success
- See also:
- CLongArray::Attach
Erases all elements contained in the array.
- Returns:
-
CStatus::OK success
Reallocates memory for the array, preserves its contents if the
new size is larger than existing size.
- Note:
- There is a performance cost when calling Resize if an external
array has been attached with the Attach method. The method takes a
copy of the external array before resizing.
- Parameters:
-
in_size |
New size of the array. |
- Returns:
-
CStatus::OK success
-
CStatus::InvalidArgument in_size < 0
- See also:
- CLongArray::Attach
CStatus Resize |
( |
LONG |
in_size, |
|
|
bool |
in_bReset |
|
) |
|
|
Reallocates memory for the array, preserves its contents if the
new size is larger than existing size.
- Note:
- There is a performance cost when calling Resize if an external
array has been attached with the Attach method. The method takes a
copy of the external array before resizing.
- Parameters:
-
in_size |
New size of the array. |
in_bReset |
Set the array with 0 if true. If false the array is not reset
and the content is preserved. |
- Returns:
-
CStatus::OK success
-
CStatus::InvalidArgument in_size < 0
- See also:
- CLongArray::Attach
const LONG& operator[] |
( |
LONG |
in_index |
) |
const |
Accessor to elements at a given index. This function can only be
called by constant objects, the returned value is read-only.
- Parameters:
-
in_index |
index in this zero based array.The index must be smaller than
the number of elements in the array, otherwise the results are
unpredicted. |
- Returns:
- A read-only reference to the indexed item.
LONG& operator[] |
( |
LONG |
in_index |
) |
|
Accessor to elements at a given index.
- Parameters:
-
in_index |
index in this zero-based array.The index must be smaller than
the number of elements in the array, otherwise the results are
unpredicted. |
- Returns:
- A reference to the indexed item.
bool operator== |
( |
const CLongArray & |
in_array |
) |
const |
Equality operator.
- Parameters:
-
- Returns:
- true if in_array contains the same number of elements as this
array and if all members of in_array are equal to the corresponding
members of the current array.
bool operator!= |
( |
const CLongArray & |
in_array |
) |
const |
Inequality operator.
- Parameters:
-
- Returns:
- true if one member of in_array is different from the
corresponding member in the current array or if the arrays are not
the same size.
Returns a string that contains the values of this array
separated with the comma character.
- Returns:
- String of values.
- Since:
- 5.1
const LONG* GetArray |
( |
|
) |
const |
Accessor to the internal array of LONGs. The array cannot be
modified and the content is undefined when the CLongArray
object goes out of scope.
- Returns:
- Pointer to an array of LONGs.
- Since:
- 5.1
The documentation for this class was generated from the following
file: