19295cd64SMichael Pfeiffer /* 29295cd64SMichael Pfeiffer * Copyright 2010, Haiku. All rights reserved. 39295cd64SMichael Pfeiffer * Distributed under the terms of the MIT License. 49295cd64SMichael Pfeiffer * 59295cd64SMichael Pfeiffer * Authors: 69295cd64SMichael Pfeiffer * Michael Pfeiffer 79295cd64SMichael Pfeiffer */ 89295cd64SMichael Pfeiffer #ifndef GP_ARRAY_H 99295cd64SMichael Pfeiffer #define GP_ARRAY_H 109295cd64SMichael Pfeiffer 119295cd64SMichael Pfeiffer template<typename TYPE> 129295cd64SMichael Pfeiffer class GPArray 139295cd64SMichael Pfeiffer { 149295cd64SMichael Pfeiffer public: 159295cd64SMichael Pfeiffer typedef TYPE* PointerType; 169295cd64SMichael Pfeiffer 179295cd64SMichael Pfeiffer GPArray(); 189295cd64SMichael Pfeiffer virtual ~GPArray(); 199295cd64SMichael Pfeiffer 209295cd64SMichael Pfeiffer void SetSize(int size); 219295cd64SMichael Pfeiffer int Size() const; 229295cd64SMichael Pfeiffer void DecreaseSize(); 239295cd64SMichael Pfeiffer TYPE** Array(); 24*0f0bd984SMichael Pfeiffer TYPE** Array() const; 259295cd64SMichael Pfeiffer bool IsEmpty() const; 269295cd64SMichael Pfeiffer 279295cd64SMichael Pfeiffer private: 289295cd64SMichael Pfeiffer TYPE** fArray; 299295cd64SMichael Pfeiffer int fSize; 309295cd64SMichael Pfeiffer }; 319295cd64SMichael Pfeiffer 329295cd64SMichael Pfeiffer #include "GPArray.cpp" 339295cd64SMichael Pfeiffer 349295cd64SMichael Pfeiffer #endif 35