OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
OpalStripper.h
Go to the documentation of this file.
1 #ifndef OPAL_OpalStripper_HH
2 #define OPAL_OpalStripper_HH
3 
4 // ------------------------------------------------------------------------
5 // $RCSfile: OpalStripper.h,v $
6 // ------------------------------------------------------------------------
7 // $Revision: 1.1.1.1 $
8 // ------------------------------------------------------------------------
9 // Copyright: see Copyright.readme
10 // ------------------------------------------------------------------------
11 //
12 // Class: OpalStripper
13 //
14 // ------------------------------------------------------------------------
15 //
16 // $Date: 2011/07/08 08:21:00 $
17 // $Author: Jianjun Yang $
18 //
19 // ------------------------------------------------------------------------
20 
21 #include "Elements/OpalElement.h"
22 
23 // Class OpalStripper
24 // ------------------------------------------------------------------------
26 
27 
28 class OpalStripper: public OpalElement {
29 
30 public:
31 
33  enum {
34  XSTART = COMMON, // Start of x coordinate
35  XEND, // End of x coordinate
36  YSTART, // Start of y coordinate
37  YEND, // End of y coordinate
38  WIDTH, // Width of the probe
39  OPCHARGE, // Charge number of the outcome particle
40  OPMASS, // Mass of the outcome particle
43  OUTFN, // Output filename
45  };
46 
47  OpalStripper();
48 
49  virtual ~OpalStripper();
50 
52  virtual OpalStripper *clone(const std::string &name);
53 
55  virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag);
56 
58  virtual void update();
59 
60 private:
61 
62  // Not implemented.
63  OpalStripper(const OpalStripper &);
64  void operator=(const OpalStripper &);
65 
66  // Clone constructor.
67  OpalStripper(const std::string &name, OpalStripper *parent);
68 
69 };
70 
71 #endif // OPAL_OpalStripper_HH
Interface for basic beam line object.
Definition: ElementBase.h:128
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
ValueFlag
Switch for value desired on ATTLIST command.
Definition: OpalElement.h:71
void operator=(const OpalStripper &)
Base class for all beam line elements.
Definition: OpalElement.h:41
virtual OpalStripper * clone(const std::string &name)
Make clone.
virtual ~OpalStripper()
The Stripper element.
Definition: OpalStripper.h:28
const std::string name
virtual void update()
Update the embedded CLASSIC septum.