SeqObjLoop Class Reference
[Classes for sequence design (odinseq library)]

Sequence Loop. More...

#include <seqloop.h>

Inheritance diagram for SeqObjLoop:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 SeqObjLoop (const STD_string &object_label="unnamedSeqObjLoop")
 SeqObjLoop (const SeqObjLoop &sl)
SeqObjLoopoperator= (const SeqObjLoop &sl)
double get_preduration () const
double get_postduration () const
SeqObjLoopset_body (const SeqObjBase &so)
SeqObjLoopset_times (unsigned int t)
SeqObjLoopoperator() (const SeqObjBase &embeddedBody)
SeqObjLoopoperator[] (const SeqVector &seqvector)
SeqObjLoopoperator[] (unsigned int t)
bool is_repetition_loop (bool only_qualvectors=false) const
bool is_acq_repetition_loop () const
bool is_obj_repetition_loop () const
int get_times () const
STD_string get_program (programContext &context) const
double get_duration () const
unsigned int event (eventContext &context) const
SeqValList get_freqvallist (freqlistAction action) const
SeqValList get_delayvallist () const
double get_rf_energy () const
void query (queryContext &context) const
RecoValList get_recovallist (unsigned int reptimes, JDXkSpaceCoords &coords) const
STD_string get_properties () const


Detailed Description

Sequence Loop.

This class represents a loop which is used to enclose other sequence objects so that they are repeatedely played out in the sequence

Definition at line 38 of file seqloop.h.


Constructor & Destructor Documentation

SeqObjLoop::SeqObjLoop ( const STD_string &  object_label = "unnamedSeqObjLoop"  ) 

Construct an empty loop object with the given label

SeqObjLoop::SeqObjLoop ( const SeqObjLoop sl  ) 

Constructs a copy of 'sl'


Member Function Documentation

SeqObjLoop& SeqObjLoop::operator= ( const SeqObjLoop sl  ) 

Assignment operator that makes this loop object become a copy of 'sl'

Reimplemented from SeqObjList.

double SeqObjLoop::get_preduration (  )  const

Duration the loop itself takes before iteration is started

double SeqObjLoop::get_postduration (  )  const

Duration the loop itself takes after its kernel is iterated

SeqObjLoop& SeqObjLoop::set_body ( const SeqObjBase so  ) 

Sets the inner part of loop, only useful for explicit setup of loops, i.e. in SeqEpiDriverDefault

SeqObjLoop& SeqObjLoop::set_times ( unsigned int  t  ) 

Specify the number of times the body of the loop will be repeated, only useful for explicit setup of loops, i.e. in SeqEpiDriverDefault

SeqObjLoop& SeqObjLoop::operator() ( const SeqObjBase embeddedBody  ) 

Generates and returns a new loop object that is a copy of this. The new loop will loop over 'embeddedBody'.

SeqObjLoop& SeqObjLoop::operator[] ( const SeqVector seqvector  ) 

This operator will append 'seqvector' to the list of vectors the loop will iterate through

SeqObjLoop& SeqObjLoop::operator[] ( unsigned int  t  ) 

This operator specifies the number of times the body of the loop will be repeated

bool SeqObjLoop::is_repetition_loop ( bool  only_qualvectors = false  )  const

Returns 'true' if the loop only repeats its contents and does not change its objects while looping. If 'only_qualvectors' is set to true, all vectors that do not influence the timing or RF power deposition will be considered as repetitions.

bool SeqObjLoop::is_acq_repetition_loop (  )  const

Returns 'true' if the loop only repeats the acquisition ordering.

bool SeqObjLoop::is_obj_repetition_loop (  )  const

Returns 'true' if the loop repeats its kernel by altering values of the vectors therein (gradient strength, frequency, phase) but without changing the order of the sequence objects.

int SeqObjLoop::get_times (  )  const [virtual]

The number of iterations of this counter object

Reimplemented from SeqCounter.

STD_string SeqObjLoop::get_program ( programContext context  )  const [virtual]

Returns the part in the pulse/gradient program of this sequence object. 'context' holds data about how the program should be generated, e.g. type of program and formatting.

Reimplemented from SeqObjList.

double SeqObjLoop::get_duration (  )  const [virtual]

Returns the duration of the sequence object.

Reimplemented from SeqObjList.

unsigned int SeqObjLoop::event ( eventContext context  )  const [virtual]

Queries the sequence tree for events, returns the number of events executed

Reimplemented from SeqObjList.

SeqValList SeqObjLoop::get_freqvallist ( freqlistAction  action  )  const [virtual]

Returns the list of frequency values in the objects branch of the sequence tree

Reimplemented from SeqObjList.

SeqValList SeqObjLoop::get_delayvallist (  )  const [virtual]

Returns the list of delay values in the objects branch of the sequence tree

Reimplemented from SeqObjList.

double SeqObjLoop::get_rf_energy (  )  const [virtual]

Returns the RF power deposition in the objects branch of the sequence tree. The physical unit is unspecified, it depends on the current platform.

Reimplemented from SeqObjList.

void SeqObjLoop::query ( queryContext context  )  const [virtual]

Query the sequence tree recursively

Reimplemented from SeqObjList.

RecoValList SeqObjLoop::get_recovallist ( unsigned int  reptimes,
JDXkSpaceCoords coords 
) const [virtual]

Appends the k-space coordinates in this branch of the sequence tree to 'coords' and returns their ordering

Reimplemented from SeqObjList.

STD_string SeqObjLoop::get_properties (  )  const [virtual]

Returns a string describing the object

Reimplemented from SeqObjList.


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

Generated on Wed Sep 30 15:33:24 2009 by  doxygen 1.5.6