37 namespace OpalOffset {
40 std::string(
"The \"LOCAL_CYLINDRICAL_OFFSET\" element defines an offset")+
41 std::string(
"in cylindrical coordinates, relative to the last placed ")+
42 std::string(
"element. All angles are defined in the midplane.");
46 "GLOBAL_CYLINDRICAL_OFFSET",
49 "Angle between the previous element and the displacement vector.");
51 "Angle between the displacement vector and the next element.");
53 "Length of the offset.");
Interface for basic beam line object.
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
ValueFlag
Switch for value desired on ATTLIST command.
void fillRegisteredAttributes(const ElementBase &base, ValueFlag flag)
std::vector< Attribute > itsAttr
The object attributes (see Attribute.hh).
static Offset globalCylindricalOffset(std::string name, double radius_out, double phi_out, double theta_out)
virtual ~OpalGlobalCylindricalOffset()
const std::string & getOpalName() const
Return object name.
OpalGlobalCylindricalOffset()
Base class for all beam line elements.
void setElement(ElementBase *)
Assign new CLASSIC element.
void registerOwnership() const
virtual void print(std::ostream &) const
static const std::string doc_string
virtual OpalGlobalCylindricalOffset * clone(const std::string &name)
virtual ElementBase * makeAlignWrapper()
Allow misalignment.
double getReal(const Attribute &attr)
Return real value.
Attribute makeReal(const std::string &name, const std::string &help)
Make real attribute.
static AttCell * registerRealAttribute(const std::string &name)
Register a ``real'' element attribute.
virtual void print(std::ostream &) const
Print the object.