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

AIDA_TupleIterator.h

Go to the documentation of this file.
00001  /**********************************************************************
00002   *                                                                    *
00003   * Copyright (c) 2002 Lorenzo Moneta, CERN/IT                       *
00004   *                   <Lorenzo.Moneta.cern.ch>                       *
00005   *                                                                    *
00006   * This library is free software; you can redistribute it and/or      *
00007   * modify it under the terms of the GNU Lesser General Public         *
00008   * License as published by the Free Software Foundation; either       *
00009   * version 2.1 of the License, or (at your option) 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 GNU   *
00014   * Lesser General Public License for more details.                    *
00015   *                                                                    *
00016   * You should have received a copy of the GNU Lesser General Public   *
00017   * License along with this library (see file COPYING); if not, write  *
00018   * to the Free Software Foundation, Inc., 59 Temple Place, Suite      *
00019   * 330, Boston, MA 02111-1307 USA, or contact the author.             *
00020   *                                                                    *
00021   **********************************************************************/
00022 
00023 // Header file for class AIDA_TupleIterator
00024 // 
00025 // Authors  : Lorenzo Moneta , Jakub Moscicki
00026 // Created  : Fri Oct  4 16:30:41 2002
00027 // 
00028 // Last update: Fri Oct  4 16:30:41 2002
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       // usually copying is non trivial, so we make this unaccessible
00063       AIDA_TupleIterator(const AIDA_TupleIterator & h); 
00064       AIDA_TupleIterator & operator = (const AIDA_TupleIterator &); 
00065       
00066     public: 
00067 
00068       // copy data in FML vector
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       // dimension of the data 
00078       int m_dim;
00079       std::vector<std::string> m_cols; 
00080       std::vector<AIDA::IEvaluator * > m_evals; 
00081 
00082       
00083     }; 
00084 
00085   }     // end of namespace Anaphe::AIDA_Fitter_FML
00086  } 
00087 #endif /* AIDA_TupleITERATOR */

Generated on Tue May 20 14:49:01 2003 for AIDA_Fitter_FML by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002