OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
OpalSlit.h
Go to the documentation of this file.
1 #ifndef OPAL_OpalSlit_HH
2 #define OPAL_OpalSlit_HH
3 
4 // ------------------------------------------------------------------------
5 // $RCSfile: OpalSlit.h,v $
6 // ------------------------------------------------------------------------
7 // $Revision: 1.1.1.1 $
8 // ------------------------------------------------------------------------
9 // Copyright: see Copyright.readme
10 // ------------------------------------------------------------------------
11 //
12 // Class: OpalSlit
13 //
14 // ------------------------------------------------------------------------
15 //
16 // $Date: 2000/03/27 09:33:39 $
17 // $Author: Andreas Adelmann $
18 //
19 // ------------------------------------------------------------------------
20 
21 #include "Elements/OpalElement.h"
22 
24 
25 // Class OpalSlit
26 // ------------------------------------------------------------------------
28 
29 class OpalSlit: public OpalElement {
30 
31 public:
32 
34  enum {
35  XSIZE = COMMON, // The horizontal half-size.
36  YSIZE, // The vertical half-size.
39  };
40 
42  OpalSlit();
43 
44  virtual ~OpalSlit();
45 
47  virtual OpalSlit *clone(const std::string &name);
48 
50  virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag);
51 
53  virtual void update();
54 
55 private:
56 
57  // Not implemented.
58  OpalSlit(const OpalSlit &);
59  void operator=(const OpalSlit &);
60 
61  // Clone constructor.
62  OpalSlit(const std::string &name, OpalSlit *parent);
63 
65 };
66 
67 #endif // OPAL_OpalSlit_HH
ParticleMatterInteraction * parmatint_m
Definition: OpalSlit.h:64
Interface for basic beam line object.
Definition: ElementBase.h:128
ValueFlag
Switch for value desired on ATTLIST command.
Definition: OpalElement.h:71
OpalSlit()
Exemplar constructor.
Definition: OpalSlit.cpp:30
void operator=(const OpalSlit &)
virtual void update()
Update the embedded CLASSIC collimator.
Definition: OpalSlit.cpp:91
virtual ~OpalSlit()
Definition: OpalSlit.cpp:59
Base class for all beam line elements.
Definition: OpalElement.h:41
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
Definition: OpalSlit.cpp:70
The ECOLLIMATOR element.
Definition: OpalSlit.h:29
const std::string name
virtual OpalSlit * clone(const std::string &name)
Make clone.
Definition: OpalSlit.cpp:65