Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef RTC_ARRAY1_H
00020 #define RTC_ARRAY1_H
00021
00022
00023 #include "rtc/rtcMath.h"
00024 #include "rtc/rtcArray.h"
00025
00026
00027 namespace rtc {
00028
00029
00030 template <class T, int K> class Array;
00031 template <class T> class Array1;
00032
00036 template <class T>
00037 class Array1: public Array<T,1> {
00038 public:
00040 Array1();
00041 Array1(int len);
00042 Array1(int len, const T* d);
00043 Array1(int len, const T a);
00044 Array1(const Array<T,1>& a);
00045
00047 void setSize(int len);
00048
00050 int size() const;
00051
00053 using Array<T,1>::x;
00054 using Array<T,1>::reset;
00055 using Array<T,1>::at;
00056 protected:
00058 using Array<T,1>::dim;
00059 using Array<T,1>::mul;
00060 using Array<T,1>::len;
00061 };
00062
00063
00064 typedef Array1<bool> Array1b;
00065 typedef Array1<char> Array1c;
00066 typedef Array1<unsigned char> Array1uc;
00067 typedef Array1<int> Array1i;
00068 typedef Array1<float> Array1f;
00069 typedef Array1<double> Array1d;
00070
00071
00072
00073
00074
00075
00078 template <class T>
00079 inline Array1<T>::Array1() : Array<T,1>() {}
00080
00084 template <class T>
00085 inline Array1<T>::Array1(int len_) : Array<T,1>() {
00086 setSize(len_);
00087 }
00088
00093 template <class T>
00094 inline Array1<T>::Array1(int _len, const T* d) {
00095 setSize(_len);
00096 Array<T,1>::set(d);
00097 }
00098
00103 template <class T>
00104 inline Array1<T>::Array1(int _len, const T a) {
00105 setSize(_len);
00106 Array<T,1>::set(a);
00107 }
00108
00112 template <class T>
00113 inline Array1<T>::Array1(const Array<T,1>& a) : Array<T,1>(a) {}
00114
00118 template <class T>
00119 inline void Array1<T>::setSize(int len_) {
00120 Array<T,1>::setSize(Vec<int,1>(len_));
00121 }
00122
00123
00124
00128 template <class T>
00129 inline int Array1<T>::size() const {
00130 return len;
00131 }
00132
00133
00134 }
00135
00136 #endif // RTC_ARRAY1_H defined
00137
00138