1 // Created by: Peter KURNEV
2 // Copyright (c) 1999-2013 OPEN CASCADE SAS
4 // This file is part of Open CASCADE Technology software library.
6 // This library is free software; you can redistribute it and/or modify it under
7 // the terms of the GNU Lesser General Public License version 2.1 as published
8 // by the Free Software Foundation, with special exception defined in the file
9 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10 // distribution for complete text of the license and disclaimer of any warranty.
12 // Alternatively, this file may be used under the terms of Open CASCADE
13 // commercial license or contractual agreement.
15 #ifndef BOPCol_NCVector_HeaderFile
16 #define BOPCol_NCVector_HeaderFile
18 #include <Standard.hxx>
19 #include <NCollection_Vector.hxx>
20 #include <NCollection_BaseAllocator.hxx>
22 //=======================================================================
23 //class : BOPCol_NCVector
25 //=======================================================================
26 template <class Type> class BOPCol_NCVector
28 public NCollection_Vector<Type>
31 BOPCol_NCVector(const Standard_Integer theIncrement=256,
32 const Handle_NCollection_BaseAllocator& theAlloc = NULL)
33 : NCollection_Vector<Type>(theIncrement, theAlloc) {
36 BOPCol_NCVector(const BOPCol_NCVector& theOther)
37 : NCollection_Vector<Type>(theOther) {
43 *(Type* )NCollection_BaseVector::expandV (NCollection_BaseCollection<Type>::myAllocator,
44 NCollection_Vector<Type>::myLength);
48 Standard_Integer Extent() const
50 return NCollection_Vector<Type>::myLength;