#ifndef BASE_PTRARRAY_H
#define BASE_PTRARRAY_H

#include "base/array.h"

///@name ptrarray
//@{


/**
todo: describe this
*/
typedef struct PointerArrayHandle {
///Number of elements in the array.
	int size;
///Pointer to the array itself.
	void **data;
} PointerArrayHandle;



PointerArrayHandle *ptrarrayMake(void);
void ptrarrayFree(PointerArrayHandle *pa);
void ptrarrayCompact(PointerArrayHandle *pa);
int ptrarrayFind(PointerArrayHandle *pa, void *ptr);
void ptrarrayAdd(PointerArrayHandle *pa, void *ptr);
void ptrarrayDelete(PointerArrayHandle *pa, void *ptr);

//@}

#endif //BASE_PTRARRAY_H
