00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef ANAPHE_AIDA_FITTER_FML_AIDA_TupleITERATOR
00031 #define ANAPHE_AIDA_FITTER_FML_AIDA_TupleITERATOR 1
00032
00033 #include "AIDA_FitDataIterator.h"
00034 #include "AIDA/IEvaluator.h"
00035
00036 #include <vector>
00037 #include <string>
00038
00039 namespace AIDA {
00040 class ITuple;
00041 };
00042
00043
00044 namespace Anaphe {
00045 namespace AIDA_Function_FML {
00046 class AIDA_RangeSet;
00047 }
00048 };
00049
00050 namespace Anaphe {
00051 namespace AIDA_Fitter_FML {
00052
00053
00054 class AIDA_TupleIterator : public AIDA_FitDataIterator {
00055
00056 public:
00057 AIDA_TupleIterator(const AIDA::ITuple& t,std::vector<std::string> & colNames);
00058 AIDA_TupleIterator(const AIDA::ITuple& t,std::vector<AIDA::IEvaluator *> & evals);
00059 virtual ~AIDA_TupleIterator();
00060
00061 private:
00062
00063 AIDA_TupleIterator(const AIDA_TupleIterator & h);
00064 AIDA_TupleIterator & operator = (const AIDA_TupleIterator &);
00065
00066 public:
00067
00068
00069 void fillData(const std::vector<Anaphe::AIDA_Function_FML::AIDA_RangeSet * > & ranges);
00070
00071 protected:
00072
00073
00074 private:
00075
00076 AIDA::ITuple * m_tuple;
00077
00078 int m_dim;
00079 std::vector<std::string> m_cols;
00080 std::vector<AIDA::IEvaluator * > m_evals;
00081
00082
00083 };
00084
00085 }
00086 }
00087 #endif