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

Detailed Description

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

Selective RF pulse, i.e. played with a gradient pulse.

#include <Selective.h>

Public Member Functions

 Selective ()=default
 
 Selective (Selective< TPulse > const &)=default
 
 Selective (Selective< TPulse > &&)=default
 
Selective< TPulse > & operator= (Selective< TPulse > const &)=default
 
Selective< TPulse > & operator= (Selective< TPulse > &&)=default
 
 ~Selective () override=default
 
Type type () const override
 Return the type of the RF pulse.
 
Selective< TPulse > & setType (Type type) override
 Set the type of the RF pulse.
 
double flipAngle () const override
 Return the flip angle (deg)
 
Selective< TPulse > & setFlipAngle (double flipAngle) override
 Set the flip angle (deg)
 
double initialPhase () const override
 Return the initial phase of the RF pulse (deg)
 
Selective< 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)
 
Selective< TPulse > & setAdditionalPhase (double additionalPhase) override
 Set the additional phase of the RF pulse (deg)
 
long startTime () const override
 Return the start time of the gradient+RF pulse block (µs)
 
Selective< TPulse > & setStartTime (long startTime) override
 Set the start time of the gradient+RF pulse block (µs)
 
long duration () const override
 Return the duration of the gradient+RF pulse (µs)
 
Selective< TPulse > & setDuration (long duration) override
 Set the duration of the gradient+RF pulse (µs)
 
Selective< TPulse > & setRFDuration (long duration)
 Set the duration of the RF pulse (µs)
 
long samples () const override
 Return the number of discrete samples of the RF pulse.
 
Selective< 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.
 
Selective< 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)
 
long peakTime () const override
 Return the time of the RF peak amplitude (µs)
 
MrProtocolData::SeqExpoRFInfo rfInfo () const override
 Return the RF information for SAR computation.
 
double thickness () const
 Return the thickness.
 
Selective< TPulse > & setThickness (double thickness)
 Set the thickness.
 
TPulse const & rf () const
 Return a reference to the child RF pulse.
 
TPulse & rf ()
 Return a reference to the child RF pulse.
 
GradientPulse const & gradient () const
 Return a reference to the child gradient pulse.
 
Selective< TPulse > & setSlice (sSLICE_POS const &slice) override
 Set the slice used in prepare and run.
 
NLSStatus prepare (MrProt &protocol, SeqLim &limits, SeqExpo &exports) override
 Prepare the real-time events.
 
NLSStatus run (MrProt &protocol, SeqLim &limits, SeqExpo &exports) override
 Run the real-time events.
 
- Public Member Functions inherited from msl::RFPulse
 RFPulse ()=default
 
 RFPulse (RFPulse const &)=default
 
 RFPulse (RFPulse &&)=default
 
RFPulseoperator= (RFPulse const &)=default
 
RFPulseoperator= (RFPulse &&)=default
 
virtual ~RFPulse ()=default
 
long endTime () const override
 Return the end time of the RF pulse (µs)
 
- Public Member Functions inherited from msl::RealTimeEvents
 RealTimeEvents ()
 
 RealTimeEvents (RealTimeEvents const &)=default
 
 RealTimeEvents (RealTimeEvents &&)=default
 
RealTimeEventsoperator= (RealTimeEvents const &)=default
 
RealTimeEventsoperator= (RealTimeEvents &&)=default
 
virtual ~RealTimeEvents ()=default
 
sSLICE_POS const & slice () const
 Return the slice used in prepare and run.
 

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. More...
 

Constructor & Destructor Documentation

◆ Selective() [1/3]

template<typename TPulse >
msl::rf_pulses::Selective< TPulse >::Selective ( )
default

◆ Selective() [2/3]

template<typename TPulse >
msl::rf_pulses::Selective< TPulse >::Selective ( Selective< TPulse > const &  )
default

◆ Selective() [3/3]

template<typename TPulse >
msl::rf_pulses::Selective< TPulse >::Selective ( Selective< TPulse > &&  )
default

◆ ~Selective()

template<typename TPulse >
msl::rf_pulses::Selective< TPulse >::~Selective ( )
overridedefault

Member Function Documentation

◆ operator=() [1/2]

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< TPulse >::operator= ( Selective< TPulse > const &  )
default

◆ operator=() [2/2]

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< TPulse >::operator= ( Selective< TPulse > &&  )
default

◆ type()

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

Return the type of the RF pulse.

Implements msl::RFPulse.

◆ setType()

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

Set the type of the RF pulse.

Implements msl::RFPulse.

◆ flipAngle()

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

Return the flip angle (deg)

Implements msl::RFPulse.

◆ setFlipAngle()

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

Set the flip angle (deg)

Implements msl::RFPulse.

◆ initialPhase()

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

Return the initial phase of the RF pulse (deg)

Implements msl::RFPulse.

◆ setInitialPhase()

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< 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::Selective< TPulse >::additionalPhase ( ) const
overridevirtual

Return the additional phase of the RF pulse (deg)

Implements msl::RFPulse.

◆ setAdditionalPhase()

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< 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::Selective< TPulse >::startTime ( ) const
overridevirtual

Return the start time of the gradient+RF pulse block (µs)

Implements msl::RealTimeEvents.

◆ setStartTime()

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

Set the start time of the gradient+RF pulse block (µs)

Implements msl::RFPulse.

◆ duration()

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

Return the duration of the gradient+RF pulse (µs)

Implements msl::RFPulse.

◆ setDuration()

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

Set the duration of the gradient+RF pulse (µs)

Implements msl::RFPulse.

◆ setRFDuration()

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< TPulse >::setRFDuration ( long  duration)

Set the duration of the RF pulse (µs)

◆ samples()

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

Return the number of discrete samples of the RF pulse.

Implements msl::RFPulse.

◆ setSamples()

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< 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::Selective< TPulse >::ident ( ) const
overridevirtual

Return the user-defined name of the RF pulse.

Implements msl::RFPulse.

◆ setIdent()

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< 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::Selective< TPulse >::gamma ( ) const
overridevirtual

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

Implements msl::RFPulse.

◆ peakTime()

template<typename TPulse >
long msl::rf_pulses::Selective< TPulse >::peakTime ( ) const
overridevirtual

Return the time of the RF peak amplitude (µs)

Implements msl::RFPulse.

◆ rfInfo()

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

Return the RF information for SAR computation.

Implements msl::RealTimeEvents.

◆ thickness()

template<typename TPulse >
double msl::rf_pulses::Selective< TPulse >::thickness ( ) const

Return the thickness.

◆ setThickness()

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< TPulse >::setThickness ( double  thickness)

Set the thickness.

Note
This field must be non-0 for prepare() to succeed

◆ rf() [1/2]

template<typename TPulse >
TPulse const & msl::rf_pulses::Selective< TPulse >::rf ( ) const

Return a reference to the child RF pulse.

◆ rf() [2/2]

template<typename TPulse >
TPulse & msl::rf_pulses::Selective< TPulse >::rf ( )

Return a reference to the child RF pulse.

◆ gradient()

template<typename TPulse >
GradientPulse const & msl::rf_pulses::Selective< TPulse >::gradient ( ) const

Return a reference to the child gradient pulse.

◆ setSlice()

template<typename TPulse >
Selective< TPulse > & msl::rf_pulses::Selective< TPulse >::setSlice ( sSLICE_POS const &  slice)
overridevirtual

Set the slice used in prepare and run.

Reimplemented from msl::RealTimeEvents.

◆ prepare()

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

Prepare the real-time events.

Implements msl::RealTimeEvents.

◆ run()

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

Run the real-time events.

Implements msl::RealTimeEvents.


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