C/C++ array wrappers

Several classes of package fmipp use objects of type SwigPyObject as inputs and outputs, which are wrappers around C/C++ arrays. Instantiation of and data access to these objects should be done via the helper functions listed here.

Methods for creating array wrappers

These helper functions create new C/C++ arrays in memory and return a Python wrapper object to this array.

new_bool_pointer(nelements)
Parameters

nelements (int) – size of array

Return type

SwigPyObject (wrapper for array of type bool)

new_double_array(nelements)
Parameters

nelements (int) – size of array

Return type

SwigPyObject (wrapper for array of type float)

new_int_array(nelements)
Parameters

nelements (int) – size of array

Return type

SwigPyObject (wrapper for array of type int)

new_string_array(nelements)
Parameters

nelements (int) – size of array

Return type

SwigPyObject (wrapper for array of type str)

Methods for retrieving array element values

Note

Indexing starts at 0.

These helper functions return the value of array elements.

bool_array_getitem(ary, index)
Parameters
  • ary (SwigPyObject) – array wrapper object

  • index (int) – element index

Return type

bool

double_array_getitem(ary, index)
Parameters
  • ary (SwigPyObject) – array wrapper object

  • index (int) – element index

Return type

float

int_array_getitem(ary, index)
Parameters
  • ary (SwigPyObject) – array wrapper object

  • index (int) – element index

Return type

int

string_array_getitem(ary, index)
Parameters
  • ary (SwigPyObject) – array wrapper object

  • index (int) – element index

Return type

str

Methods for setting array element values

These helper functions set the value of array elements.

Note

Indexing starts at 0.

bool_array_setitem(ary, index, value)
Parameters
  • ary (SwigPyObject) – array wrapper object

  • index (int) – element index

  • value (bool) – new element value

double_array_setitem(ary, index, value)
Parameters
  • ary (SwigPyObject) – array wrapper object

  • index (int) – element index

  • value (float) – new element value

int_array_setitem(ary, index, value)
Parameters
  • ary (SwigPyObject) – array wrapper object

  • index (int) – element index

  • value (int) – new element value

string_array_setitem(ary, index, value)
Parameters
  • ary (SwigPyObject) – array wrapper object

  • index (int) – element index

  • value (str) – new element value

Methods for deleting arrays

These helper functions delete an array wrapper object and release the corresponding space in memory.

delete_bool_array(ary)
Parameters

ary (SwigPyObject) – array wrapper object

delete_double_array(ary)
Parameters

ary (SwigPyObject) – array wrapper object

delete_int_array(ary)
Parameters

ary (SwigPyObject) – array wrapper object

delete_string_array(ary)
Parameters

ary (SwigPyObject) – array wrapper object