00001 //============================================================================ 00005 //============================================================================ 00006 00007 #ifndef NXYTER_DISTFUNCARRAY_H 00008 #define NXYTER_DISTFUNCARRAY_H 00009 00010 #include <vector> 00011 00012 #include "nxyter/DistFunc.h" 00013 00014 namespace nxyter { 00015 00016 class DistFuncArray { 00017 protected: 00018 std::vector<DistFunc> fDist; 00019 00020 public: 00021 explicit DistFuncArray(int dim, int cap=0); 00022 virtual ~DistFuncArray(); 00023 00024 void setMaxEntries(int max); 00025 void setCapacity(int cap); 00026 void clear(); 00027 00029 00035 void addEntry(int ind, float val) 00036 { fDist.at(ind).addEntry(val); } 00037 00038 int numEntries(); 00039 00041 int size() 00042 { return fDist.size(); } 00043 00045 00049 DistFunc& operator[](int ind) 00050 { return fDist.at(ind); } 00051 }; 00052 00053 } 00054 00055 #endif