Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

array_vector.h

Go to the documentation of this file.
00001 // Array - Vector adaptor implementation -*- C++ -*-
00002 
00003 // Copyright (C) 2001-2003 Hermann Schichl
00004 //
00005 // This file is part of the Vienna Graph Template Library.  This library
00006 // is free software; you can redistribute it and/or modify it under the
00007 // terms of the Library GNU General Public License as published by the
00008 // Free Software Foundation; either version 2, or (at your option)
00009 // any later version.
00010 
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 // Library GNU General Public License for more details.
00015 
00016 // As a special exception, you may use this file as part of a free software
00017 // library without restriction.  Specifically, if other files instantiate
00018 // templates or use macros or inline functions from this file, or you compile
00019 // this file and link it with other files to produce an executable, this
00020 // file does not by itself cause the resulting executable to be covered by
00021 // the Library GNU General Public License.  This exception does not however
00022 // invalidate any other reasons why the executable file might be covered by
00023 // the Library GNU General Public License.
00024 
00029 
00030 
00036 #ifndef __ARRAY_VECTOR_H_
00037 #define __ARRAY_VECTOR_H_
00038 
00039 template <class _T>
00040 class array_vector : public std::vector<_T>
00041 {
00042 public:
00046   array_vector() { _M_start = _M_finish = _M_end_of_storage = NULL; }
00047   
00051   array_vector(_T* __a, int n)
00052   {
00053     _M_start = __a;
00054     _M_finish = _M_end_of_storage = __a+n;
00055   }
00056   
00060   ~array_vector() { _M_start = _M_finish = _M_end_of_storage = NULL; }
00061   
00065   void assignvector(_T* __a, int n)
00066   {
00067     _M_start = __a;
00068     _M_finish = _M_end_of_storage = __a+n;
00069   }
00070 };
00071 
00072 #endif /* __ARRAY_VECTOR_H_ */

Generated on Tue Nov 4 01:41:23 2003 for Vienna Graph Template Library by doxygen1.2.18