2 // C++ Interface: brukerobjectvaryingproperties
7 // Author: denis grenier <denis.grenier@creatis.univ-lyon1.fr>, (C) 2009
9 // Copyright: See COPYING file that comes with this distribution
12 #ifndef BRUKEROBJECTVARYINGPROPERTIES_H
13 #define BRUKEROBJECTVARYINGPROPERTIES_H
23 #include "boost/regex.hpp"
24 #include "brukerFieldData.h"
25 #include "brukerSystem.h"
28 @author denis grenier <denis.grenier@creatis.univ-lyon1.fr>
30 class creaBruker_EXPORT BrukerObjectVaryingProperties{
32 BrukerObjectVaryingProperties();
33 ~BrukerObjectVaryingProperties();
35 double getTE (unsigned int theValue) const;
36 double getPositionP (unsigned int theValue) const;
37 double getPositionR (unsigned int theValue) const;
38 double getPositionS (unsigned int theValue) const;
39 double getPositionTimePerNR(unsigned int theValue) const;
40 int getAcquisitionOrder (unsigned int theValue) const;
42 std::vector<std::vector<double> > getOrientation(unsigned int theValue) const;
44 bool init(std::map<std::string, BrukerFieldData> &BrukerHM, std::vector<int> &LoopStruct);
48 void computePositionTimePerNR (std::map<std::string, BrukerFieldData> &BrukerHM, std::vector<int> &LoopStruct);
49 void computeOrientation (std::map<std::string, BrukerFieldData> &BrukerHM, std::vector<int> &LoopStruct);
50 void computeAcquisitionOrder (std::map<std::string, BrukerFieldData> &BrukerHM, std::vector<int> &LoopStruct);
51 void computePositionS (std::map<std::string, BrukerFieldData> &BrukerHM);
52 void computePositionR (std::map<std::string, BrukerFieldData> &BrukerHM);
53 void computePositionP (std::map<std::string, BrukerFieldData> &BrukerHM);
54 void computeTE (std::map<std::string, BrukerFieldData> &BrukerHM);
55 std::vector<double> TE;
56 std::vector<double> PositionR;
57 std::vector<double> PositionP;
58 std::vector<double> PositionS;
59 std::vector<double> PositionTimePerNR;
60 std::vector<int> AcquisitionOrder;
61 std::vector<std::vector<std::vector <double> > > Orientation;