40 lines
1016 B
C
40 lines
1016 B
C
#ifndef INCLUDED_C_ARRAY_H
|
|||
|
|
#define INCLUDED_C_ARRAY_H
|
||
|
|
|
||
|
|
#ifndef INCLUDED_C_TYPES_H
|
||
|
|
#include <c_Types.h>
|
||
|
|
#endif /*INCLUDED_C_TYPES_H*/
|
||
|
|
|
||
|
|
/* ------------------------------------------------------------------------------------------------------------------ */
|
||
|
|
/* */
|
||
|
|
|
||
|
|
typedef struct c_Array_t {
|
||
|
|
c_size_t length;
|
||
|
|
c_size_t size;
|
||
|
|
uint8_t* array;
|
||
|
|
}c_Array_t;
|
||
|
|
|
||
|
|
c_err_t c_Array_Init(c_Array_t* array, c_size_t length, c_size_t size);
|
||
|
|
|
||
|
|
void c_Array_Destroy(c_Array_t* array);
|
||
|
|
|
||
|
|
c_Array_t* c_Array_New(c_size_t length, c_size_t size);
|
||
|
|
|
||
|
|
void c_Array_Delete(c_Array_t** array);
|
||
|
|
|
||
|
|
c_size_t c_Array_Size(c_Array_t* array);
|
||
|
|
|
||
|
|
c_size_t c_Array_Length(c_Array_t* array);
|
||
|
|
|
||
|
|
c_err_t c_Array_Get(c_Array_t* array, c_size_t index, void** data);
|
||
|
|
|
||
|
|
c_err_t c_Array_Put(c_Array_t* array, c_size_t index, void* value);
|
||
|
|
|
||
|
|
c_err_t c_Array_Resize(c_Array_t* array, c_size_t length);
|
||
|
|
|
||
|
|
c_Array_t* c_Array_Copy(c_Array_t* array, c_size_t length);
|
||
|
|
|
||
|
|
c_err_t c_Array_CopyTo(const c_Array_t* array, c_Array_t* copy);
|
||
|
|
|
||
|
|
#endif /*INCLUDED_C_ARRAY_H*/
|