OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
SequenceMember Class Reference

A member of a SEQUENCE. More...

#include <SequenceMember.h>

Inheritance diagram for SequenceMember:
Inheritance graph
Collaboration diagram for SequenceMember:
Collaboration graph

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.
 
void setElement (std::shared_ptr< ElementBase > elem)
 

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.
 
std::shared_ptr< 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 32 of file SequenceMember.h.

◆ PositionType

Enumerator
ABSOLUTE 
FROM 
PREVIOUS 
NEXT 
BEGIN 
END 
DRIFT 
IMMEDIATE 

Definition at line 35 of file SequenceMember.h.

Constructor & Destructor Documentation

◆ SequenceMember() [1/2]

SequenceMember::SequenceMember ( )

Definition at line 25 of file SequenceMember.cpp.

◆ SequenceMember() [2/2]

SequenceMember::SequenceMember ( const SequenceMember rhs)

Definition at line 28 of file SequenceMember.cpp.

◆ ~SequenceMember()

SequenceMember::~SequenceMember ( )

Definition at line 35 of file SequenceMember.cpp.

Member Function Documentation

◆ accept()

void FlaggedElmPtr::accept ( BeamlineVisitor v) const
virtualinherited

Apply visitor.

Reimplemented from ElmPtr.

Definition at line 41 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 90 of file FlaggedElmPtr.h.

References FlaggedElmPtr::itsCounter.

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

◆ getElement()

◆ getReflectionFlag()

bool FlaggedElmPtr::getReflectionFlag ( ) const
inlineinherited

Get reflection flag.

Definition at line 92 of file FlaggedElmPtr.h.

References FlaggedElmPtr::isReflected.

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

◆ getSelectionFlag()

bool FlaggedElmPtr::getSelectionFlag ( ) const
inlineinherited

Get selection flag.

Definition at line 94 of file FlaggedElmPtr.h.

References FlaggedElmPtr::isSelected.

◆ operator=()

void SequenceMember::operator= ( const SequenceMember )
private

◆ setCounter()

void FlaggedElmPtr::setCounter ( int  count) const
inlineinherited

Set clone counter.

Definition at line 96 of file FlaggedElmPtr.h.

References FlaggedElmPtr::itsCounter.

◆ setElement() [1/2]

void ElmPtr::setElement ( ElementBase elem)
inlineinherited

Set the element pointer.

Definition at line 58 of file ElmPtr.h.

References ElmPtr::itsElement.

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

◆ setElement() [2/2]

void ElmPtr::setElement ( std::shared_ptr< ElementBase elem)
inlineinherited

Definition at line 74 of file ElmPtr.h.

References ElmPtr::itsElement.

◆ setLength()

void SequenceMember::setLength ( double  drift)

Store the drift length for a generated drift.

Definition at line 37 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 98 of file FlaggedElmPtr.h.

References FlaggedElmPtr::isReflected.

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

◆ setSelectionFlag()

void FlaggedElmPtr::setSelectionFlag ( bool  flag) const
inlineinherited

Get selection flag.

Definition at line 100 of file FlaggedElmPtr.h.

References FlaggedElmPtr::isSelected.

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

Member Data Documentation

◆ isReflected

bool FlaggedElmPtr::isReflected
mutableprotectedinherited

The reflection flag.

Definition at line 82 of file FlaggedElmPtr.h.

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

◆ isSelected

bool FlaggedElmPtr::isSelected
mutableprotectedinherited

The selection flag.

Definition at line 87 of file FlaggedElmPtr.h.

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

◆ itsCounter

int FlaggedElmPtr::itsCounter
mutableprotectedinherited

Clone counter.

Definition at line 77 of file FlaggedElmPtr.h.

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

◆ itsElement

std::shared_ptr<ElementBase> ElmPtr::itsElement
protectedinherited

◆ itsFlag

PositionType SequenceMember::itsFlag

◆ itsPosition

double SequenceMember::itsPosition

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

Definition at line 54 of file SequenceMember.h.

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

◆ itsType

MemberType SequenceMember::itsType

◆ OpalElement

std::shared_ptr<Element> SequenceMember::OpalElement

Definition at line 67 of file SequenceMember.h.

Referenced by SequenceParser::parseMember().


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