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 "LOCAL_CYLINDRICAL_OFFSET",
49 "Angle between the previous element and the displacement vector [rad].");
51 "Angle between the displacement vector and the next element [rad].");
Interface for basic beam line object.
void fillRegisteredAttributes(const ElementBase &base, ValueFlag flag)
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
static Offset localCylindricalOffset(std::string name, double theta_in, double theta_out, double displacement)
ValueFlag
Switch for value desired on ATTLIST command.
static const std::string doc_string
std::vector< Attribute > itsAttr
The object attributes (see Attribute.hh).
const std::string & getOpalName() const
Return object name.
Base class for all beam line elements.
void setElement(ElementBase *)
Assign new CLASSIC element.
virtual void print(std::ostream &) const
void registerOwnership() const
virtual ~OpalLocalCylindricalOffset()
virtual ElementBase * makeAlignWrapper()
Allow misalignment.
virtual OpalLocalCylindricalOffset * clone(const std::string &name)
OpalLocalCylindricalOffset()
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.