30 lines
604 B
C
30 lines
604 B
C
|
/************************
|
||
|
*** Team Kitty, 2020 ***
|
||
|
*** Chroma ***
|
||
|
***********************/
|
||
|
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include<stddef.h>
|
||
|
#include<stdint.h>
|
||
|
#include <lainlib/mutex/spinlock.h>
|
||
|
|
||
|
struct vector_t {
|
||
|
void** items;
|
||
|
size_t n;
|
||
|
|
||
|
spinlock_t vector_lock;
|
||
|
};
|
||
|
|
||
|
int VectorRemoveItem(struct vector_t* vec, void* item);
|
||
|
|
||
|
int VectorRemove(struct vector_t* vec, size_t index);
|
||
|
|
||
|
void* VectorGet(struct vector_t* vec, size_t index);
|
||
|
|
||
|
int VectorInsert(struct vector_t* vec, void* item, size_t index);
|
||
|
|
||
|
int VectorAppend(struct vector_t* vec, void* item);
|
||
|
|
||
|
int VectorDestroy(struct vector_t* vec);
|