OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Member Functions | Private Member Functions | Friends | List of all members
Line Class Reference

The LINE definition. More...

#include <Line.h>

Inheritance diagram for Line:
Inheritance graph
[legend]
Collaboration diagram for Line:
Collaboration graph
[legend]

Public Member Functions

 Line ()
 Exemplar constructor. More...
 
virtual ~Line ()
 
virtual Lineclone (const std::string &name)
 Make clone. More...
 
virtual Linecopy (const std::string &name)
 Make complete copy. More...
 
virtual double getLength () const
 Return line length. More...
 
virtual ObjectmakeTemplate (const std::string &name, TokenStream &is, Statement &stat)
 Make a line template. More...
 
virtual void parse (Statement &stat)
 Parse the line object. More...
 
virtual void print (std::ostream &stream) const
 Print the line. More...
 
- Public Member Functions inherited from BeamSequence
virtual ~BeamSequence ()
 
virtual const std::string getCategory () const
 Return the object category as a string. More...
 
- Public Member Functions inherited from Element
virtual ~Element ()
 
virtual bool canReplaceBy (Object *object)
 Test if replacement is allowed. More...
 
virtual bool shouldTrace () const
 Trace flag. More...
 
virtual bool shouldUpdate () const
 Update flag. More...
 
virtual double getEntrance (ReferenceType) const
 Return arc length from origin to entrance (negative !). More...
 
virtual double getExit (ReferenceType) const
 Return arc length from origin to exit (positive !). More...
 
virtual void setShared (bool)
 Set shared flag. More...
 
ElementBasegetElement () const
 Return the embedded CLASSIC element. More...
 
void setElement (ElementBase *)
 Assign new CLASSIC element. More...
 
- Public Member Functions inherited from Object
virtual ~Object ()
 
void copyAttributes (const Object &)
 Copy attributes from another object. More...
 
virtual void execute ()
 Execute the command. More...
 
virtual AttributefindAttribute (const std::string &name)
 Find an attribute by name. More...
 
virtual const AttributefindAttribute (const std::string &name) const
 Find an attribute by name. More...
 
virtual ObjectmakeInstance (const std::string &name, Statement &, const Parser *)
 Macro handler function. More...
 
virtual void parseShortcut (Statement &)
 Parser for single-attribute commands. More...
 
virtual void printValue (std::ostream &) const
 
virtual void printHelp (std::ostream &) const
 Print help. More...
 
virtual void update ()
 Update this object. More...
 
bool isBuiltin () const
 True, if [b]this[/b] is a built-in object. More...
 
virtual bool isShared () const
 Shared flag. More...
 
void setDirty (bool)
 Set/reset the [b]modified[/b] flag. More...
 
bool isDirty () const
 True, if the [b]modified[/b] flag is set. More...
 
void setFlag (bool)
 Flag/unflag this object, e. g. to control output of objects for. More...
 
bool isFlagged () const
 True, if [b]this[/b] is flagged by setFlag(true). More...
 
const ObjectgetBaseObject () const
 Return the object's base type object. More...
 
const std::string & getOpalName () const
 Return object name. More...
 
ObjectgetParent () const
 Return parent pointer. More...
 
bool isTreeMember (const Object *subTree) const
 Test for tree membership. More...
 
void setOpalName (const std::string &name)
 Set object name. More...
 
void setParent (Object *)
 Set parent object. More...
 
void clear ()
 Clear the occurrence counter. More...
 
int increment ()
 Increment and return the occurrence counter. More...
 
int occurrenceCount ()
 Return the occurrence counter. More...
 
void registerReference (Invalidator *a)
 Register a reference to this object. More...
 
void unregisterReference (Invalidator *a)
 Unegister a reference to this object. More...
 
void registerOwnership (const AttributeHandler::OwnerType &itsClass) const
 
- Public Member Functions inherited from RCObject
int addReference () const
 Increment reference count. More...
 
int removeReference () const
 Decrement the reference count. More...
 
bool isShared () const
 Test for sharing. More...
 

Private Member Functions

 Line (const Line &)
 
void operator= (const Line &)
 
 Line (const std::string &name, Line *parent)
 
virtual FlaggedBeamlinefetchLine () const
 Return the embedded CLASSIC beam line. More...
 
void parseList (Statement &)
 
virtual void replace (Object *oldObject, Object *newObject)
 Replace references. More...
 

Friends

class LineTemplate
 

Additional Inherited Members

- Public Types inherited from Element
enum  ReferenceType { IS_ENTRY, IS_CENTRE, IS_EXIT }
 Reference for element positioning. More...
 
- Static Public Member Functions inherited from BeamSequence
static BeamSequencefind (const std::string &name)
 Find a BeamSequence by name. More...
 
- Static Public Member Functions inherited from Element
static Elementfind (const std::string &name)
 Find named Element. More...
 
- Public Attributes inherited from Object
std::vector< AttributeitsAttr
 The object attributes (see Attribute.hh). More...
 
- Protected Member Functions inherited from BeamSequence
 BeamSequence (int size, const char *name, const char *help)
 Constructor for exemplars. More...
 
 BeamSequence (const std::string &name, BeamSequence *parent)
 Constructor for clones. More...
 
- Protected Member Functions inherited from Element
 Element (int size, const char *name, const char *help)
 Constructor for exemplars. More...
 
 Element (const std::string &name, Element *parent)
 Constructor for clones. More...
 
- Protected Member Functions inherited from Object
 Object (int size, const char *name, const char *help)
 Constructor for exemplars. More...
 
 Object (const std::string &name, Object *parent)
 Constructor for clones. More...
 
- Protected Member Functions inherited from RCObject
 RCObject ()
 Default constructor. More...
 
 RCObject (const RCObject &)
 Copy constructor. More...
 
virtual ~RCObject ()=0
 
RCObjectoperator= (const RCObject &right)
 
- Protected Attributes inherited from Object
bool builtin
 Built-in flag. More...
 
bool modified
 Dirty flag. More...
 
bool flagged
 Object flag. More...
 

Detailed Description

The LINE definition.

Definition at line 36 of file Line.h.

Constructor & Destructor Documentation

Line::Line ( )

Exemplar constructor.

Definition at line 67 of file Line.cpp.

References Object::itsAttr, Attributes::makeReal(), Attributes::makeRealArray(), Attributes::makeString(), Object::registerOwnership(), Element::setElement(), AttributeHandler::STATEMENT, Attrib::Distribution::TYPE, X, and Y.

Referenced by clone(), and copy().

Here is the call graph for this function:

Line::~Line ( )
virtual

Definition at line 115 of file Line.cpp.

Line::Line ( const Line )
private
Line::Line ( const std::string &  name,
Line parent 
)
private

Definition at line 108 of file Line.cpp.

References Element::setElement().

Here is the call graph for this function:

Member Function Documentation

Line * Line::clone ( const std::string &  name)
virtual

Make clone.

Implements Object.

Definition at line 119 of file Line.cpp.

References Line().

Referenced by copy(), and LineTemplate::makeInstance().

Here is the call graph for this function:

Line * Line::copy ( const std::string &  name)
virtual

Make complete copy.

Implements BeamSequence.

Definition at line 124 of file Line.cpp.

References clone(), fetchLine(), and Line().

Here is the call graph for this function:

FlaggedBeamline * Line::fetchLine ( ) const
privatevirtual

Return the embedded CLASSIC beam line.

Implements BeamSequence.

Definition at line 291 of file Line.cpp.

References Element::getElement(), and ElementBase::removeWrappers().

Referenced by copy(), parse(), parseList(), print(), and replace().

Here is the call graph for this function:

double Line::getLength ( ) const
virtual

Return line length.

Implements Element.

Definition at line 132 of file Line.cpp.

References Attributes::getReal(), and Object::itsAttr.

Here is the call graph for this function:

Object * Line::makeTemplate ( const std::string &  name,
TokenStream is,
Statement stat 
)
virtual

Make a line template.

Reimplemented from Object.

Definition at line 138 of file Line.cpp.

References LineTemplate::parseTemplate().

Here is the call graph for this function:

void Line::operator= ( const Line )
private
void Line::parse ( Statement stat)
virtual
void Line::parseList ( Statement stat)
private
void Line::print ( std::ostream &  stream) const
virtual

Print the line.

Reimplemented from Object.

Definition at line 269 of file Line.cpp.

References endl(), fetchLine(), Object::getOpalName(), and name.

Here is the call graph for this function:

void Line::replace ( Object oldObject,
Object newObject 
)
privatevirtual

Replace references.

Reimplemented from Object.

Definition at line 363 of file Line.cpp.

References DefaultVisitor::execute(), fetchLine(), Element::getElement(), and Object::getOpalName().

Here is the call graph for this function:

Friends And Related Function Documentation

friend class LineTemplate
friend

Definition at line 38 of file Line.h.


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