OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
OpalSextupole.h
Go to the documentation of this file.
1 #ifndef OPAL_OpalSextupole_HH
2 #define OPAL_OpalSextupole_HH
3 
4 // ------------------------------------------------------------------------
5 // $RCSfile: OpalSextupole.h,v $
6 // ------------------------------------------------------------------------
7 // $Revision: 1.1.1.1 $
8 // ------------------------------------------------------------------------
9 // Copyright: see Copyright.readme
10 // ------------------------------------------------------------------------
11 //
12 // Class: OpalSextupole
13 //
14 // ------------------------------------------------------------------------
15 //
16 // $Date: 2000/03/27 09:33:40 $
17 // $Author: Andreas Adelmann $
18 //
19 // ------------------------------------------------------------------------
20 
21 #include "Elements/OpalElement.h"
22 
23 
24 // Class OpalSextupole
25 // ------------------------------------------------------------------------
27 
28 class OpalSextupole: public OpalElement {
29 
30 public:
31 
33  enum {
34  K2 = COMMON, // The normal sextupole strength.
35  DK2, // The normal sextupole strength error.
36  K2S, // The skew sextupole strength.
37  DK2S, // The skew sextupole strength error.
39  };
40 
42  OpalSextupole();
43 
44  virtual ~OpalSextupole();
45 
47  virtual OpalSextupole *clone(const std::string &name);
48 
50  // Handle printing in OPAL-8 format.
51  virtual void print(std::ostream &) const;
52 
54  virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag);
55 
57  virtual void update();
58 
59 private:
60 
61  // Not implemented.
63  void operator=(const OpalSextupole &);
64 
65  // Clone constructor.
66  OpalSextupole(const std::string &name, OpalSextupole *parent);
67 };
68 
69 #endif // OPAL_OpalSextupole_HH
virtual ~OpalSextupole()
Interface for basic beam line object.
Definition: ElementBase.h:128
ValueFlag
Switch for value desired on ATTLIST command.
Definition: OpalElement.h:71
void operator=(const OpalSextupole &)
virtual void print(std::ostream &) const
Print the sextupole.
The SEXTUPOLE element.
Definition: OpalSextupole.h:28
OpalSextupole()
Exemplar constructor.
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
Base class for all beam line elements.
Definition: OpalElement.h:41
virtual void update()
Update the embedded CLASSIC multipole.
const std::string name
virtual OpalSextupole * clone(const std::string &name)
Make clone.