Main Page | Class Hierarchy | Class List | File List | Class Members

InputData.h

00001 
00002 // Copyright (c) 2003, The Institute for Genomic Research (TIGR), Rockville,
00003 // Maryland, U.S.A.  All rights reserved.
00005 #ifndef INPUTDATA_H
00006 #define INPUTDATA_H
00007 
00008 #include <string>
00009 #include "Prediction.h"
00010 #include "DataDescrip.h"
00011 #include <vector>
00012 #include <list>
00013 
00014 using std::vector;
00015 using std::list;
00016 
00017 class CustomScore;
00018 class DataSetAbstractProduct;
00019 
00028 class InputData {
00029 public:
00030   typedef vector<Prediction*>::const_iterator const_iterator;
00031 
00051   InputData(); 
00052   ~InputData();
00053 
00054   const_iterator begin() const { return _data.begin(); }
00055   const_iterator end() const { return _data.end(); }
00056   int getEnd5() const { assert(_data[0]); return _data[0]->getEnd5(); }
00057   const string& getTypeStr() const;
00058   friend std::ostream& operator<<(std::ostream&, const InputData&);    
00059   
00060   void setTrainExamples(DataSetAbstractProduct* dp) { _trainExamples = dp; }
00061   DataSetAbstractProduct* getTrainExamples() { return _trainExamples; }
00062 
00063   void readEvidenceFile(const string&, const string&, vector<DataDescrip*>&);
00064 
00065  private:
00066   vector<Prediction*> _data;
00067   list<DataSetAbstractProduct*> _stopLeak;
00068   DataSetAbstractProduct* _trainExamples;
00069 };
00070 
00071 #endif // INPUTDATA_H