The array is a simple "two-dimensional array of numbers" data structure.
More...
|
stp_array_t * | stp_array_create (int x_size, int y_size) |
| Create a new array. More...
|
|
void | stp_array_destroy (stp_array_t *array) |
| Destroy an array. More...
|
|
void | stp_array_copy (stp_array_t *dest, const stp_array_t *source) |
| Copy an array. More...
|
|
stp_array_t * | stp_array_create_copy (const stp_array_t *array) |
| Copy and allocate an array. More...
|
|
void | stp_array_set_size (stp_array_t *array, int x_size, int y_size) |
| Resize an array. More...
|
|
void | stp_array_get_size (const stp_array_t *array, int *x_size, int *y_size) |
| Get the size of an array. More...
|
|
void | stp_array_set_data (stp_array_t *array, const double *data) |
| Set the data in an array. More...
|
|
void | stp_array_get_data (const stp_array_t *array, size_t *size, const double **data) |
| Get the data in an array. More...
|
|
int | stp_array_set_point (stp_array_t *array, int x, int y, double data) |
| Set the data at a single point in the array. More...
|
|
int | stp_array_get_point (const stp_array_t *array, int x, int y, double *data) |
| Get the data at a single point in the array. More...
|
|
const stp_sequence_t * | stp_array_get_sequence (const stp_array_t *array) |
| Get the underlying stp_sequence_t. More...
|
|
The array is a simple "two-dimensional array of numbers" data structure.
array "inherits" from the sequence data structure (implemented via containment).
The array opaque data type.
Copy an array.
Both dest and source must be valid arrays previously created with stp_array_create().
- Parameters
-
dest | the destination array. |
source | the source array. |
stp_array_t* stp_array_create |
( |
int |
x_size, |
|
|
int |
y_size |
|
) |
| |
Create a new array.
The total size of the array will be (x_size * y_size).
- Parameters
-
x_size | the number of "columns". |
y_size | the number of "rows". |
- Returns
- the newly created array.
Copy and allocate an array.
dest will be created, and then the contents of source will be copied into it. dest must not have been previously allocated with stp_array_create().
- Parameters
-
- Returns
- the new copy of the array.
Destroy an array.
It is an error to destroy the array more than once.
- Parameters
-
array | the array to destroy. |
void stp_array_get_data |
( |
const stp_array_t * |
array, |
|
|
size_t * |
size, |
|
|
const double ** |
data |
|
) |
| |
Get the data in an array.
- Parameters
-
array | the array to get the data from. |
size | the number of elements in the array (x_size * y_size) are stored in the size_t pointed to. |
data | a pointer to the first element of an array of doubles is stored in a pointer to double*.
size_t size;
double *data;
|
int stp_array_get_point |
( |
const stp_array_t * |
array, |
|
|
int |
x, |
|
|
int |
y, |
|
|
double * |
data |
|
) |
| |
Get the data at a single point in the array.
- Parameters
-
array | the array to use. |
x | the x location. |
y | the y location. |
data | the datum is stored in the double pointed to. |
- Returns
- 1 on success, 0 on failure.
Get the underlying stp_sequence_t.
- Parameters
-
- Returns
- the (constant) stp_sequence_t.
void stp_array_get_size |
( |
const stp_array_t * |
array, |
|
|
int * |
x_size, |
|
|
int * |
y_size |
|
) |
| |
Get the size of an array.
The current x and y sizes are stored in the integers pointed to by x_size and y_size.
- Parameters
-
array | the array to get the size of. |
x_size | a pointer to an integer to store the x size in. |
y_size | a pointer to an integer to store the y size in. |
void stp_array_set_data |
( |
stp_array_t * |
array, |
|
|
const double * |
data |
|
) |
| |
Set the data in an array.
- Parameters
-
array | the array to set. |
data | a pointer to the first member of an array containing the data to set. This array must be at least as long as (x_size
|
int stp_array_set_point |
( |
stp_array_t * |
array, |
|
|
int |
x, |
|
|
int |
y, |
|
|
double |
data |
|
) |
| |
Set the data at a single point in the array.
- Parameters
-
array | the array to use. |
x | the x location. |
y | the y location. |
data | the datum to set. |
- Returns
- 1 on success, 0 on failure.
void stp_array_set_size |
( |
stp_array_t * |
array, |
|
|
int |
x_size, |
|
|
int |
y_size |
|
) |
| |
Resize an array.
Resizing an array will destroy all data stored in the array.
- Parameters
-
array | the array to resize. |
x_size | the new number of "columns". |
y_size | the new number of "rows". |