OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
OpalHKicker.h
Go to the documentation of this file.
1 #ifndef OPAL_OpalHKicker_HH
2 #define OPAL_OpalHKicker_HH
3 
4 // ------------------------------------------------------------------------
5 // $RCSfile: OpalHKicker.h,v $
6 // ------------------------------------------------------------------------
7 // $Revision: 1.1.1.1 $
8 // ------------------------------------------------------------------------
9 // Copyright: see Copyright.readme
10 // ------------------------------------------------------------------------
11 //
12 // Class: OpalHKicker
13 //
14 // ------------------------------------------------------------------------
15 //
16 // $Date: 2000/03/27 09:33:39 $
17 // $Author: Andreas Adelmann $
18 //
19 // ------------------------------------------------------------------------
20 
21 #include "Elements/OpalElement.h"
22 
23 
24 // Class OpalHKicker
25 // ------------------------------------------------------------------------
27 // Note the sign convention: A positive kick bend particles to positive x.
28 
29 
30 class OpalHKicker: public OpalElement {
31 
32 public:
33 
35  enum {
36  KICK = COMMON, // The kicker strength.
37  DESIGNENERGY, // The mean kinetic energy at exit
38  K0, // The magnetic field
40  };
41 
43  OpalHKicker();
44 
45  virtual ~OpalHKicker();
46 
48  virtual OpalHKicker *clone(const std::string &name);
49 
51  virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag);
52 
54  virtual void update();
55 
56 private:
57 
58  // Not implemented.
59  OpalHKicker(const OpalHKicker &);
60  void operator=(const OpalHKicker &);
61 
62  // Clone constructor.
63  OpalHKicker(const std::string &name, OpalHKicker *parent);
64 };
65 
66 #endif // OPAL_OpalHKicker_HH
Interface for basic beam line object.
Definition: ElementBase.h:128
ValueFlag
Switch for value desired on ATTLIST command.
Definition: OpalElement.h:71
The HKICKER element.
Definition: OpalHKicker.h:30
Base class for all beam line elements.
Definition: OpalElement.h:41
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
Definition: OpalHKicker.cpp:68
virtual OpalHKicker * clone(const std::string &name)
Make clone.
Definition: OpalHKicker.cpp:62
virtual void update()
Update the embedded CLASSIC corrector.
Definition: OpalHKicker.cpp:88
void operator=(const OpalHKicker &)
const std::string name
virtual ~OpalHKicker()
Definition: OpalHKicker.cpp:58
OpalHKicker()
Exemplar constructor.
Definition: OpalHKicker.cpp:31