00001 // GenericFileReader2D.h: interface for the GenericFileReader2D class. 00002 // 00004 00005 #if !defined(AFX_GenericFileReader2D_H__BEB897D3_E13B_4274_AC5D_DC1A5995A51B__INCLUDED_) 00006 #define AFX_GenericFileReader2D_H__BEB897D3_E13B_4274_AC5D_DC1A5995A51B__INCLUDED_ 00007 00008 #if _MSC_VER > 1000 00009 #pragma once 00010 #endif // _MSC_VER > 1000 00011 00012 #include "FileReader.h" 00013 #include <vector> 00014 #include "IndexOutOfBoundException.h" 00015 #include "NullPointerException.h" 00016 #include "ParseException.h" 00017 //using namespace std; 00018 00019 namespace Interpolator 00020 { 00022 class GenericFileReader2D : public FileReader 00023 { 00024 public: 00025 00026 GenericFileReader2D(); 00027 virtual ~GenericFileReader2D(); 00028 00029 GenericFileReader2D(const std::string& sFileName); 00030 GenericFileReader2D(const std::string& sFileName,long lNbColumns,long lNbLines); 00031 00032 virtual void Parse(); // throw (ParseException); 00033 00034 double* getDataX() const; 00035 double* getDataY() const; 00036 double* getDataZ() const; 00037 double getValue(int iColumnNumber, int iLineNumber) const; // throw (IndexOutOfBoundException); 00038 00039 long getNbDataX(); 00040 long getNbDataY(); 00041 long getNbDataZ(); 00042 00043 std::string getDataXName(); 00044 std::string getDataYName(); 00045 std::string getDataZName(); 00046 void displayAll(); 00047 private: 00048 00049 double* getColumn(int iColumnNumber) const; // throw (IndexOutOfBoundException,NullPointerException); 00050 00051 long _lNbDataX; 00052 long _lNbDataY; 00053 long _lNbDataZ; 00054 00055 std::string _sXName; 00056 std::string _sYName; 00057 std::string _sZName; 00058 00059 vector<double*> * _mVector; 00060 }; 00061 00062 } 00063 00064 #endif // !defined(AFX_GenericFileReader2D_H__BEB897D3_E13B_4274_AC5D_DC1A5995A51B__INCLUDED_)
1.4.5