Documentation - C API
array.h File Reference

Array. More...

#include "generic.h"

Data Structures

struct  VlArray
 Numeric array. More...

Macros

#define VL_ARRAY_MAX_NUM_DIMENSIONS   16
 Maximum number of array dimensions.

Functions

Get data and parameters
vl_size vl_array_get_num_dimensions (VlArray const *self)
 Get number of dimensions.
vl_size const * vl_array_get_dimensions (VlArray const *self)
 Get dimensions.
void * vl_array_get_data (VlArray const *self)
 Get data.
vl_type vl_array_get_data_type (VlArray const *self)
 Get type.
vl_size vl_array_get_num_elements (VlArray const *self)
 Get number of elements in array.
Constructing and destroying
VlArrayvl_array_init (VlArray *self, vl_type type, vl_size numDimension, vl_size const *dimensions)
 New numeric array.
VlArrayvl_array_init_envelope (VlArray *self, void *data, vl_type type, vl_size numDimension, vl_size const *dimensions)
 New numeric array envelope.
VlArrayvl_array_init_matrix (VlArray *self, vl_type type, vl_size numRows, vl_size numColumns)
 New numeric array with matrix shape.
VlArrayvl_array_init_matrix_envelope (VlArray *self, void *data, vl_type type, vl_size numRows, vl_size numColumns)
 New numeric array envelpe with matrix shape.
VlArrayvl_array_new (vl_type type, vl_size numDimension, vl_size const *dimensions)
 New numeric array.
VlArrayvl_array_new_envelope (void *data, vl_type type, vl_size numDimension, vl_size const *dimensions)
 New numeric array envelope.
VlArrayvl_array_new_matrix (vl_type type, vl_size numRows, vl_size numColumns)
 New numeric array with matrix shape.
VlArrayvl_array_new_matrix_envelope (void *data, vl_type type, vl_size numRows, vl_size numColumns)
 New numeric array envelpe with matrix shape.
void vl_array_dealloc (VlArray *self)
 Delete array.
void vl_array_delete (VlArray *self)
 Delete array.

Detailed Description

Array - Definition.

Author:
Andrea Vedaldi

Function Documentation

void vl_array_dealloc ( VlArray self)
Parameters:
selfarray.
void vl_array_delete ( VlArray self)
Parameters:
selfarray.
void* vl_array_get_data ( VlArray const *  self)
inline
Parameters:
selfarray.
Returns:
data.
vl_type vl_array_get_data_type ( VlArray const *  self)
inline
Parameters:
selfarray.
Returns:
type.
vl_size const* vl_array_get_dimensions ( VlArray const *  self)
inline
Parameters:
selfarray.
Returns:
dimensions.
vl_size vl_array_get_num_dimensions ( VlArray const *  self)
inline
Parameters:
selfarray.
Returns:
number of dimensions.
vl_size vl_array_get_num_elements ( VlArray const *  self)
Parameters:
selfarray.
Returns:
number of elements.
VlArray* vl_array_init ( VlArray self,
vl_type  type,
vl_size  numDimensions,
vl_size const *  dimensions 
)
Parameters:
selfarray to initialize.
typedata type.
numDimensionsnumber of dimensions.
dimensionsdimensions.

The function initializes the specified array and allocates the necessary memory for storage.

VlArray* vl_array_init_envelope ( VlArray self,
void *  data,
vl_type  type,
vl_size  numDimensions,
vl_size const *  dimensions 
)
Parameters:
selfarray to initialize.
datadata to envelople.
typedata type.
numDimensionsnumber of dimensions.
dimensionsdimensions.

The function initializes the specified array wrapping the specified buffer.

VlArray* vl_array_init_matrix ( VlArray self,
vl_type  type,
vl_size  numRows,
vl_size  numColumns 
)
Parameters:
selfarray to initialize.
typetype.
numRowsnumber of rows.
numColumnsnumber of columns.
VlArray* vl_array_init_matrix_envelope ( VlArray self,
void *  data,
vl_type  type,
vl_size  numRows,
vl_size  numColumns 
)
Parameters:
selfarray to initialize.
datadata to envelope.
typetype.
numRowsnumber of rows.
numColumnsnumber of columns.
VlArray* vl_array_new ( vl_type  type,
vl_size  numDimensions,
vl_size const *  dimensions 
)
Parameters:
typedata type.
numDimensionsnumber of dimensions.
dimensionsdimensions.

The function creates a new VLArray instance and allocates the necessary memory for storage.

VlArray* vl_array_new_envelope ( void *  data,
vl_type  type,
vl_size  numDimensions,
vl_size const *  dimensions 
)
Parameters:
datadata to envelople.
typedata type.
numDimensionsnumber of dimensions.
dimensionsdimensions.
VlArray* vl_array_new_matrix ( vl_type  type,
vl_size  numRows,
vl_size  numColumns 
)
Parameters:
typetype.
numRowsnumber of rows.
numColumnsnumber of columns.
VlArray* vl_array_new_matrix_envelope ( void *  data,
vl_type  type,
vl_size  numRows,
vl_size  numColumns 
)
Parameters:
datadata to envelope.
typetype.
numRowsnumber of rows.
numColumnsnumber of columns.