00001 // LowEnergyThetaBraggCorrectionReader.h: interface for the LowEnergyThetaBraggCorrectionReader class. 00002 // 00004 00005 #if !defined(AFX_LOWENERGYTHETABRAGGCORRECTIONREADER_H__183923E3_5940_437C_BB9B_4BDF7C2815E6__INCLUDED_) 00006 #define AFX_LOWENERGYTHETABRAGGCORRECTIONREADER_H__183923E3_5940_437C_BB9B_4BDF7C2815E6__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 namespace Interpolator 00019 { 00022 class LowEnergyThetaBraggCorrectionReader : public FileReader 00023 { 00024 public: 00025 LowEnergyThetaBraggCorrectionReader(); 00026 LowEnergyThetaBraggCorrectionReader(const std::string& sFileName); 00027 LowEnergyThetaBraggCorrectionReader(const std::string& sFileName,long lNbColumns,long lNbLines); 00028 virtual ~LowEnergyThetaBraggCorrectionReader(); 00029 00030 virtual void Parse() ;// throw (ParseException); 00031 00032 double* getEnergy() const ;// throw (NullPointerException); 00033 double* getThetaDiff() const ;// throw (NullPointerException); 00034 double* getFitDiff() const ;// throw (NullPointerException); 00035 double* getFWHMResolution() const ;// throw (NullPointerException); 00036 00037 double getValue(int iColumn, int iIndex) const ;// throw (IndexOutOfBoundException); 00038 00039 double getEnergyValue(int i) const; 00040 double getThetaDiffValue(int i) const; 00041 double getFitDiffValue(int i) const; 00042 double getFWHMResolutionValue(int i) const; 00043 00044 std::string getEnergyName() const; 00045 std::string getThetaDiffName() const; 00046 std::string getFitDiffName() const; 00047 std::string getFWHMResolutionName() const; 00048 00049 private: 00050 double* _mEnergy; 00051 double* _mThetaDiff; 00052 double* _mFitDiff; 00053 double* _mFWHMResolution; 00054 00055 std::string _sEnergyName; 00056 std::string _sThetaDiffName; 00057 std::string _sFitDiffName; 00058 std::string _sFWHMResolutionName; 00059 00060 }; 00061 } 00062 #endif // !defined(AFX_LOWENERGYTHETABRAGGCORRECTIONREADER_H__183923E3_5940_437C_BB9B_4BDF7C2815E6__INCLUDED_) 00063 00064 00065 00066 00067
1.4.5