OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Static Protected Attributes | Private Member Functions | Private Attributes | List of all members
OpalElement Class Reference

Base class for all beam line elements. More...

#include <OpalElement.h>

Inherits Element.

Inherited by OpalBeamStripping, OpalBend, OpalCavity, OpalCCollimator, OpalCyclotron, OpalCyclotronValley, OpalDegrader, OpalDrift, OpalECollimator, OpalFlexibleCollimator, OpalHKicker, OpalHMonitor, OpalInstrument, OpalKicker, OpalMarker, OpalMonitor, OpalMultipole, OpalMultipoleT, OpalMultipoleTCurvedConstRadius, OpalMultipoleTCurvedVarRadius, OpalMultipoleTStraight, OpalOctupole, OpalOffset::OpalGlobalCartesianOffset, OpalOffset::OpalGlobalCylindricalOffset, OpalOffset::OpalLocalCartesianOffset, OpalOffset::OpalLocalCylindricalOffset, OpalParallelPlate, OpalPatch, OpalPepperPot, OpalPolynomialTimeDependence, OpalProbe, OpalQuadrupole, OpalRBend3D, OpalRCollimator, OpalRingDefinition, OpalSBend3D, OpalScalingFFAMagnet, OpalSeparator, OpalSeptum, OpalSextupole, OpalSlit, OpalSolenoid, OpalSource, OpalSplineTimeDependence, OpalSRot, OpalStripper, OpalTravelingWave, OpalVariableRFCavity, OpalVariableRFCavityFringeField, OpalVerticalFFAMagnet, OpalVKicker, OpalVMonitor, OpalWire, and OpalYRot.

Collaboration diagram for OpalElement:
Collaboration graph
[legend]

Public Types

enum  {
  TYPE, APERT, LENGTH, ELEMEDGE,
  WAKEF, PARTICLEMATTERINTERACTION, ORIGIN, ORIENTATION,
  X, Y, Z, THETA,
  PHI, PSI, DX, DY,
  DZ, DTHETA, DPHI, DPSI,
  COMMON
}
 The common attributes for all elements. More...
 
enum  ValueFlag { ACTUAL_FLAG, IDEAL_FLAG, ERROR_FLAG }
 Switch for value desired on ATTLIST command. More...
 
- Public Types inherited from Element
enum  ReferenceType { IS_ENTRY, IS_CENTRE, IS_EXIT }
 Reference for element positioning. More...
 

Public Member Functions

virtual ~OpalElement ()
 
virtual void fillRegisteredAttributes (const ElementBase &, ValueFlag)
 Fill in all registered attributes. More...
 
virtual double getLength () const
 Return element length. More...
 
const std::string getTypeName () const
 Return the element's type name. More...
 
std::pair
< ElementBase::ApertureType,
std::vector< double > > 
getApert () const
 
const std::string getWakeF () const
 Return the element's type name. More...
 
const std::string getParticleMatterInteraction () const
 
const std::string getWMaterial () const
 
const std::string getWakeGeom () const
 
std::vector< double > getWakeParam () const
 
const std::string getWakeConductivity () const
 
virtual void parse (Statement &)
 Parse the element. More...
 
virtual void print (std::ostream &) const
 Print the object. More...
 
virtual void update ()
 Update the embedded CLASSIC element. More...
 
virtual void updateUnknown (ElementBase *)
 Transmit the ``unknown'' (not known to OPAL) attributes to CLASSIC. More...
 
- Public Member Functions inherited from Element
virtual ~Element ()
 
virtual bool canReplaceBy (Object *object)
 Test if replacement is allowed. More...
 
virtual const std::string getCategory () const
 Return the object category as a string. 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 ()
 
virtual Objectclone (const std::string &name)=0
 Return a clone. More...
 
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 ObjectmakeTemplate (const std::string &, TokenStream &, Statement &)
 Macro handler function. 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 replace (Object *oldObject, Object *newObject)
 Replace references. 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...
 

Static Public Member Functions

static AttCellfindRegisteredAttribute (const std::string &name)
 Find a registered attribute. More...
 
static void setRegisteredAttribute (const std::string &, double)
 Store a registered real attribute. More...
 
static void setRegisteredAttribute (const std::string &, const std::string &)
 Store a registered string attribute. More...
 
- Static Public Member Functions inherited from Element
static Elementfind (const std::string &name)
 Find named Element. More...
 

Protected Member Functions

 OpalElement (int size, const char *name, const char *help)
 Exemplar constructor. More...
 
 OpalElement (const std::string &name, OpalElement *parent)
 Clone constructor. More...
 
void registerOwnership () const
 
- 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)
 

Static Protected Member Functions

static void printMultipoleStrength (std::ostream &os, int order, int &len, const std::string &sName, const std::string &tName, const Attribute &length, const Attribute &vNorm, const Attribute &vSkew)
 Print multipole components in OPAL-8 format. More...
 
static void printAttribute (std::ostream &os, const std::string &name, const std::string &image, int &len)
 Print an attribute with a OPAL-8 name (as an expression). More...
 
static void printAttribute (std::ostream &os, const std::string &name, double value, int &len)
 Print an attribute with a OPAL-8 name (as a constant). More...
 
static AttCellregisterRealAttribute (const std::string &name)
 Register a ``real'' element attribute. More...
 
static AttCellregisterStringAttribute (const std::string &name)
 Register a ``string'' element attribute. More...
 

Static Protected Attributes

static std::map< std::string,
OwnPtr< AttCell > > 
attributeRegistry
 The registry for named attributes. More...
 

Private Member Functions

 OpalElement ()
 
void operator= (const OpalElement &)
 

Private Attributes

int itsSize
 

Additional Inherited Members

- Public Attributes inherited from Object
std::vector< AttributeitsAttr
 The object attributes (see Attribute.hh). More...
 
- Protected Attributes inherited from Object
bool builtin
 Built-in flag. More...
 
bool modified
 Dirty flag. More...
 
bool flagged
 Object flag. More...
 

Detailed Description

Base class for all beam line elements.

Definition at line 41 of file OpalElement.h.

Member Enumeration Documentation

anonymous enum

The common attributes for all elements.

Enumerator
TYPE 
APERT 
LENGTH 
ELEMEDGE 
WAKEF 
PARTICLEMATTERINTERACTION 
ORIGIN 
ORIENTATION 
X 
Y 
Z 
THETA 
PHI 
PSI 
DX 
DY 
DZ 
DTHETA 
DPHI 
DPSI 
COMMON 

Definition at line 46 of file OpalElement.h.

Switch for value desired on ATTLIST command.

Enumerator
ACTUAL_FLAG 
IDEAL_FLAG 
ERROR_FLAG 

Definition at line 71 of file OpalElement.h.

Constructor & Destructor Documentation

OpalElement::~OpalElement ( )
virtual

Definition at line 138 of file OpalElement.cpp.

OpalElement::OpalElement ( int  size,
const char *  name,
const char *  help 
)
protected
OpalElement::OpalElement ( const std::string &  name,
OpalElement parent 
)
protected

Clone constructor.

Definition at line 133 of file OpalElement.cpp.

OpalElement::OpalElement ( )
private

Member Function Documentation

void OpalElement::fillRegisteredAttributes ( const ElementBase base,
ValueFlag   
)
virtual

Fill in all registered attributes.

Reimplemented in OpalCyclotron, OpalVariableRFCavityFringeField, OpalMultipoleT, OpalMultipoleTCurvedConstRadius, OpalMultipoleTCurvedVarRadius, OpalCavity, OpalVariableRFCavity, OpalMultipoleTStraight, OpalRingDefinition, OpalScalingFFAMagnet, OpalOffset::OpalLocalCartesianOffset, OpalOffset::OpalGlobalCartesianOffset, OpalOffset::OpalLocalCylindricalOffset, OpalTravelingWave, OpalKicker, OpalOffset::OpalGlobalCylindricalOffset, OpalSBend3D, OpalPolynomialTimeDependence, OpalSplineTimeDependence, OpalVKicker, OpalQuadrupole, OpalRBend3D, OpalStripper, OpalCCollimator, OpalMultipole, OpalOctupole, OpalParallelPlate, OpalPepperPot, OpalProbe, OpalSextupole, OpalSeptum, OpalFlexibleCollimator, OpalHKicker, OpalWire, OpalDegrader, OpalECollimator, OpalRCollimator, OpalSlit, OpalSolenoid, OpalCyclotronValley, OpalSeparator, OpalSRot, OpalYRot, OpalVerticalFFAMagnet, OpalBeamStripping, OpalRBend, OpalSBend, and OpalSource.

Definition at line 143 of file OpalElement.cpp.

References attributeRegistry, AttributeSet::begin(), Quaternion::conjugate(), AttributeSet::end(), Euclid3D::getAll(), Object::getBaseObject(), ElementBase::getCSTrafoGlobal2Local(), ElementBase::getElementLength(), ElementBase::getMisalignment(), Object::getOpalName(), CoordinateSystemTrafo::getOrigin(), Object::getParent(), CoordinateSystemTrafo::getRotation(), Util::getTaitBryantAngles(), getTypeName(), and AlignWrapper::offset().

Referenced by OpalSource::fillRegisteredAttributes(), OpalSBend::fillRegisteredAttributes(), OpalBeamStripping::fillRegisteredAttributes(), OpalRBend::fillRegisteredAttributes(), OpalVerticalFFAMagnet::fillRegisteredAttributes(), OpalSRot::fillRegisteredAttributes(), OpalYRot::fillRegisteredAttributes(), OpalSeparator::fillRegisteredAttributes(), OpalCyclotronValley::fillRegisteredAttributes(), OpalSolenoid::fillRegisteredAttributes(), OpalSlit::fillRegisteredAttributes(), OpalDegrader::fillRegisteredAttributes(), OpalRCollimator::fillRegisteredAttributes(), OpalECollimator::fillRegisteredAttributes(), OpalFlexibleCollimator::fillRegisteredAttributes(), OpalHKicker::fillRegisteredAttributes(), OpalWire::fillRegisteredAttributes(), OpalSeptum::fillRegisteredAttributes(), OpalOctupole::fillRegisteredAttributes(), OpalSextupole::fillRegisteredAttributes(), OpalMultipole::fillRegisteredAttributes(), OpalParallelPlate::fillRegisteredAttributes(), OpalPepperPot::fillRegisteredAttributes(), OpalProbe::fillRegisteredAttributes(), OpalCCollimator::fillRegisteredAttributes(), OpalStripper::fillRegisteredAttributes(), OpalRBend3D::fillRegisteredAttributes(), OpalQuadrupole::fillRegisteredAttributes(), OpalSplineTimeDependence::fillRegisteredAttributes(), OpalVKicker::fillRegisteredAttributes(), OpalPolynomialTimeDependence::fillRegisteredAttributes(), OpalOffset::OpalGlobalCylindricalOffset::fillRegisteredAttributes(), OpalSBend3D::fillRegisteredAttributes(), OpalKicker::fillRegisteredAttributes(), OpalTravelingWave::fillRegisteredAttributes(), OpalOffset::OpalLocalCylindricalOffset::fillRegisteredAttributes(), OpalOffset::OpalGlobalCartesianOffset::fillRegisteredAttributes(), OpalOffset::OpalLocalCartesianOffset::fillRegisteredAttributes(), OpalScalingFFAMagnet::fillRegisteredAttributes(), OpalRingDefinition::fillRegisteredAttributes(), OpalMultipoleTStraight::fillRegisteredAttributes(), OpalVariableRFCavity::fillRegisteredAttributes(), OpalCavity::fillRegisteredAttributes(), OpalMultipoleTCurvedConstRadius::fillRegisteredAttributes(), OpalMultipoleT::fillRegisteredAttributes(), OpalMultipoleTCurvedVarRadius::fillRegisteredAttributes(), OpalVariableRFCavityFringeField::fillRegisteredAttributes(), OpalCyclotron::fillRegisteredAttributes(), and AttWriter::visitFlaggedElmPtr().

Here is the call graph for this function:

AttCell * OpalElement::findRegisteredAttribute ( const std::string &  name)
static

Find a registered attribute.

Definition at line 195 of file OpalElement.cpp.

References attributeRegistry, and name.

Referenced by AttList::writeTable().

std::pair< ElementBase::ApertureType, std::vector< double > > OpalElement::getApert ( ) const
double OpalElement::getLength ( ) const
virtual
const std::string OpalElement::getParticleMatterInteraction ( ) const

Definition at line 391 of file OpalElement.cpp.

References Object::findAttribute(), and Attributes::getString().

Here is the call graph for this function:

const std::string OpalElement::getTypeName ( ) const

Return the element's type name.

Definition at line 377 of file OpalElement.cpp.

References Object::findAttribute(), and Attributes::getString().

Referenced by fillRegisteredAttributes(), and Selector::handleElement().

Here is the call graph for this function:

const std::string OpalElement::getWakeConductivity ( ) const
const std::string OpalElement::getWakeF ( ) const

Return the element's type name.

Functions to get the wake field parametes

Definition at line 386 of file OpalElement.cpp.

References Object::findAttribute(), and Attributes::getString().

Here is the call graph for this function:

const std::string OpalElement::getWakeGeom ( ) const
std::vector<double> OpalElement::getWakeParam ( ) const
const std::string OpalElement::getWMaterial ( ) const
void OpalElement::operator= ( const OpalElement )
private
void OpalElement::parse ( Statement stat)
virtual
void OpalElement::print ( std::ostream &  os) const
virtual
void OpalElement::printAttribute ( std::ostream &  os,
const std::string &  name,
const std::string &  image,
int &  len 
)
staticprotected

Print an attribute with a OPAL-8 name (as an expression).

Definition at line 665 of file OpalElement.cpp.

void OpalElement::printAttribute ( std::ostream &  os,
const std::string &  name,
double  value,
int &  len 
)
staticprotected

Print an attribute with a OPAL-8 name (as a constant).

Definition at line 677 of file OpalElement.cpp.

void OpalElement::printMultipoleStrength ( std::ostream &  os,
int  order,
int &  len,
const std::string &  sName,
const std::string &  tName,
const Attribute length,
const Attribute vNorm,
const Attribute vSkew 
)
staticprotected

Print multipole components in OPAL-8 format.

Definition at line 459 of file OpalElement.cpp.

References atan2(), Attribute::getBase(), Attribute::getImage(), Attributes::getReal(), AttributeBase::isExpression(), Physics::pi, and sqrt().

Here is the call graph for this function:

void OpalElement::registerOwnership ( ) const
protected

Definition at line 701 of file OpalElement.cpp.

References AttributeHandler::addAttributeOwner(), COMMON, AttributeHandler::ELEMENT, Object::getOpalName(), Object::getParent(), Object::itsAttr, and itsSize.

Referenced by OpalBeamStripping::OpalBeamStripping(), OpalCavity::OpalCavity(), OpalCCollimator::OpalCCollimator(), OpalCyclotron::OpalCyclotron(), OpalCyclotronValley::OpalCyclotronValley(), OpalDegrader::OpalDegrader(), OpalDrift::OpalDrift(), OpalECollimator::OpalECollimator(), OpalFlexibleCollimator::OpalFlexibleCollimator(), OpalOffset::OpalGlobalCartesianOffset::OpalGlobalCartesianOffset(), OpalOffset::OpalGlobalCylindricalOffset::OpalGlobalCylindricalOffset(), OpalHKicker::OpalHKicker(), OpalKicker::OpalKicker(), OpalOffset::OpalLocalCartesianOffset::OpalLocalCartesianOffset(), OpalOffset::OpalLocalCylindricalOffset::OpalLocalCylindricalOffset(), OpalMonitor::OpalMonitor(), OpalMultipole::OpalMultipole(), OpalMultipoleT::OpalMultipoleT(), OpalMultipoleTCurvedConstRadius::OpalMultipoleTCurvedConstRadius(), OpalMultipoleTCurvedVarRadius::OpalMultipoleTCurvedVarRadius(), OpalMultipoleTStraight::OpalMultipoleTStraight(), OpalOctupole::OpalOctupole(), OpalParallelPlate::OpalParallelPlate(), OpalPatch::OpalPatch(), OpalPepperPot::OpalPepperPot(), OpalPolynomialTimeDependence::OpalPolynomialTimeDependence(), OpalProbe::OpalProbe(), OpalQuadrupole::OpalQuadrupole(), OpalRBend::OpalRBend(), OpalRBend3D::OpalRBend3D(), OpalRCollimator::OpalRCollimator(), OpalRingDefinition::OpalRingDefinition(), OpalSBend::OpalSBend(), OpalSBend3D::OpalSBend3D(), OpalScalingFFAMagnet::OpalScalingFFAMagnet(), OpalSeparator::OpalSeparator(), OpalSeptum::OpalSeptum(), OpalSextupole::OpalSextupole(), OpalSlit::OpalSlit(), OpalSolenoid::OpalSolenoid(), OpalSource::OpalSource(), OpalSplineTimeDependence::OpalSplineTimeDependence(), OpalSRot::OpalSRot(), OpalStripper::OpalStripper(), OpalTravelingWave::OpalTravelingWave(), OpalVariableRFCavity::OpalVariableRFCavity(), OpalVariableRFCavityFringeField::OpalVariableRFCavityFringeField(), OpalVerticalFFAMagnet::OpalVerticalFFAMagnet(), OpalVKicker::OpalVKicker(), OpalWire::OpalWire(), and OpalYRot::OpalYRot().

Here is the call graph for this function:

AttCell * OpalElement::registerRealAttribute ( const std::string &  name)
staticprotected

Register a ``real'' element attribute.

Definition at line 684 of file OpalElement.cpp.

References attributeRegistry, OwnPtr< Object >::isValid(), and name.

Referenced by OpalMultipole::fillRegisteredAttributes(), OpalOctupole::fillRegisteredAttributes(), OpalSextupole::fillRegisteredAttributes(), OpalQuadrupole::fillRegisteredAttributes(), OpalMultipoleTStraight::fillRegisteredAttributes(), OpalMultipoleT::fillRegisteredAttributes(), OpalMultipoleTCurvedConstRadius::fillRegisteredAttributes(), OpalMultipoleTCurvedVarRadius::fillRegisteredAttributes(), OpalBeamStripping::OpalBeamStripping(), OpalBend::OpalBend(), OpalCavity::OpalCavity(), OpalCCollimator::OpalCCollimator(), OpalCyclotron::OpalCyclotron(), OpalCyclotronValley::OpalCyclotronValley(), OpalDrift::OpalDrift(), OpalECollimator::OpalECollimator(), OpalElement(), OpalOffset::OpalGlobalCartesianOffset::OpalGlobalCartesianOffset(), OpalOffset::OpalGlobalCylindricalOffset::OpalGlobalCylindricalOffset(), OpalHKicker::OpalHKicker(), OpalKicker::OpalKicker(), OpalOffset::OpalLocalCartesianOffset::OpalLocalCartesianOffset(), OpalOffset::OpalLocalCylindricalOffset::OpalLocalCylindricalOffset(), OpalParallelPlate::OpalParallelPlate(), OpalPepperPot::OpalPepperPot(), OpalPolynomialTimeDependence::OpalPolynomialTimeDependence(), OpalProbe::OpalProbe(), OpalQuadrupole::OpalQuadrupole(), OpalRBend3D::OpalRBend3D(), OpalRCollimator::OpalRCollimator(), OpalRingDefinition::OpalRingDefinition(), OpalSBend3D::OpalSBend3D(), OpalScalingFFAMagnet::OpalScalingFFAMagnet(), OpalSeparator::OpalSeparator(), OpalSeptum::OpalSeptum(), OpalSlit::OpalSlit(), OpalSolenoid::OpalSolenoid(), OpalSplineTimeDependence::OpalSplineTimeDependence(), OpalSRot::OpalSRot(), OpalStripper::OpalStripper(), OpalTravelingWave::OpalTravelingWave(), OpalVariableRFCavity::OpalVariableRFCavity(), OpalVariableRFCavityFringeField::OpalVariableRFCavityFringeField(), OpalVerticalFFAMagnet::OpalVerticalFFAMagnet(), OpalVKicker::OpalVKicker(), OpalWire::OpalWire(), and OpalYRot::OpalYRot().

Here is the call graph for this function:

AttCell * OpalElement::registerStringAttribute ( const std::string &  name)
staticprotected
void OpalElement::setRegisteredAttribute ( const std::string &  name,
double  value 
)
static

Store a registered real attribute.

Definition at line 447 of file OpalElement.cpp.

References name.

Referenced by AttWriter::visitFlaggedElmPtr().

void OpalElement::setRegisteredAttribute ( const std::string &  name,
const std::string &  value 
)
static

Store a registered string attribute.

Definition at line 453 of file OpalElement.cpp.

References name.

void OpalElement::update ( )
virtual

Update the embedded CLASSIC element.

Reimplemented from Object.

Reimplemented in OpalCyclotron, OpalVariableRFCavityFringeField, OpalMultipoleT, OpalMultipoleTCurvedConstRadius, OpalMultipoleTCurvedVarRadius, OpalCavity, OpalVariableRFCavity, OpalMultipoleTStraight, OpalRingDefinition, OpalScalingFFAMagnet, OpalOffset::OpalLocalCartesianOffset, OpalOffset::OpalGlobalCartesianOffset, OpalOffset::OpalLocalCylindricalOffset, OpalTravelingWave, OpalOffset::OpalGlobalCylindricalOffset, OpalKicker, OpalPolynomialTimeDependence, OpalSBend3D, OpalSplineTimeDependence, OpalVKicker, OpalQuadrupole, OpalRBend3D, OpalStripper, OpalCCollimator, OpalMultipole, OpalOctupole, OpalParallelPlate, OpalPepperPot, OpalProbe, OpalSextupole, OpalPatch, OpalSeptum, OpalDrift, OpalFlexibleCollimator, OpalHKicker, OpalWire, OpalDegrader, OpalECollimator, OpalRCollimator, OpalSlit, OpalSolenoid, OpalCyclotronValley, OpalSeparator, OpalSRot, OpalYRot, OpalVerticalFFAMagnet, OpalBeamStripping, OpalRBend, OpalMonitor, OpalSBend, OpalMarker, OpalHMonitor, OpalInstrument, OpalVMonitor, and OpalSource.

Definition at line 564 of file OpalElement.cpp.

References Quaternion::conjugate(), cos(), DPHI, DPSI, DTHETA, DX, DY, DZ, ELEMEDGE, ElementBase::fixPosition(), getApert(), Element::getElement(), Attributes::getReal(), Attributes::getRealArray(), Object::itsAttr, ORIENTATION, ORIGIN, PHI, PSI, ElementBase::removeWrappers(), ElementBase::setAperture(), ElementBase::setCSTrafoGlobal2Local(), ElementBase::setElementPosition(), ElementBase::setMisalignment(), ElementBase::setRotationAboutZ(), sin(), THETA, X, Y, and Z.

Referenced by OpalSource::update(), OpalHMonitor::update(), OpalVMonitor::update(), OpalMonitor::update(), OpalSBend::update(), OpalBeamStripping::update(), OpalRBend::update(), OpalSeparator::update(), OpalCyclotronValley::update(), OpalSolenoid::update(), OpalDegrader::update(), OpalECollimator::update(), OpalRCollimator::update(), OpalSlit::update(), OpalFlexibleCollimator::update(), OpalHKicker::update(), OpalWire::update(), OpalDrift::update(), OpalSeptum::update(), OpalPatch::update(), OpalParallelPlate::update(), OpalOctupole::update(), OpalPepperPot::update(), OpalProbe::update(), OpalCCollimator::update(), OpalMultipole::update(), OpalSextupole::update(), OpalStripper::update(), OpalRBend3D::update(), OpalQuadrupole::update(), OpalVKicker::update(), OpalKicker::update(), OpalTravelingWave::update(), OpalMultipoleTStraight::update(), OpalVariableRFCavity::update(), OpalCavity::update(), OpalMultipoleTCurvedVarRadius::update(), OpalMultipoleT::update(), OpalMultipoleTCurvedConstRadius::update(), and OpalVariableRFCavityFringeField::update().

Here is the call graph for this function:

void OpalElement::updateUnknown ( ElementBase base)
virtual

Member Data Documentation

std::map< std::string, OwnPtr< AttCell > > OpalElement::attributeRegistry
staticprotected
int OpalElement::itsSize
private

Definition at line 182 of file OpalElement.h.

Referenced by registerOwnership(), and updateUnknown().


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