msl 1.3.0
Loading...
Searching...
No Matches
msl::rf_pulses::SimpleRFPulse< TPulse > Class Template Reference

Detailed Description

template<typename TPulse>
class msl::rf_pulses::SimpleRFPulse< TPulse >

RF pulse composed of a simple sRF_PULSE-derived object and an NCO.

#include <SimpleRFPulse.h>

Public Member Functions

 SimpleRFPulse (SimpleRFPulse< TPulse > const &)=default
 SimpleRFPulse (SimpleRFPulse< TPulse > &&)=default
SimpleRFPulse< TPulse > & operator= (SimpleRFPulse< TPulse > const &)=default
SimpleRFPulse< TPulse > & operator= (SimpleRFPulse< TPulse > &&)=default
Type type () const override
 Return the type of the RF pulse.
SimpleRFPulse< TPulse > & setType (Type type) override
 Set the type of the RF pulse.
double flipAngle () const override
 Return the flip angle (deg).
SimpleRFPulse< TPulse > & setFlipAngle (double flipAngle) override
 Set the flip angle (deg).
double initialPhase () const override
 Return the initial phase of the RF pulse (deg).
SimpleRFPulse< TPulse > & setInitialPhase (double initialPhase) override
 Set the initial phase of the RF pulse (deg).
double additionalPhase () const override
 Return the additional phase of the RF pulse (deg).
SimpleRFPulse< TPulse > & setAdditionalPhase (double additionalPhase) override
 Set the additional phase of the RF pulse (deg).
long startTime () const override
 Return the start time of the RF pulse (µs).
SimpleRFPulse< TPulse > & setStartTime (long startTime) override
 Set the start time of the RF pulse (µs).
long duration () const override
 Return the duration of the RF pulse (µs).
SimpleRFPulse< TPulse > & setDuration (long duration) override
 Set the duration of the RF pulse (µs).
long samples () const override
 Return the number of discrete samples of the RF pulse.
SimpleRFPulse< TPulse > & setSamples (long samples) override
 Set the number of discrete samples of the RF pulse.
std::string ident () const override
 Return the user-defined name of the RF pulse.
SimpleRFPulse< TPulse > & setIdent (std::string const &ident) override
 Set the user-defined name of the RF pulse.
double gamma () const override
 Return the gyromagnetic ratio of the current nucleus (MHz/T).
MrProtocolData::SeqExpoRFInfo rfInfo () const override
 Return the RF information for SAR computation.
NLSStatus run (MrProt &protocol, SeqLim &limits, SeqExpo &exports) override
 Run the RF pulse and the NCO.
Public Member Functions inherited from msl::RFPulse
 RFPulse (RFPulse const &)=default
 RFPulse (RFPulse &&)=default
RFPulse & operator= (RFPulse const &)=default
RFPulse & operator= (RFPulse &&)=default
long endTime () const override
 Return the end time of the RF pulse (µs).
virtual long peakTime () const =0
 Return the time of the RF peak amplitude (µs).
Public Member Functions inherited from msl::RealTimeEvents
 RealTimeEvents ()
 No-op constructor.
 RealTimeEvents (RealTimeEvents const &)=default
 RealTimeEvents (RealTimeEvents &&)=default
RealTimeEventsoperator= (RealTimeEvents const &)=default
RealTimeEventsoperator= (RealTimeEvents &&)=default
sSLICE_POS const & slice () const
 Return the slice used in prepare and run.
virtual RealTimeEventssetSlice (sSLICE_POS const &slice)
 Set the slice used in prepare and run.
virtual NLSStatus prepare (MrProt &protocol, SeqLim &limits, SeqExpo &exports)=0
 Prepare the real-time events.

Protected Attributes

TPulse _rf
 sRF_PULSE-derived object
NCOPair _nco
 NCO before and after this pulse.
double _additionalPhase
 Additional phase for the NCO.
Protected Attributes inherited from msl::RealTimeEvents
sSLICE_POS _slice
 Slice specifications attached to this real time object.

Additional Inherited Members

Public Types inherited from msl::RFPulse
enum  Type { Undefined , Excitation , Refocussing , Store }
 Type of pulse, i.e. its role in the sequence.

Member Function Documentation

◆ type()

template<typename TPulse>
Type msl::rf_pulses::SimpleRFPulse< TPulse >::type ( ) const
overridevirtual

Return the type of the RF pulse.

Implements msl::RFPulse.

◆ setType()

template<typename TPulse>
SimpleRFPulse< TPulse > & msl::rf_pulses::SimpleRFPulse< TPulse >::setType ( Type type)
overridevirtual

Set the type of the RF pulse.

Implements msl::RFPulse.

◆ flipAngle()

template<typename TPulse>
double msl::rf_pulses::SimpleRFPulse< TPulse >::flipAngle ( ) const
overridevirtual

Return the flip angle (deg).

Implements msl::RFPulse.

◆ setFlipAngle()

template<typename TPulse>
SimpleRFPulse< TPulse > & msl::rf_pulses::SimpleRFPulse< TPulse >::setFlipAngle ( double flipAngle)
overridevirtual

Set the flip angle (deg).

Implements msl::RFPulse.

◆ initialPhase()

template<typename TPulse>
double msl::rf_pulses::SimpleRFPulse< TPulse >::initialPhase ( ) const
overridevirtual

Return the initial phase of the RF pulse (deg).

Implements msl::RFPulse.

◆ setInitialPhase()

template<typename TPulse>
SimpleRFPulse< TPulse > & msl::rf_pulses::SimpleRFPulse< TPulse >::setInitialPhase ( double initialPhase)
overridevirtual

Set the initial phase of the RF pulse (deg).

Implements msl::RFPulse.

◆ additionalPhase()

template<typename TPulse>
double msl::rf_pulses::SimpleRFPulse< TPulse >::additionalPhase ( ) const
overridevirtual

Return the additional phase of the RF pulse (deg).

Implements msl::RFPulse.

◆ setAdditionalPhase()

template<typename TPulse>
SimpleRFPulse< TPulse > & msl::rf_pulses::SimpleRFPulse< TPulse >::setAdditionalPhase ( double additionalPhase)
overridevirtual

Set the additional phase of the RF pulse (deg).

Implements msl::RFPulse.

◆ startTime()

template<typename TPulse>
long msl::rf_pulses::SimpleRFPulse< TPulse >::startTime ( ) const
overridevirtual

Return the start time of the RF pulse (µs).

Implements msl::RealTimeEvents.

◆ setStartTime()

template<typename TPulse>
SimpleRFPulse< TPulse > & msl::rf_pulses::SimpleRFPulse< TPulse >::setStartTime ( long startTime)
overridevirtual

Set the start time of the RF pulse (µs).

Implements msl::RFPulse.

◆ duration()

template<typename TPulse>
long msl::rf_pulses::SimpleRFPulse< TPulse >::duration ( ) const
overridevirtual

Return the duration of the RF pulse (µs).

Implements msl::RFPulse.

◆ setDuration()

template<typename TPulse>
SimpleRFPulse< TPulse > & msl::rf_pulses::SimpleRFPulse< TPulse >::setDuration ( long duration)
overridevirtual

Set the duration of the RF pulse (µs).

Implements msl::RFPulse.

◆ samples()

template<typename TPulse>
long msl::rf_pulses::SimpleRFPulse< TPulse >::samples ( ) const
overridevirtual

Return the number of discrete samples of the RF pulse.

Implements msl::RFPulse.

◆ setSamples()

template<typename TPulse>
SimpleRFPulse< TPulse > & msl::rf_pulses::SimpleRFPulse< TPulse >::setSamples ( long samples)
overridevirtual

Set the number of discrete samples of the RF pulse.

Implements msl::RFPulse.

◆ ident()

template<typename TPulse>
std::string msl::rf_pulses::SimpleRFPulse< TPulse >::ident ( ) const
overridevirtual

Return the user-defined name of the RF pulse.

Implements msl::RFPulse.

◆ setIdent()

template<typename TPulse>
SimpleRFPulse< TPulse > & msl::rf_pulses::SimpleRFPulse< TPulse >::setIdent ( std::string const & ident)
overridevirtual

Set the user-defined name of the RF pulse.

Implements msl::RFPulse.

◆ gamma()

template<typename TPulse>
double msl::rf_pulses::SimpleRFPulse< TPulse >::gamma ( ) const
overridevirtual

Return the gyromagnetic ratio of the current nucleus (MHz/T).

Implements msl::RFPulse.

◆ rfInfo()

template<typename TPulse>
MrProtocolData::SeqExpoRFInfo msl::rf_pulses::SimpleRFPulse< TPulse >::rfInfo ( ) const
overridevirtual

Return the RF information for SAR computation.

Implements msl::RealTimeEvents.

◆ run()

template<typename TPulse>
NLSStatus msl::rf_pulses::SimpleRFPulse< TPulse >::run ( MrProt & protocol,
SeqLim & limits,
SeqExpo & exports )
overridevirtual

Run the RF pulse and the NCO.

Implements msl::RealTimeEvents.


The documentation for this class was generated from the following file: