This reference page is linked to from the following overview
topics: Softimage
2014.
#include <xsi_doublearray.h>
Class Description
The CDoubleArray
is an uni-dimensional array of doubles.
The array is zero-based, which means that the first item index
is 0 and the larger index is one less that the number of elements
contained in the array.
Items are added with CDoubleArray::Add.
You can also use CDoubleArray::Attach
to encapsulate an external array. When an array is attached, its
items are accessible through the CDoubleArray
API.
- See also:
-
CClusterPropertyElementArray::GetArray,
CClusterPropertyElementArray::GetItem,
CClusterPropertyElementArray::PutItem,
CClusterPropertyElementArray::GetItemsByIndex,
CClusterPropertyElementArray::PutItemsByIndex, FCurve::SetKeys,
CKnotArray::GetArray,
CNurbsCurveData::m_aKnots,
CNurbsSurfaceData::m_aUKnots,
CNurbsSurfaceData::m_aVKnots
List of all
members.
Constructor & Destructor Documentation
Constructs a CDoubleArray
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 CDoubleArray.
The result is stored in this CDoubleArray
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 CDoubleArray.
The result is stored in this CDoubleArray
object.
- Parameters:
-
- Returns:
- A reference to this array.
- Since:
- 5.1
Returns the number of items in this CDoubleArray
- Returns:
- The number of items in the array.
CStatus Attach |
( |
double * |
in_pArray, |
|
|
LONG |
in_nSize |
|
) |
|
|
Encapsulates a pointer to float without taking ownership of it
(i.e. the memory is not released when the CDoubleArray
is deleted). The content of the CDoubleArray
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:
- CDoubleArray::Add,
CDoubleArray::Resize
- Since:
- 5.1
CStatus Add |
( |
const double & |
in_item |
) |
|
Adds a double 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: CDoubleArray
takes a copy of the external array before appending the item.
- Returns:
-
CStatus::OK success
- See also:
- CDoubleArray::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:
- CDoubleArray::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:
- CDoubleArray::Attach
const double& 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
unpredictable. |
- Returns:
- A read-only reference to the indexed item.
double& 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
unpredictable. |
- Returns:
- A reference to the indexed item.
Equality operator.
- Parameters:
-
- Returns:
- True if in_array contains the same number of elements as this
array and all members of
in_array
are equal to the
corresponding one contained in this array.
Inequality operator.
- Parameters:
-
- Returns:
- True if one member of
in_array
is different from
any of the corresponding members in this 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 double* GetArray |
( |
|
) |
const |
Accessor to the internal array of doubles. The array cannot be
modified and the content is undefined when the CDoubleArray
object goes out of scope.
- Returns:
- Pointer to an array of doubles.
- Since:
- 5.1
The documentation for this class was generated from the following
file: