00001 #ifndef _Q_VECTOR_VIEW_HH_ 00002 #define _Q_VECTOR_VIEW_HH_ 00003 00015 #include "QVector.hh" 00016 00017 Q_BEGIN_NAMESPACE 00018 class QVectorView { 00019 public: 00026 QVectorView(QVector& in, size_t start, size_t size); 00027 00029 virtual ~QVectorView(); 00030 00032 QVector& GetVector() const { return *fVector; } 00033 00034 private: 00036 const QVectorView& operator=(const QVectorView& other) {return *this;} 00037 00038 QVector* fVector; 00039 00040 }; 00041 00048 class QVectorConstView { 00049 public: 00056 QVectorConstView(const QVector& in, size_t start, size_t size); 00057 00059 virtual ~QVectorConstView(); 00060 00062 const QVector& GetVector() const { return *fVector; } 00063 00064 private: 00066 const QVectorConstView& operator=(const QVectorConstView& other) {return *this;} 00067 00068 QVector* fVector; 00069 }; 00070 00071 Q_END_NAMESPACE 00072 00073 #endif