OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
OpalVKicker.h
Go to the documentation of this file.
1 #ifndef OPAL_OpalVKicker_HH
2 #define OPAL_OpalVKicker_HH
3 
4 // ------------------------------------------------------------------------
5 // $RCSfile: OpalVKicker.h,v $
6 // ------------------------------------------------------------------------
7 // $Revision: 1.2 $
8 // ------------------------------------------------------------------------
9 // Copyright: see Copyright.readme
10 // ------------------------------------------------------------------------
11 //
12 // Class: OpalVKicker
13 //
14 // ------------------------------------------------------------------------
15 //
16 // $Date: 2001/08/13 15:32:24 $
17 // $Author: jowett $
18 //
19 // ------------------------------------------------------------------------
20 
21 #include "Elements/OpalElement.h"
22 
23 
24 // Class OpalVKicker
25 // ------------------------------------------------------------------------
27 // Note the sign convention: A positive kick bend particles to positive y.
28 
29 class OpalVKicker: public OpalElement {
30 
31 public:
32 
34  enum {
35  KICK = COMMON, // The kicker strength.
36  DESIGNENERGY, // The mean kinetic energy at exit
37  K0, // The magnetic field
39  };
40 
42  OpalVKicker();
43 
44  virtual ~OpalVKicker();
45 
47  virtual OpalVKicker *clone(const std::string &name);
48 
49 
50  // JMJ 18/12/2000 Following method not needed, commented out, delete after next CVS commit.
51  //BEGIN JMJ 15/12/2000, adding missing print method
52  // Print the kicker
53  // Handle printing in OPAL-8 format.
54  // virtual void print(std::ostream &) const;
55  //END JMJ 15/12/2000, adding missing print method
56 
58  virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag);
59 
61  virtual void update();
62 
63 private:
64 
65  // Not implemented.
66  OpalVKicker(const OpalVKicker &);
67  void operator=(const OpalVKicker &);
68 
69  // Clone constructor.
70  OpalVKicker(const std::string &name, OpalVKicker *parent);
71 };
72 
73 #endif // OPAL_OpalVKicker_HH
OpalVKicker()
Exemplar constructor.
Definition: OpalVKicker.cpp:31
Interface for basic beam line object.
Definition: ElementBase.h:128
ValueFlag
Switch for value desired on ATTLIST command.
Definition: OpalElement.h:71
Base class for all beam line elements.
Definition: OpalElement.h:41
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
Definition: OpalVKicker.cpp:68
void operator=(const OpalVKicker &)
const std::string name
virtual void update()
Update the embedded CLASSIC corrector.
Definition: OpalVKicker.cpp:95
virtual OpalVKicker * clone(const std::string &name)
Make clone.
Definition: OpalVKicker.cpp:62
The VKICKER element.
Definition: OpalVKicker.h:29
virtual ~OpalVKicker()
Definition: OpalVKicker.cpp:58