diff options
| author | Treeki <treeki@gmail.com> | 2011-06-17 01:41:44 +0200 | 
|---|---|---|
| committer | Treeki <treeki@gmail.com> | 2011-06-17 01:41:44 +0200 | 
| commit | 1a0290bfce4c9aa473abc9d143c308170988c402 (patch) | |
| tree | ce349fbd2d70d73e4de505db88cf176423194953 /include | |
| parent | d6011147ab248b0290982c6ddebada8221209255 (diff) | |
| download | kamek-1a0290bfce4c9aa473abc9d143c308170988c402.tar.gz kamek-1a0290bfce4c9aa473abc9d143c308170988c402.zip  | |
added mDynArray_c class .. should probably be mVarArray_c though
Diffstat (limited to '')
| -rw-r--r-- | include/m_dynarray.h | 32 | 
1 files changed, 32 insertions, 0 deletions
diff --git a/include/m_dynarray.h b/include/m_dynarray.h new file mode 100644 index 0000000..6cb4209 --- /dev/null +++ b/include/m_dynarray.h @@ -0,0 +1,32 @@ +template <typename TValue, int TMaxSize> +class mDynArray_c { +	int currentSize; +	TValue buffer[TMaxSize]; + +	public: +	mDynArray_c() { currentSize = 0; } + +	int count() { return currentSize; } +	int max() { return TMaxSize; } + +	TValue& get(int index) const { return buffer[index]; } +	void set(int index, TValue &newValue) { buffer[index] = newValue; } + +	void append(TValue &newValue) { +		set(currentSize, newValue); +		currentSize += 1; +	} + +	TValue &pop() { +		currentSize -= 1; +		return get(currentSize - 1); +	} + +	TValue &first() const { return get(0); } +	TValue &last() const { return get(currentSize - 1); } +	 +	bool empty() const { return (currentSize == 0); } +	bool full() const { return (currentSize == TMaxSize); } +}; + +  | 
