class CharArray
 CharArray is the char implementation of ValueArray. See ValueArray for a description.
 See also: ValueArray
  Properties
 | Property | Description | 
|---|
 | AlternativeName | A string that can be used to identify the array in collections. (Inherited from Array) | 
 | ItemCount | The number of individual items in the array. Warning! Do not confuse this count with the count of tuples, they are only the same if TupleSize is equal to 1, i.e. when the tuples are exactly one component each. Also note that the item count should be a multiple of TupleSize. Note that the total number of items cannot exceed INT_MAX. (Inherited from Array) | 
 | Name | The name of the CharArray object. (Inherited from Object) | 
 | TupleCount | The tuple count, meaning how many tuples are in the array. If resized to larger array, the new tuples will not be set to anything. (Inherited from Array) | 
 | TupleSize | The tuple size, meaning how many items of the underlying data type is in a tuple. The tuple size must be set before the array is populated. (Inherited from Array) | 
  Methods
 | Method | Description | 
|---|
 | AddItem | Adds an item to the list, allocates memory as needed to enlarge the list. If many items are being put into the list, use Resize to set the size of the new list (only one reallocation needed) and then use SetItem() / SetTuple() to set the items directly. | 
 | AddObserver | Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object) | 
 | AddTuple | Adds a tuple to the list. Reallocates the list if needed. If many items are being put into the list, use Resize to set the size of the new list (only one reallocation needed) and then use SetItem() / SetRealTuple() to set the items directly. | 
 | AppendArray | Appends an array to this array. The array must be a descendant of ValueArray. For best performance, append arrays of the same basic type. (Inherited from Array) | 
 | Clear | Clears the array and sets the tuple count to 0. Tuple size and name remains the same though. (Inherited from Array) | 
 | CompareTuples | CompareTuples compares a tuple in this array with a tuple in another array. Returns 0 if the tuples are identical, 1 if an element in this array tuple in ascending order is larger and -1 if smaller. (Inherited from Array) | 
 | CopyRange | CopyRange copies a range of tuples from a source array into this array. The arrays must have the same tuple size and base type. This array must be resized to hold the tuples before copying. The basetypes are listed in EBaseTypes. (Inherited from Array) | 
 | CopyTuple | CopyTuple copies one tuple in a source array to a tuple in this array. Both the dest_id and the source_id must exist in the arrays. This array can be used as the source array to copy within the array. (Inherited from Array) | 
 | DeepCopy | Copies data from another array. The arrays must have the same underlying data types. (Inherited from Array) | 
 | Equals | Compares this array, including all its contents, to another array. (Inherited from Array) | 
 | ExtractTuples | Extracts tuples from the array. Note that the destination array must have the same classtype and have the same tuple size as the source array. (If both arrays are decendants of ValueArray, they can be of different types, but the conversion is slow). (Inherited from Array) | 
 | GetBaseType | Returns the id of the basic type that the array is based on The ids are listed in the BaseTypes enumeration. (Inherited from Array) | 
 | GetClass | Get the name of the CharArray class. (Inherited from Object) | 
 | GetData | Returns all tuples in the array as a single item array. | 
 | GetDataRange | Returns a range of tuples in the array. | 
 | GetItem | Gets the value of an item in the list. The id of the item is the exact location of the item (TupleId * TupleSize + Index of item in tuple) Warning! No range checking is done. | 
 | GetMaxItemId | Returns the id of the last item that is in the array. The id returned is equal to (ItemCount - 1). Warning! Do not confuse this id with the id of a tuple, they are only the same if TupleSize is equal to one, i.e. when the tuples are exactly one component each. (Inherited from Array) | 
 | GetMaxTupleId | Returns the id of the tuple last in the list. If the array is empty, the value is unspecified. Note: GetMaxTupleId() always returns (GetTupleCount()-1) as a signed id. (Inherited from Array) | 
 | GetRealItem | GetRealItem() retrieves the item at position id. The id is the id of the item, not the tuple the item belongs to. GetRealItem() converts the value from the actual underlying data type to a real. (Inherited from ValueArray) | 
 | GetTuple | Gets a tuple in the list. The id is the id of the tuple that is being fetched. Warning! No range checking is done. | 
 | IndexedCopy | Copies tuples from a source array through an id table. The id table dictates the order in which the tuples are to be copied to this array. E.g. If the first item in the id table has the value 14, then the tuple with id 14 in the source array will be copied to the first tuple in this array. Note: All ids in the id table must be valid ids of tuples in the source array. The id table is assumed to have a tuple size of 1. The source array and this array must have the same underlying data type, and have the same tuple size. The array must be large enough to hold the copied data. (Inherited from Array) | 
 | IsA | Returns true if CharArray is a or is a descendant of the class named as the type parameter. (Inherited from Object) | 
 | IsEmpty | Returns true if the list is empty. (Inherited from Array) | 
 | IsNull | Returns true if the CharArray object is invalid. (Inherited from Object) | 
 | IsSameObjectAs | Returns true if the CharArray object is valid. (Inherited from Object) | 
 | NewCopy | Creates a new array with the same underlying data type, size and tuple settings as this array. To also copy the actual data, set copy_data to true. (Inherited from Array) | 
 | NewPackedCopy | Like NewCopy, NewPackedCopy creates an array with the same underlying data and tuple settings as the source array. However, NewPackedCopy only copies unique tuples, and if the index_array parameter is set, this index array will contain the same number of tuples as the source array, and with the ids of a specific tuples within the new copy of the array. (Inherited from Array) | 
 | NonNull | Returns true if the CharArray object is valid. (Inherited from Object) | 
 | PrintInfo | Prints the content/info of the CharArray object to the log. (Inherited from Object) | 
 | RemoveObserver | Removes a previously added observer object. (Inherited from Object) | 
 | SetData | Set the array from a range of data values. Note that the array will be resized to the size of the items. Note that the source_item_count is the number of items to set, NOT the number of tuples. | 
 | SetDataFromMemoryPtr | Set the array from a range of data values in a raw memory block. The array will be resized to the size of the tuples. Please set the tuple size before calling this method. Note! that the source_tuple_count is the number of TUPLES to set, not the number of items. Note! This method is intended for advanced users who want to get maximum performance. No range checking is done in this method, and your code will crash if your read area is not large enough. | 
 | SetDataRange | Set a part of the array from a range of data values. Note that the array will be resized to contain the size of the items. Note that the source_item_count is the number of items to set, NOT the number of tuples, but start_tuple_id IS the first tuple index to update. | 
 | SetItem | Sets an item in the list. The id of the item is the exact location of the item (TupleId * TupleSize + Index of item in tuple) Warning! No range checking is done. | 
 | SetRealItem | SetRealItem() sets the item at position id. The id is the id of the item, not the tuple the item belongs to. SetRealItem() converts the value from real to the actual underlying data type. (Inherited from ValueArray) | 
 | SetTuple | Sets a tuple in the list. The id is the id of the tuple that is being updated. Warning! No range checking is done. | 
  Static methods
 | Method | Description | 
|---|
 | IsClassA | Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object) | 
 | SafeCast | SafeCast makes sure the input object is of a class that can be cast into spCharArray, and if this is the case, returns the object cast into spCharArray. (Inherited from Object) | 
  Properties details
  AlternativeName
 A string that can be used to identify the array in collections.
   Syntax
  SetAlternativeName parameters
 | Type | Name | Min | Max | Description | 
|---|
 | const char * | value |  |  | The new alternative name. | 
  GetAlternativeName return value
 Type: spString
  Syntax
  SetAlternativeName parameters
 | Type | Name | Min | Max | Description | 
|---|
 | string | value |  |  | The new alternative name. | 
  GetAlternativeName return value
 Type: string
  Syntax
  SetAlternativeName parameters
 | Name | Type | Min | Max | Description | 
|---|
 | value | str |  |  | The new alternative name. | 
  GetAlternativeName return value
 Type: str
   ItemCount
 The number of individual items in the array. Warning! Do not confuse this count with the count of tuples, they are only the same if TupleSize is equal to 1, i.e. when the tuples are exactly one component each. Also note that the item count should be a multiple of TupleSize. Note that the total number of items cannot exceed INT_MAX.
   Syntax
  SetItemCount parameters
 | Type | Name | Min | Max | Description | 
|---|
 | unsigned int | value | 1 | INT_MAX | The desired item count. | 
  GetItemCount return value
 Type: unsigned int
 Default: 1
  Syntax
  SetItemCount parameters
 | Type | Name | Min | Max | Description | 
|---|
 | uint | value | 1 | INT_MAX | The desired item count. | 
  GetItemCount return value
 Type: uint
 Default: 1
  Syntax
  SetItemCount parameters
 | Name | Type | Min | Max | Description | 
|---|
 | value | int | 1 | INT_MAX | The desired item count. | 
  GetItemCount return value
 Type: int
 Default: 1
   Name
 The name of the CharArray object. (Inherited from Object)
   Syntax
  SetName parameters
 | Type | Name | Min | Max | Description | 
|---|
 | const char * | name |  |  | New name of the object. | 
  GetName return value
 Type: spString
  Syntax
  SetName parameters
 | Type | Name | Min | Max | Description | 
|---|
 | string | name |  |  | New name of the object. | 
  GetName return value
 Type: string
  Syntax
  SetName parameters
 | Name | Type | Min | Max | Description | 
|---|
 | name | str |  |  | New name of the object. | 
  GetName return value
 Type: str
   TupleCount
 The tuple count, meaning how many tuples are in the array. If resized to larger array, the new tuples will not be set to anything.
   Syntax
  SetTupleCount parameters
 | Type | Name | Min | Max | Description | 
|---|
 | unsigned int | value | 1 | INT_MAX | The desired tuple count. | 
  GetTupleCount return value
 Type: unsigned int
 Default: 1
  Syntax
  SetTupleCount parameters
 | Type | Name | Min | Max | Description | 
|---|
 | uint | value | 1 | INT_MAX | The desired tuple count. | 
  GetTupleCount return value
 Type: uint
 Default: 1
  Syntax
  SetTupleCount parameters
 | Name | Type | Min | Max | Description | 
|---|
 | value | int | 1 | INT_MAX | The desired tuple count. | 
  GetTupleCount return value
 Type: int
 Default: 1
   TupleSize
 The tuple size, meaning how many items of the underlying data type is in a tuple. The tuple size must be set before the array is populated.
   Syntax
  SetTupleSize parameters
 | Type | Name | Min | Max | Description | 
|---|
 | unsigned int | value | 1 | 1024 | The desired tuple size. | 
  GetTupleSize return value
 Type: unsigned int
 Default: 1
  Syntax
  SetTupleSize parameters
 | Type | Name | Min | Max | Description | 
|---|
 | uint | value | 1 | 1024 | The desired tuple size. | 
  GetTupleSize return value
 Type: uint
 Default: 1
  Syntax
  SetTupleSize parameters
 | Name | Type | Min | Max | Description | 
|---|
 | value | int | 1 | 1024 | The desired tuple size. | 
  GetTupleSize return value
 Type: int
 Default: 1
   Methods details
  AddItem
 Adds an item to the list, allocates memory as needed to enlarge the list. If many items are being put into the list, use Resize to set the size of the new list (only one reallocation needed) and then use SetItem() / SetTuple() to set the items directly.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | char | value |  |  | The value of the item. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | sbyte | value |  |  | The value of the item. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | value | int |  |  | The value of the item. | 
   AddObserver
 Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Observer | observer |  |  | Observer is the object that will receive events. | 
  Return value
 Type: rid
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Observer | observer |  |  | Observer is the object that will receive events. | 
  Return value
 Type: int
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | observer | Observer |  |  | Observer is the object that will receive events. | 
  Return value
 Type: int
   AddTuple
 Adds a tuple to the list. Reallocates the list if needed. If many items are being put into the list, use Resize to set the size of the new list (only one reallocation needed) and then use SetItem() / SetRealTuple() to set the items directly.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | CharData | tuple |  |  | The value(s) of the tuple. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | sbyte[] | tuple |  |  | The value(s) of the tuple. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | tuple | int |  |  | The value(s) of the tuple. | 
   AppendArray
 Appends an array to this array. The array must be a descendant of ValueArray. For best performance, append arrays of the same basic type.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | source |  |  | The array to append to this array. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | source |  |  | The array to append to this array. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | source | Array |  |  | The array to append to this array. | 
   Clear
 Clears the array and sets the tuple count to 0. Tuple size and name remains the same though.
   Syntax
  Parameters
 Clear takes no parameters.
  Syntax
  Parameters
 Clear takes no parameters.
  Syntax
  Parameters
 Clear takes no parameters.
   CompareTuples
 CompareTuples compares a tuple in this array with a tuple in another array. Returns 0 if the tuples are identical, 1 if an element in this array tuple in ascending order is larger and -1 if smaller.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | otherArray |  |  | The other array to compare with. | 
 | rid | tupleId | 0 | MaxTupleId | The tuple from this array to use for comparison. | 
 | rid | otherTupleId | 0 |  | The tuple from the other array to use for comparison. | 
  Return value
 Type: int
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | otherArray |  |  | The other array to compare with. | 
 | int | tupleId | 0 | MaxTupleId | The tuple from this array to use for comparison. | 
 | int | otherTupleId | 0 |  | The tuple from the other array to use for comparison. | 
  Return value
 Type: int
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | otherArray | Array |  |  | The other array to compare with. | 
 | tupleId | int | 0 | MaxTupleId | The tuple from this array to use for comparison. | 
 | otherTupleId | int | 0 |  | The tuple from the other array to use for comparison. | 
  Return value
 Type: int
   CopyRange
 CopyRange copies a range of tuples from a source array into this array. The arrays must have the same tuple size and base type. This array must be resized to hold the tuples before copying. The basetypes are listed in EBaseTypes.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | sourceArray |  |  | The source array to copy from. | 
 | rid | startDestId |  |  | The first destination tuple id. | 
 | rid | startSrcId |  |  | The first source tuple id. | 
 | unsigned int | count |  |  | The number of tuples to copy. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | sourceArray |  |  | The source array to copy from. | 
 | int | startDestId |  |  | The first destination tuple id. | 
 | int | startSrcId |  |  | The first source tuple id. | 
 | uint | count |  |  | The number of tuples to copy. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | sourceArray | Array |  |  | The source array to copy from. | 
 | startDestId | int |  |  | The first destination tuple id. | 
 | startSrcId | int |  |  | The first source tuple id. | 
 | count | int |  |  | The number of tuples to copy. | 
   CopyTuple
 CopyTuple copies one tuple in a source array to a tuple in this array. Both the dest_id and the source_id must exist in the arrays. This array can be used as the source array to copy within the array.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | sourceArray |  |  | The source array to copy from. | 
 | rid | destId | 0 | MaxTupleId | The tuple index in this array to copy into. | 
 | rid | srcId | 0 |  | The tuple index in the source array to copy from. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | sourceArray |  |  | The source array to copy from. | 
 | int | destId | 0 | MaxTupleId | The tuple index in this array to copy into. | 
 | int | srcId | 0 |  | The tuple index in the source array to copy from. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | sourceArray | Array |  |  | The source array to copy from. | 
 | destId | int | 0 | MaxTupleId | The tuple index in this array to copy into. | 
 | srcId | int | 0 |  | The tuple index in the source array to copy from. | 
   DeepCopy
 Copies data from another array. The arrays must have the same underlying data types.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | source |  |  | The source array to copy from. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | source |  |  | The source array to copy from. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | source | Array |  |  | The source array to copy from. | 
   Equals
 Compares this array, including all its contents, to another array.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | other |  |  | The other array to compare against. | 
  Return value
 Type: bool
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | other |  |  | The other array to compare against. | 
  Return value
 Type: bool
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | other | Array |  |  | The other array to compare against. | 
  Return value
 Type: bool
   Extracts tuples from the array. Note that the destination array must have the same classtype and have the same tuple size as the source array. (If both arrays are decendants of ValueArray, they can be of different types, but the conversion is slow).
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | dest |  |  | The array that will store the extracted tuples. | 
 | rid | start | 0 | MaxTupleId | This array tuple index where the extraction starts. | 
 | unsigned int | count |  | INT_MAX | The number of tuples to extract. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | dest |  |  | The array that will store the extracted tuples. | 
 | int | start | 0 | MaxTupleId | This array tuple index where the extraction starts. | 
 | uint | count |  | INT_MAX | The number of tuples to extract. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | dest | Array |  |  | The array that will store the extracted tuples. | 
 | start | int | 0 | MaxTupleId | This array tuple index where the extraction starts. | 
 | count | int |  | INT_MAX | The number of tuples to extract. | 
   GetBaseType
 Returns the id of the basic type that the array is based on The ids are listed in the BaseTypes enumeration.
   Syntax
  Parameters
 GetBaseType takes no parameters.
  Return value
 Type: EBaseTypes
 | Key | Value | Comment | 
|---|
 | TYPES_ID_VOID | 0 |  | 
 | TYPES_ID_BOOL | 1 |  | 
 | TYPES_ID_CHAR | 2 |  | 
 | TYPES_ID_UCHAR | 3 |  | 
 | TYPES_ID_SHORT | 4 |  | 
 | TYPES_ID_USHORT | 5 |  | 
 | TYPES_ID_INT | 6 |  | 
 | TYPES_ID_UINT | 7 |  | 
 | TYPES_ID_LONG | 8 |  | 
 | TYPES_ID_ULONG | 9 |  | 
 | TYPES_ID_FLOAT | 10 |  | 
 | TYPES_ID_DOUBLE | 11 |  | 
 | TYPES_ID_REAL | 12 |  | 
 | TYPES_ID_RID | 13 |  | 
 | TYPES_ID_RCHAR | 14 |  | 
 | TYPES_ID_RHANDLE | 15 |  | 
 | TYPES_ID_STRING | 16 |  | 
 | TYPES_ID_OBJECT | 17 |  | 
  Syntax
  Parameters
 GetBaseType takes no parameters.
  Return value
 Type: EBaseTypes
 | Key | Value | Comment | 
|---|
 | TYPES_ID_VOID | 0 |  | 
 | TYPES_ID_BOOL | 1 |  | 
 | TYPES_ID_CHAR | 2 |  | 
 | TYPES_ID_UCHAR | 3 |  | 
 | TYPES_ID_SHORT | 4 |  | 
 | TYPES_ID_USHORT | 5 |  | 
 | TYPES_ID_INT | 6 |  | 
 | TYPES_ID_UINT | 7 |  | 
 | TYPES_ID_LONG | 8 |  | 
 | TYPES_ID_ULONG | 9 |  | 
 | TYPES_ID_FLOAT | 10 |  | 
 | TYPES_ID_DOUBLE | 11 |  | 
 | TYPES_ID_REAL | 12 |  | 
 | TYPES_ID_RID | 13 |  | 
 | TYPES_ID_RCHAR | 14 |  | 
 | TYPES_ID_RHANDLE | 15 |  | 
 | TYPES_ID_STRING | 16 |  | 
 | TYPES_ID_OBJECT | 17 |  | 
  Syntax
  Parameters
 GetBaseType takes no parameters.
  Return value
 Type: EBaseTypes
 | Key | Value | Comment | 
|---|
 | EBaseTypes_TYPES_ID_VOID | 0 |  | 
 | EBaseTypes_TYPES_ID_BOOL | 1 |  | 
 | EBaseTypes_TYPES_ID_CHAR | 2 |  | 
 | EBaseTypes_TYPES_ID_UCHAR | 3 |  | 
 | EBaseTypes_TYPES_ID_SHORT | 4 |  | 
 | EBaseTypes_TYPES_ID_USHORT | 5 |  | 
 | EBaseTypes_TYPES_ID_INT | 6 |  | 
 | EBaseTypes_TYPES_ID_UINT | 7 |  | 
 | EBaseTypes_TYPES_ID_LONG | 8 |  | 
 | EBaseTypes_TYPES_ID_ULONG | 9 |  | 
 | EBaseTypes_TYPES_ID_FLOAT | 10 |  | 
 | EBaseTypes_TYPES_ID_DOUBLE | 11 |  | 
 | EBaseTypes_TYPES_ID_REAL | 12 |  | 
 | EBaseTypes_TYPES_ID_RID | 13 |  | 
 | EBaseTypes_TYPES_ID_RCHAR | 14 |  | 
 | EBaseTypes_TYPES_ID_RHANDLE | 15 |  | 
 | EBaseTypes_TYPES_ID_STRING | 16 |  | 
 | EBaseTypes_TYPES_ID_OBJECT | 17 |  | 
   GetClass
 Get the name of the CharArray class. (Inherited from Object)
   Syntax
  Parameters
 GetClass takes no parameters.
  Return value
 Type: spString
  Syntax
  Parameters
 GetClass takes no parameters.
  Return value
 Type: string
  Syntax
  Parameters
 GetClass takes no parameters.
  Return value
 Type: str
   GetData
 Returns all tuples in the array as a single item array.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 
  Return value
 Type: spCharData
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 
  Return value
 Type: spCharData
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 
  Return value
 Type: list[int]
   GetDataRange
 Returns a range of tuples in the array.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | start_tuple_id | 0 | MaxTupleId | The first id in the range. | 
 | unsigned int | tuple_count |  |  | The number of tuples in the range. | 
  Return value
 Type: spCharData
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | start_tuple_id | 0 | MaxTupleId | The first id in the range. | 
 | uint | tuple_count |  |  | The number of tuples in the range. | 
  Return value
 Type: spCharData
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | start_tuple_id | int | 0 | MaxTupleId | The first id in the range. | 
 | tuple_count | int |  |  | The number of tuples in the range. | 
  Return value
 Type: list[int]
   GetItem
 Gets the value of an item in the list. The id of the item is the exact location of the item (TupleId * TupleSize + Index of item in tuple) Warning! No range checking is done.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | id | 0 | MaxItemId | The id of the item. | 
  Return value
 Type: char
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | id | 0 | MaxItemId | The id of the item. | 
  Return value
 Type: sbyte
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | id | int | 0 | MaxItemId | The id of the item. | 
  Return value
 Type: int
   GetMaxItemId
 Returns the id of the last item that is in the array. The id returned is equal to (ItemCount - 1). Warning! Do not confuse this id with the id of a tuple, they are only the same if TupleSize is equal to one, i.e. when the tuples are exactly one component each.
   Syntax
  Parameters
 GetMaxItemId takes no parameters.
  Return value
 Type: rid
  Syntax
  Parameters
 GetMaxItemId takes no parameters.
  Return value
 Type: int
  Syntax
  Parameters
 GetMaxItemId takes no parameters.
  Return value
 Type: int
   GetMaxTupleId
 Returns the id of the tuple last in the list. If the array is empty, the value is unspecified. Note: GetMaxTupleId() always returns (GetTupleCount()-1) as a signed id.
   Syntax
  Parameters
 GetMaxTupleId takes no parameters.
  Return value
 Type: rid
  Syntax
  Parameters
 GetMaxTupleId takes no parameters.
  Return value
 Type: int
  Syntax
  Parameters
 GetMaxTupleId takes no parameters.
  Return value
 Type: int
   GetRealItem
 GetRealItem() retrieves the item at position id. The id is the id of the item, not the tuple the item belongs to. GetRealItem() converts the value from the actual underlying data type to a real.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | id | 0 | MaxItemId | The item to get. | 
  Return value
 Type: real
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | id | 0 | MaxItemId | The item to get. | 
  Return value
 Type: float
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | id | int | 0 | MaxItemId | The item to get. | 
  Return value
 Type: float
   GetTuple
 Gets a tuple in the list. The id is the id of the tuple that is being fetched. Warning! No range checking is done.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | id | 0 | MaxTupleId | The id of the tuple. | 
  Return value
 Type: spCharData
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | id | 0 | MaxTupleId | The id of the tuple. | 
  Return value
 Type: spCharData
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | id | int | 0 | MaxTupleId | The id of the tuple. | 
  Return value
 Type: list[int]
   IndexedCopy
 Copies tuples from a source array through an id table. The id table dictates the order in which the tuples are to be copied to this array. E.g. If the first item in the id table has the value 14, then the tuple with id 14 in the source array will be copied to the first tuple in this array. Note: All ids in the id table must be valid ids of tuples in the source array. The id table is assumed to have a tuple size of 1. The source array and this array must have the same underlying data type, and have the same tuple size. The array must be large enough to hold the copied data.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | source |  |  | The array from which to copy tuples. | 
 | RidArray | idtable |  |  | The array with the tuple indices to copy. | 
 | rid | startId |  |  | The first tuple that will receive the copied values. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Array | source |  |  | The array from which to copy tuples. | 
 | RidArray | idtable |  |  | The array with the tuple indices to copy. | 
 | int | startId |  |  | The first tuple that will receive the copied values. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | source | Array |  |  | The array from which to copy tuples. | 
 | idtable | RidArray |  |  | The array with the tuple indices to copy. | 
 | startId | int |  |  | The first tuple that will receive the copied values. | 
   IsA
 Returns true if CharArray is a or is a descendant of the class named as the type parameter. (Inherited from Object)
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | const char * | type |  |  | Name of the class to check if CharArray is, or is a descendant of. | 
  Return value
 Type: bool
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | string | type |  |  | Name of the class to check if CharArray is, or is a descendant of. | 
  Return value
 Type: bool
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | type | str |  |  | Name of the class to check if CharArray is, or is a descendant of. | 
  Return value
 Type: bool
   IsEmpty
 Returns true if the list is empty.
   Syntax
  Parameters
 IsEmpty takes no parameters.
  Return value
 Type: bool
  Syntax
  Parameters
 IsEmpty takes no parameters.
  Return value
 Type: bool
  Syntax
  Parameters
 IsEmpty takes no parameters.
  Return value
 Type: bool
   IsNull
 Returns true if the CharArray object is invalid. (Inherited from Object)
   Syntax
  Parameters
 IsNull takes no parameters.
  Return value
 Type: bool
  Syntax
  Parameters
 IsNull takes no parameters.
  Return value
 Type: bool
  Syntax
  Parameters
 IsNull takes no parameters.
  Return value
 Type: bool
   IsSameObjectAs
 Returns true if the CharArray object is valid. (Inherited from Object)
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Object | object |  |  | Object to compare with. | 
  Return value
 Type: bool
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Object | object |  |  | Object to compare with. | 
  Return value
 Type: bool
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | object | Object |  |  | Object to compare with. | 
  Return value
 Type: bool
   NewCopy
 Creates a new array with the same underlying data type, size and tuple settings as this array. To also copy the actual data, set copy_data to true.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | bool | copyData |  |  | If set, duplicate all the data. If cleared, return an empty array of the same type. | 
  Return value
 Type: Array
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | bool | copyData |  |  | If set, duplicate all the data. If cleared, return an empty array of the same type. | 
  Return value
 Type: Array
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | copyData | bool |  |  | If set, duplicate all the data. If cleared, return an empty array of the same type. | 
  Return value
 Type: Array
   NewPackedCopy
 Like NewCopy, NewPackedCopy creates an array with the same underlying data and tuple settings as the source array. However, NewPackedCopy only copies unique tuples, and if the index_array parameter is set, this index array will contain the same number of tuples as the source array, and with the ids of a specific tuples within the new copy of the array.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | RidArray | indexArray |  |  | The optional array that will receive the indices of the remapped tuples. | 
  Return value
 Type: Array
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | RidArray | indexArray |  |  | The optional array that will receive the indices of the remapped tuples. | 
  Return value
 Type: Array
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | indexArray | RidArray |  |  | The optional array that will receive the indices of the remapped tuples. | 
  Return value
 Type: Array
   NonNull
 Returns true if the CharArray object is valid. (Inherited from Object)
   Syntax
  Parameters
 NonNull takes no parameters.
  Return value
 Type: bool
  Syntax
  Parameters
 NonNull takes no parameters.
  Return value
 Type: bool
  Syntax
  Parameters
 NonNull takes no parameters.
  Return value
 Type: bool
   PrintInfo
 Prints the content/info of the CharArray object to the log. (Inherited from Object)
   Syntax
  Parameters
 PrintInfo takes no parameters.
  Syntax
  Parameters
 PrintInfo takes no parameters.
  Syntax
  Parameters
 PrintInfo takes no parameters.
   RemoveObserver
 Removes a previously added observer object. (Inherited from Object)
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | observerId |  |  | ObserverId is the id returned by AddObserver when the observer was added. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | observerId |  |  | ObserverId is the id returned by AddObserver when the observer was added. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | observerId | int |  |  | ObserverId is the id returned by AddObserver when the observer was added. | 
   SetData
 Set the array from a range of data values. Note that the array will be resized to the size of the items. Note that the source_item_count is the number of items to set, NOT the number of tuples.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | CharData | source_items |  |  | The array to copy from. | 
 | unsigned int | source_item_count |  |  | The number of items in the array. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | sbyte[] | source_items |  |  | The array to copy from. | 
 | uint | source_item_count |  |  | The number of items in the array. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | source_items | int |  |  | The array to copy from. | 
 | source_item_count | int |  |  | The number of items in the array. | 
   SetDataFromMemoryPtr
 Set the array from a range of data values in a raw memory block. The array will be resized to the size of the tuples. Please set the tuple size before calling this method. Note! that the source_tuple_count is the number of TUPLES to set, not the number of items. Note! This method is intended for advanced users who want to get maximum performance. No range checking is done in this method, and your code will crash if your read area is not large enough.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | void | mem_area |  |  | The array to copy from | 
 | unsigned int | source_tuple_count |  |  | The number of items in the array | 
 | unsigned int | item_stride |  |  | The number of bytes between the address of an item to the address of the next. If items are consecutive in memory, this stride should be the size of on item. | 
 | unsigned int | tuple_stride |  |  | The number of bytes between the address of the first item in one tuple to the address of the first item in the next tuple. E.g, if the items are copied from an array of structs, this stride should be the size of one of the struct objects in the array. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | System.IntPtr | mem_area |  |  | The array to copy from | 
 | uint | source_tuple_count |  |  | The number of items in the array | 
 | uint | item_stride |  |  | The number of bytes between the address of an item to the address of the next. If items are consecutive in memory, this stride should be the size of on item. | 
 | uint | tuple_stride |  |  | The number of bytes between the address of the first item in one tuple to the address of the first item in the next tuple. E.g, if the items are copied from an array of structs, this stride should be the size of one of the struct objects in the array. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | mem_area | None |  |  | The array to copy from | 
 | source_tuple_count | int |  |  | The number of items in the array | 
 | item_stride | int |  |  | The number of bytes between the address of an item to the address of the next. If items are consecutive in memory, this stride should be the size of on item. | 
 | tuple_stride | int |  |  | The number of bytes between the address of the first item in one tuple to the address of the first item in the next tuple. E.g, if the items are copied from an array of structs, this stride should be the size of one of the struct objects in the array. | 
   SetDataRange
 Set a part of the array from a range of data values. Note that the array will be resized to contain the size of the items. Note that the source_item_count is the number of items to set, NOT the number of tuples, but start_tuple_id IS the first tuple index to update.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | start_tuple_id | 0 | MaxTupleId | where to start copy to in this array. | 
 | CharData | source_items |  |  | The array to copy from. | 
 | unsigned int | source_item_count |  |  | The number of items in the array. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | start_tuple_id | 0 | MaxTupleId | where to start copy to in this array. | 
 | sbyte[] | source_items |  |  | The array to copy from. | 
 | uint | source_item_count |  |  | The number of items in the array. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | start_tuple_id | int | 0 | MaxTupleId | where to start copy to in this array. | 
 | source_items | int |  |  | The array to copy from. | 
 | source_item_count | int |  |  | The number of items in the array. | 
   SetItem
 Sets an item in the list. The id of the item is the exact location of the item (TupleId * TupleSize + Index of item in tuple) Warning! No range checking is done.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | id | 0 | MaxItemId | The id of the item. | 
 | char | value |  |  | The new value of the item. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | id | 0 | MaxItemId | The id of the item. | 
 | sbyte | value |  |  | The new value of the item. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | id | int | 0 | MaxItemId | The id of the item. | 
 | value | int |  |  | The new value of the item. | 
   SetRealItem
 SetRealItem() sets the item at position id. The id is the id of the item, not the tuple the item belongs to. SetRealItem() converts the value from real to the actual underlying data type.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | id | 0 | MaxItemId | The item to set. | 
 | real | value |  |  | The real value to set the item to. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | id | 0 | MaxItemId | The item to set. | 
 | float | value |  |  | The real value to set the item to. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | id | int | 0 | MaxItemId | The item to set. | 
 | value | float |  |  | The real value to set the item to. | 
   SetTuple
 Sets a tuple in the list. The id is the id of the tuple that is being updated. Warning! No range checking is done.
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | rid | id | 0 | MaxTupleId | The id of the tuple. | 
 | CharData | tuple |  |  | The new value(s) of the tuple. | 
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | int | id | 0 | MaxTupleId | The id of the tuple. | 
 | sbyte[] | tuple |  |  | The new value(s) of the tuple. | 
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | id | int | 0 | MaxTupleId | The id of the tuple. | 
 | tuple | int |  |  | The new value(s) of the tuple. | 
   Static methods details
  IsClassA
 Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object)
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | const char * | type |  |  | Name of the class to check if the class is, or is a descendant of. | 
  Return value
 Type: bool
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | string | type |  |  | Name of the class to check if the class is, or is a descendant of. | 
  Return value
 Type: bool
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | type | str |  |  | Name of the class to check if the class is, or is a descendant of. | 
  Return value
 Type: bool
   SafeCast
 SafeCast makes sure the input object is of a class that can be cast into spCharArray, and if this is the case, returns the object cast into spCharArray. (Inherited from Object)
   Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Object | object |  |  | Object to cast. | 
  Return value
 Type: CharArray
  Syntax
  Parameters
 | Type | Name | Min | Max | Description | 
|---|
 | Object | object |  |  | Object to cast. | 
  Return value
 Type: CharArray
  Syntax
  Parameters
 | Name | Type | Min | Max | Description | 
|---|
 | object | Object |  |  | Object to cast. | 
  Return value
 Type: CharArray