FMI Library: part of JModelica.org
|
Vector template definition. More...
Go to the source code of this file.
Macros | |
#define | jm_vector_ptr2index(T) jm_mangle(jm_vector_ptr2index, T) |
Functions | |
jm_vector (JM_TEMPLATE_INSTANCE_TYPE)*jm_vector_alloc(JM_TEMPLATE_INSTANCE_TYPE)(size_t size | |
if (c) cc | |
if (reserve< size) reserve | |
if (reserve > JM_VECTOR_MINIMAL_CAPACITY) | |
if (!v) return 0 | |
void jm_vector_free() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*a) |
size_t jm_vector_init() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*a, size_t initSize, jm_callbacks *c) |
size_t jm_vector_resize() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*a, size_t size) |
size_t jm_vector_copy() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*destination, jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*source) |
JM_TEMPLATE_INSTANCE_TYPE *jm_vector_insert() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*a, size_t index, JM_TEMPLATE_INSTANCE_TYPE item) |
JM_TEMPLATE_INSTANCE_TYPE *jm_vector_push_back() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*a, JM_TEMPLATE_INSTANCE_TYPE item) |
void jm_vector_foreach_c() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*a, void(*f)(JM_TEMPLATE_INSTANCE_TYPE, void *), void *data) |
void jm_vector_foreach() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*a, void(*f)(JM_TEMPLATE_INSTANCE_TYPE)) |
void jm_vector_qsort() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*v, jm_compare_ft f) |
static size_t jm_vector_ptr2index() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*v, JM_TEMPLATE_INSTANCE_TYPE *itemp) |
size_t jm_vector_bsearch_index() | JM_TEMPLATE_INSTANCE_TYPE (jm_vector(JM_TEMPLATE_INSTANCE_TYPE)*v, JM_TEMPLATE_INSTANCE_TYPE *key, jm_compare_ft f) |
Variables | |
size_t | capacity = JM_VECTOR_MINIMAL_CAPACITY |
size_t jm_callbacks * | c |
jm_callbacks * | cc = jm_get_default_callbacks() |
reserve = capacity | |
else | |
v | callbacks = cc |
v | items = &(v->preallocated[0]) |
v | size = size |
return | v |
Vector template definition.
This file is supposed to be included into a C-file that instantiate the template. jm_vector.h must be included before this file. It expects JM_TEMPLATE_INSTANCE_TYPE to be defined to the template type to be instantiated.
Definition in file jm_vector_template.h.