link to homepage

Institute for Neuroscience and Medicine

Navigation and service


API documentation

Pulse Super Class. ABC for all RF and gradient pulses. More...

#include <Pulse.h>

Inheritance diagram for Pulse:
Collaboration diagram for Pulse:

List of all members.

Public Member Functions

 Pulse ()
 Construct and initialise some values.
virtual ~Pulse ()
 Default destructor.
 Pulse (const Pulse &)
 Copy constructor.
virtual void GetValue (double *dAllVal, double const time)
virtual bool Prepare (PrepareMode mode)
 see Module::Prepare()
double GetDuration ()
 Get the duration of this pulse.
void SetDuration (double val)
 Set the duration of this pulse.
void SetAxis (PulseAxis eAxis)
 Set the Axis of propagation of this pulse.
PulseAxis GetAxis ()
 Get the Axis of propagation of this pulse.
virtual void SetTPOIs ()
 Set time points of interest.
unsigned int GetNADC ()
void SetNADC (unsigned int nadc)
 Set number of ADCs.
double GetInitialDelay ()
 Get delay in respect of the AtomicSequence holding this pulse.
void SetPhaseLock (bool val)
 Set phase lock.
bool GetPhaseLock ()
 Get phase lock.

Protected Member Functions

virtual string GetInfo ()

Protected Attributes

PulseAxis m_axis
unsigned int m_adc
double m_initial_delay
bool m_phase_lock

Friends

class AnalyticPulseShape
class ExternalPulseData

Detailed Description

Pulse Super Class. ABC for all RF and gradient pulses.

Definition at line 39 of file Pulse.h.


Member Function Documentation

PulseAxis Pulse::GetAxis (  )  [inline]

Get the Axis of propagation of this pulse.

Get the Axis of propagation of this pulse to the given PulseAxis.

Returns:
Axis of propagation.

Definition at line 100 of file Pulse.h.

References m_axis.

Referenced by Model::RunSequenceTree().

Here is the caller graph for this function:

string Pulse::GetInfo (  )  [protected, virtual]

Get informations on this Pulse

Returns:
Infos

Reimplemented from Module.

Reimplemented in AnalyticGradPulse, ConstantGradPulse, EmptyPulse, ExternalGradPulse, GradPulse, SpiralGradPulse, TrapGradPulse, and TriangleGradPulse.

Definition at line 72 of file Pulse.cpp.

References m_axis, and m_initial_delay.

double Pulse::GetInitialDelay (  )  [inline]

Get delay in respect of the AtomicSequence holding this pulse.

Returns:
Delay in respect to start of the AtomicSequence.

Definition at line 134 of file Pulse.h.

References m_initial_delay.

Referenced by AtomicSequence::CollectTPOIs().

Here is the caller graph for this function:

unsigned int Pulse::GetNADC (  )  [inline]
Returns:
Get number of ADCs
Number of ADCs

Definition at line 117 of file Pulse.h.

References m_adc.

Referenced by TrapGradPulse::SetTPOIs(), SetTPOIs(), and EmptyPulse::SetTPOIs().

Here is the caller graph for this function:

bool Pulse::GetPhaseLock (  )  [inline]

Get phase lock.

Returns:
Phase lock.

Definition at line 148 of file Pulse.h.

References m_phase_lock.

Referenced by Model::RunSequenceTree().

Here is the caller graph for this function:

virtual void Pulse::GetValue ( double *  dAllVal,
double const   time 
) [inline, virtual]

See Module::GetValue

Reimplemented from Module.

Reimplemented in GradPulse.

Definition at line 64 of file Pulse.h.

void Pulse::SetAxis ( PulseAxis  eAxis  )  [inline]

Set the Axis of propagation of this pulse.

Set the Axis of propagation of this pulse to the given PulseAxis.

Parameters:
eAxis the axis as stated above.

Definition at line 92 of file Pulse.h.

References m_axis.

void Pulse::SetDuration ( double  val  ) 

Set the duration of this pulse.

Set the duration of this pulse to the given double value.

Parameters:
val double as stated above.

Definition at line 66 of file Pulse.cpp.

References Module::m_duration.

Referenced by SincRFPulse::Prepare(), and TrapGradPulse::SetTrapezoid().

Here is the caller graph for this function:

void Pulse::SetNADC ( unsigned int  nadc  )  [inline]

Set number of ADCs.

Parameters:
nadc 
Returns:
The private member m_ADCs.

Definition at line 127 of file Pulse.h.

References m_adc, and SetTPOIs().

Here is the call graph for this function:

void Pulse::SetPhaseLock ( bool  val  )  [inline]

Set phase lock.

Parameters:
val Phase lock.

Definition at line 141 of file Pulse.h.

References m_phase_lock.

void Pulse::SetTPOIs (  )  [inline, virtual]

Set time points of interest.

Must be overloaded by non-constant pulse shapes! Further, the function needs to be called every time the PulseShape changes its timing!!!

Reimplemented in AnalyticGradPulse, EmptyPulse, ExternalGradPulse, and TrapGradPulse.

Definition at line 54 of file Pulse.cpp.

References GetDuration(), GetNADC(), World::instance(), m_phase_lock, Module::m_tpoi, World::PhaseLock, and TPOI::Reset().

Referenced by AtomicSequence::CollectTPOIs(), Model::RunSequenceTree(), and SetNADC().

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

unsigned int Pulse::m_adc [protected]

Number of ADCs

Definition at line 161 of file Pulse.h.

Referenced by GetNADC(), Prepare(), Pulse(), and SetNADC().

double Pulse::m_initial_delay [protected]

Time shift at the beginning inside the atom

Definition at line 162 of file Pulse.h.

Referenced by GetInfo(), GetInitialDelay(), Prepare(), and Pulse().

bool Pulse::m_phase_lock [protected]

Lock phase of ADCs to the phase of the last RF pulse event

Definition at line 163 of file Pulse.h.

Referenced by GetPhaseLock(), Prepare(), Pulse(), SetPhaseLock(), TrapGradPulse::SetTPOIs(), SetTPOIs(), and EmptyPulse::SetTPOIs().


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

Servicemeu