JEMRIS 2.9.1
open-source MRI simulations
Loading...
Searching...
No Matches
ExternalRFPulse.h
Go to the documentation of this file.
1
5/*
6 * JEMRIS Copyright (C)
7 * 2006-2023 Tony Stoecker
8 * 2007-2018 Kaveh Vahedipour
9 * 2009-2019 Daniel Pflugfelder
10 *
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
25 */
26
27#ifndef EXTERNALRFPULSE_H_
28#define EXTERNALRFPULSE_H_
29
30#include "RFPulse.h"
31#include "ExternalPulseData.h"
32
36class ExternalRFPulse : public RFPulse {
37
38 public:
39
44
49
54
58 inline ExternalRFPulse* Clone() const {return (new ExternalRFPulse(*this));};
59
66 virtual bool Prepare (const PrepareMode mode);
67
68
72 virtual void SetTPOIs() { m_pulse_data.SetTPOIs(); } ;
73
80 virtual double GetMagnitude (const double time ){return m_pulse_data.GetData(time); };
81
86
87 private:
88
94 string GetInfo ();
95
97 string m_fname;
98 double m_scale;
99 bool m_interp;
101};
102
103#endif /*HARDRFPULSE_H_*/
mode
Definition: Declarations.h:112
Implementation of JEMRIS ExternalPulseData.
Implementation of JEMRIS RFPulse.
Read and retrieve data of external pulse shapes.
Definition: ExternalPulseData.h:36
void SetTPOIs()
Definition: ExternalPulseData.cpp:65
double GetData(double const time)
get the data
Definition: ExternalPulseData.cpp:44
RF pulse with external pulse shape.
Definition: ExternalRFPulse.h:36
double m_scale
Scaling factor for the amps
Definition: ExternalRFPulse.h:98
virtual double GetMagnitude(const double time)
Returns a constant Magnitidue for all times.
Definition: ExternalRFPulse.h:80
ExternalPulseData m_pulse_data
Definition: ExternalRFPulse.h:96
ExternalPulseData * GetPulseData()
Get function pointer to phase evaluation.
Definition: ExternalRFPulse.h:85
ExternalRFPulse * Clone() const
Definition: ExternalRFPulse.h:58
string GetInfo()
Get informations on this external gradient.
Definition: ExternalRFPulse.cpp:69
~ExternalRFPulse()
Default destructor.
Definition: ExternalRFPulse.h:53
string m_fname
Filename containing the RF amps and phases
Definition: ExternalRFPulse.h:97
virtual bool Prepare(const PrepareMode mode)
Prepare the hard RF pulse.
Definition: ExternalRFPulse.cpp:40
virtual void SetTPOIs()
Definition: ExternalRFPulse.h:72
bool m_interp
if true, linear interpolation is applied
Definition: ExternalRFPulse.h:99
ExternalRFPulse()
Default constructor.
Definition: ExternalRFPulse.h:43
Super class for all RF pulses.
Definition: RFPulse.h:36

-- last change 03.10.2023 | Tony Stoecker | Imprint | Data Protection --