00001
00002
00003
00004
00027 #ifndef ADT_LIST_H
00028 #define ADT_LIST_H
00029
00030 #ifdef __cplusplus
00031 extern "C" {
00032 #endif
00033
00034 #include "adt/array.h"
00035
00036 #ifndef ADT_ERROR
00037 #define ADT_ERROR (-1)
00038 #endif
00039
00044 typedef struct adt_List_t {
00045 adt_Array array;
00046 int len;
00047 } adt_List;
00048
00049
00068 adt_List *adt_createList(int elemsz, int len, void *buffer);
00069
00070
00076 void adt_destroyList(adt_List *);
00077
00078
00080 int adt_getLengthList(adt_List *);
00081
00082
00084 int adt_getElemsizeList(adt_List *);
00085
00086
00094 void *adt_getDataList(adt_List *);
00095
00096
00106 int adt_appendList(adt_List *, void *pelem);
00107
00108
00117 int adt_deleteList(adt_List *);
00118
00119
00130 void *adt_indexList(adt_List *, int index);
00131
00132
00146 int adt_updateList(adt_List *, int index, void *pelem);
00147
00148
00160 int adt_resizeList(adt_List *, int len);
00161
00162
00168 int adt_initializeList(adt_List *, int elemsz, int len, void *buffer);
00169
00170
00176 void adt_cleanupList(adt_List *);
00177
00178 #ifdef __cplusplus
00179 }
00180 #endif
00181
00182 #endif