OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
SequenceMember Class Reference

A member of a SEQUENCE. More...

#include <SequenceMember.h>

Inheritance diagram for SequenceMember:
Collaboration diagram for SequenceMember:

Public Types

enum  MemberType { UNKNOWN = 0 , GLOBAL = 1 , LOCAL = 2 , GENERATED = 3 }
enum  PositionType {
  ABSOLUTE = 0 , FROM = 1 , PREVIOUS = 2 , NEXT = 3 ,
  BEGIN = 4 , END = 5 , DRIFT = 6 , IMMEDIATE = 7
}

Public Member Functions

 SequenceMember ()
 SequenceMember (const SequenceMember &)
 ~SequenceMember ()
void setLength (double drift)
 Store the drift length for a generated drift.
virtual void accept (BeamlineVisitor &) const
 Apply visitor.
int getCounter () const
 Get clone counter.
bool getReflectionFlag () const
 Get reflection flag.
bool getSelectionFlag () const
 Get selection flag.
void setCounter (int) const
 Set clone counter.
void setReflectionFlag (bool flag) const
 Set reflection flag.
void setSelectionFlag (bool flag) const
 Get selection flag.
ElementBasegetElement () const
 Get the element pointer.
void setElement (ElementBase *)
 Set the element pointer.

Public Attributes

double itsPosition
 The position attribute ("AT" or "DRIFT").
PositionType itsFlag
 Flag word.
MemberType itsType
 Type word.
std::shared_ptr< ElementOpalElement

Protected Attributes

int itsCounter
 Clone counter.
bool isReflected
 The reflection flag.
bool isSelected
 The selection flag.
Pointer< ElementBaseitsElement

Private Member Functions

void operator= (const SequenceMember &)

Detailed Description

A member of a SEQUENCE.

Definition at line 29 of file SequenceMember.h.

Member Enumeration Documentation

◆ MemberType

Enumerator
UNKNOWN 
GLOBAL 
LOCAL 
GENERATED 

Definition at line 34 of file SequenceMember.h.

◆ PositionType

Enumerator
ABSOLUTE 
FROM 
PREVIOUS 
NEXT 
BEGIN 
END 
DRIFT 
IMMEDIATE 

Definition at line 42 of file SequenceMember.h.

Constructor & Destructor Documentation

◆ SequenceMember() [1/2]

SequenceMember::SequenceMember ( )

Definition at line 26 of file SequenceMember.cpp.

References ABSOLUTE, FlaggedElmPtr::FlaggedElmPtr(), itsFlag, itsPosition, itsType, OpalElement, and UNKNOWN.

Referenced by operator=(), and SequenceMember().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SequenceMember() [2/2]

SequenceMember::SequenceMember ( const SequenceMember & rhs)

Definition at line 32 of file SequenceMember.cpp.

References FlaggedElmPtr::FlaggedElmPtr(), itsFlag, itsPosition, itsType, OpalElement, and SequenceMember().

Here is the call graph for this function:

◆ ~SequenceMember()

SequenceMember::~SequenceMember ( )

Definition at line 41 of file SequenceMember.cpp.

Member Function Documentation

◆ accept()

void FlaggedElmPtr::accept ( BeamlineVisitor & v) const
virtualinherited

Apply visitor.

Reimplemented from ElmPtr.

Definition at line 58 of file FlaggedElmPtr.cpp.

References BeamlineVisitor::visitFlaggedElmPtr().

Here is the call graph for this function:

◆ getCounter()

int FlaggedElmPtr::getCounter ( ) const
inlineinherited

Get clone counter.

Definition at line 96 of file FlaggedElmPtr.h.

References itsCounter.

Referenced by PlaceRep::enter(), and PlaceRep::leave().

Here is the caller graph for this function:

◆ getElement()

ElementBase * ElmPtr::getElement ( ) const
inlineinherited

Get the element pointer.

Definition at line 58 of file ElmPtr.h.

References itsElement.

Referenced by Sequence::copy(), PlaceRep::enter(), Selector::handleElement(), PlaceRep::leave(), Sequence::print(), SequenceMember::setLength(), DefaultVisitor::visitFlaggedElmPtr(), RangeSelector::visitFlaggedElmPtr(), Replacer::visitFlaggedElmPtr(), and SpecificElementVisitor< ELEM >::visitFlaggedElmPtr().

Here is the caller graph for this function:

◆ getReflectionFlag()

bool FlaggedElmPtr::getReflectionFlag ( ) const
inlineinherited

Get reflection flag.

Definition at line 101 of file FlaggedElmPtr.h.

References isReflected.

Referenced by Sequence::print(), and DefaultVisitor::visitFlaggedElmPtr().

Here is the caller graph for this function:

◆ getSelectionFlag()

bool FlaggedElmPtr::getSelectionFlag ( ) const
inlineinherited

Get selection flag.

Definition at line 106 of file FlaggedElmPtr.h.

References isSelected.

◆ operator=()

void SequenceMember::operator= ( const SequenceMember & )
private

References SequenceMember().

Here is the call graph for this function:

◆ setCounter()

void FlaggedElmPtr::setCounter ( int count) const
inlineinherited

Set clone counter.

Definition at line 111 of file FlaggedElmPtr.h.

References itsCounter.

◆ setElement()

void ElmPtr::setElement ( ElementBase * elem)
inlineinherited

Set the element pointer.

Definition at line 63 of file ElmPtr.h.

References itsElement.

Referenced by Sequence::addEndMarkers(), Sequence::copy(), Sequence::insertDrifts(), and SequenceParser::parseMember().

Here is the caller graph for this function:

◆ setLength()

void SequenceMember::setLength ( double drift)

Store the drift length for a generated drift.

Definition at line 45 of file SequenceMember.cpp.

References GENERATED, ElmPtr::getElement(), itsType, and ElementBase::setElementLength().

Here is the call graph for this function:

◆ setReflectionFlag()

void FlaggedElmPtr::setReflectionFlag ( bool flag) const
inlineinherited

Set reflection flag.

Definition at line 116 of file FlaggedElmPtr.h.

References isReflected.

Referenced by Line::parseList(), and SequenceParser::parseMember().

Here is the caller graph for this function:

◆ setSelectionFlag()

void FlaggedElmPtr::setSelectionFlag ( bool flag) const
inlineinherited

Get selection flag.

Definition at line 121 of file FlaggedElmPtr.h.

References isSelected.

Referenced by Selector::handleElement(), and Flagger::visitFlaggedElmPtr().

Here is the caller graph for this function:

Member Data Documentation

◆ isReflected

bool FlaggedElmPtr::isReflected
mutableprotectedinherited

The reflection flag.

Definition at line 87 of file FlaggedElmPtr.h.

Referenced by FlaggedElmPtr(), FlaggedElmPtr(), FlaggedElmPtr(), getReflectionFlag(), and setReflectionFlag().

◆ isSelected

bool FlaggedElmPtr::isSelected
mutableprotectedinherited

The selection flag.

Definition at line 92 of file FlaggedElmPtr.h.

Referenced by FlaggedElmPtr(), FlaggedElmPtr(), FlaggedElmPtr(), getSelectionFlag(), and setSelectionFlag().

◆ itsCounter

int FlaggedElmPtr::itsCounter
mutableprotectedinherited

Clone counter.

Definition at line 82 of file FlaggedElmPtr.h.

Referenced by FlaggedElmPtr(), FlaggedElmPtr(), FlaggedElmPtr(), getCounter(), and setCounter().

◆ itsElement

Pointer<ElementBase> ElmPtr::itsElement
protectedinherited

Definition at line 54 of file ElmPtr.h.

Referenced by accept(), ElmPtr(), ElmPtr(), ElmPtr(), getElement(), and setElement().

◆ itsFlag

PositionType SequenceMember::itsFlag

◆ itsPosition

double SequenceMember::itsPosition

The position attribute ("AT" or "DRIFT").

Definition at line 62 of file SequenceMember.h.

Referenced by Sequence::addEndMarkers(), SequenceParser::parsePosition(), Sequence::print(), SequenceMember(), and SequenceMember().

◆ itsType

◆ OpalElement

std::shared_ptr<Element> SequenceMember::OpalElement

Definition at line 75 of file SequenceMember.h.

Referenced by SequenceParser::parseMember(), SequenceMember(), and SequenceMember().


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