From c068f22329d5cc722622a2183bbb22eef2093df7 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Mon, 24 Aug 2026 11:16:07 +0200 Subject: initial import --- tool_src/QvLib/QvPList.h | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 tool_src/QvLib/QvPList.h (limited to 'tool_src/QvLib/QvPList.h') diff --git a/tool_src/QvLib/QvPList.h b/tool_src/QvLib/QvPList.h new file mode 100644 index 0000000..50f3eff --- /dev/null +++ b/tool_src/QvLib/QvPList.h @@ -0,0 +1,29 @@ +#ifndef _QV_PLIST_ +#define _QV_PLIST_ + +#include + +class QvPList { + public: + QvPList(); + ~QvPList(); + void append(void * ptr) + { if (nPtrs + 1 > ptrsSize) expand(nPtrs + 1); + ptrs[nPtrs++] = ptr; } + int find(const void *ptr) const; + void remove(int which); + int getLength() const { return (int) nPtrs; } + void truncate(int start) + { nPtrs = start; } + void *& operator [](int i) const { return ptrs[i]; } + + private: + void ** ptrs; + int nPtrs; + int ptrsSize; + void setSize(int size) + { if (size > ptrsSize) expand(size); nPtrs = size; } + void expand(int size); +}; + +#endif /* _QV_PLIST_ */ -- cgit v1.2.3