FLDFget_poly_connect, FLDFset_poly_connect
Synopsis
get/set the poly connectivity list of one cell_set within a Cells Grid
INTEGER FLDFget_poly_connect (cell_set, poly_conn_array, size, mode)
INTEGER cell_set(OIDSIZ)
INTEGER poly_conn_array_ptr
INTEGER size
INTEGER mode
INTEGER FLDFset_poly_connect (cell_set, poly_conn_array, size, mode)
INTEGER cell_set(OIDSIZ)
INTEGER poly_conn_array(*)
INTEGER size
INTEGER mode
Description
These routines get/set the poly connectivity array (poly_connect_list) within one cell_set array of "poly" type element in a Cells Grid.
The FLDFget_poly_connect routine can be used for both getting and setting the node_connect_list array. When setting with a "get" routine (mode = OM_GET_ARRAY_WR or OM_GET_ARRAY_RW), it returns an integer representing a pointer to an integer representing a pointer to a pre-allocated array, and the developer just needs to fill in the values.
Parameters
cell_set
The integer id of one cell_set array element within a Cells Grid, as returned by the FLDFget_cell_set routine.
poly_conn_array_ptr
In FLDFget_poly_connect, poly_conn_array is the address of an integer representing a pointer to connectivity list; upon return, poly_conn_array will be filled in with the poly connectivity list. Call ARRFfree() on this an integer representing a pointer when you are done using it. On 64-bit platforms dims_ptr is actually an INTEGER*8.
poly_conn_array
In FLDFset_poly_connect, poly_conn_array is the address of an array from which the poly connectivity list will be copied.
To access data array you will need to use ARRFoffset function described in Appendix D of Developers Reference.
size
In FLDFget_poly_connect, *size is an integer representing a pointer to an integer in which the size of the poly connectivity array is returned.
In FLDFset_poly_connect, size is an integer that sets the size of the poly connectivity array.
"size" is the number of elements in the array irrespective of type.
mode
An integer constant that establishes the access mode for the array subobject. Constants for the possible values are defined in avs/om.h as follows.
For FLDFget_poly_connect:
Mode
|
Value
|
Meaning
|
OM_GET_ARRAY_RD |
0 |
The program reads the array, but does not write to it. |
OM_GET_ARRAY_WR |
1 |
The program writes to the array, completely replacing it. |
OM_GET_ARRAY_RW |
2 |
The program reads from and writes to the array. |
OM_GET_ARRAY_RD_COPY |
3 |
The program requires a copy of the array for its own, private use (reading or writing). |
For FLDFset_poly_connect:
Mode
|
Value
|
Meaning
|
OM_SET_ARRAY_COPY |
0 |
Copy the array into the Object Manager |
OM_SET_ARRAY_FREE |
1 |
If possible, do not copy the array. Instead, set the object's array to an integer representing a pointer to poly_conn_array. AVS/Express copies the array anyway if the function is running in an external process or if data type conversion is required. AVS/Express manages the array and will determine when the array can be freed. You must allocate space for the array with a call to ARRFalloc. |
OM_SET_ARRAY_STATIC |
2 |
If possible, do not copy the array. Instead, set the object's array to an integer representing a pointer to poly_conn_array. AVS/Express copies the array anyway if the function is running in an external process or if data type conversion is required. AVS/Express does not manage the array. You must ensure that the array is valid for the life of the object or until the object replaces the array. |