00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef SEQGRADCONST_H
00019 #define SEQGRADCONST_H
00020
00021 #include <odinseq/seqgradchan.h>
00022
00033 class SeqGradConst : public SeqGradChan {
00034
00035 public:
00036
00043 SeqGradConst(const STD_string& object_label,direction gradchannel,
00044 float gradstrength, double gradduration);
00045
00049 SeqGradConst(const SeqGradConst& sgc);
00050
00054 SeqGradConst(const STD_string& object_label = "unnamedSeqGradConst" );
00055
00059 SeqGradConst& operator = (const SeqGradConst& sgc);
00060
00061 private:
00062 friend class SeqGradVector;
00063
00064
00065 bool prep();
00066
00067
00068
00069 SeqGradChan& get_subchan(double starttime, double endtime) const;
00070 STD_string get_grdpart(float matrixfactor) const;
00071 float get_integral() const {return get_strength() * get_duration();}
00072
00073
00074 };
00075
00077
00078
00084 class SeqGradDelay : public SeqGradChan {
00085
00086 public:
00087
00093 SeqGradDelay(const STD_string& object_label, direction gradchannel, double gradduration);
00094
00098 SeqGradDelay(const SeqGradDelay& sgd);
00099
00103 SeqGradDelay(const STD_string& object_label = "unnamedSeqGradDelay" );
00104
00108 SeqGradDelay& operator = (const SeqGradDelay& sgd);
00109
00110
00111
00112 float get_strength() const {return 0.0;}
00113
00114
00115 private:
00116
00117 SeqGradChan& get_subchan(double starttime, double endtime) const;
00118 STD_string get_grdpart(float matrixfactor) const;
00119 float get_integral() const {return 0.0;}
00120
00121 };
00122
00123
00127 #endif