OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
OpalProbe.h
Go to the documentation of this file.
1 #ifndef OPAL_OpalProbe_HH
2 #define OPAL_OpalProbe_HH
3 
4 // ------------------------------------------------------------------------
5 // $RCSfile: OpalProbe.h,v $
6 // ------------------------------------------------------------------------
7 // $Revision: 1.1.1.1 $
8 // ------------------------------------------------------------------------
9 // Copyright: see Copyright.readme
10 // ------------------------------------------------------------------------
11 //
12 // Class: OpalProbe
13 //
14 // ------------------------------------------------------------------------
15 //
16 // $Date: 2009/10/07 10:08:06 $
17 // $Author: bi $
18 //
19 // ------------------------------------------------------------------------
20 
21 #include "Elements/OpalElement.h"
22 
23 class OpalWake;
24 
25 // Class OpalProbe
26 // ------------------------------------------------------------------------
28 
29 
30 class OpalProbe: public OpalElement {
31 
32 public:
33 
35  enum {
36  XSTART = COMMON, // Start of x coordinate
37  XEND, // End of x coordinate
38  YSTART, // Start of y coordinate
39  YEND, // End of y coordinate
40  WIDTH, // Width of the probe
41  STEP, // Step size of the probe
42  OUTFN, // Output filename
44  };
46  OpalProbe();
47 
48  virtual ~OpalProbe();
49 
51  virtual OpalProbe *clone(const std::string &name);
52 
54  virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag);
55 
57  virtual void update();
58 
59 private:
60 
61  // Not implemented.
62  OpalProbe(const OpalProbe &);
63  void operator=(const OpalProbe &);
64 
65  // Clone constructor.
66  OpalProbe(const std::string &name, OpalProbe *parent);
67 
69 };
70 
71 #endif // OPAL_OpalProbe_HH
Interface for basic beam line object.
Definition: ElementBase.h:128
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
Definition: OpalProbe.cpp:81
ValueFlag
Switch for value desired on ATTLIST command.
Definition: OpalElement.h:71
OpalWake * owk_m
Definition: OpalProbe.h:68
virtual OpalProbe * clone(const std::string &name)
Make clone.
Definition: OpalProbe.cpp:76
The Probe element.
Definition: OpalProbe.h:30
The WAKE definition.
Definition: OpalWake.h:34
virtual void update()
Update the embedded CLASSIC probe.
Definition: OpalProbe.cpp:86
virtual ~OpalProbe()
Definition: OpalProbe.cpp:71
Base class for all beam line elements.
Definition: OpalElement.h:41
void operator=(const OpalProbe &)
const std::string name
OpalProbe()
Exemplar constructor.
Definition: OpalProbe.cpp:30