OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
OpalDrift.h
Go to the documentation of this file.
1 #ifndef OPAL_OpalDrift_HH
2 #define OPAL_OpalDrift_HH
3 
4 // ------------------------------------------------------------------------
5 // $RCSfile: OpalDrift.h,v $
6 // ------------------------------------------------------------------------
7 // $Revision: 1.1.1.1 $
8 // ------------------------------------------------------------------------
9 // Copyright: see Copyright.readme
10 // ------------------------------------------------------------------------
11 //
12 // Class: OpalDrift
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 class BoundaryGeometry;
24 
25 // Class OpalDrift
26 // ------------------------------------------------------------------------
28 
29 class OpalWake;
31 
32 class OpalDrift: public OpalElement {
33 
34 public:
35 
36  enum {
37  GEOMETRY = COMMON, // geometry of boundary, one more enum member besides the common ones in OpalElement.
38  NSLICES, // The number of slices / steps per element for map tracking
40  };
42  OpalDrift();
43 
44  virtual ~OpalDrift();
45 
47  virtual OpalDrift *clone(const std::string &name);
48 
50  // Return true.
51  virtual bool isDrift() const;
52 
54  virtual void update();
55 
56 private:
57 
58  // Not implemented.
59  OpalDrift(const OpalDrift &);
60  void operator=(const OpalDrift &);
61 
62  // Clone constructor.
63  OpalDrift(const std::string &name, OpalDrift *parent);
64 
68 };
69 
70 #endif // OPAL_OpalDrift_HH
virtual bool isDrift() const
Test for drift.
Definition: OpalDrift.cpp:82
virtual OpalDrift * clone(const std::string &name)
Make clone.
Definition: OpalDrift.cpp:77
virtual ~OpalDrift()
Definition: OpalDrift.cpp:67
ParticleMatterInteraction * parmatint_m
Definition: OpalDrift.h:66
The WAKE definition.
Definition: OpalWake.h:34
virtual void update()
Update the embedded CLASSIC drift.
Definition: OpalDrift.cpp:87
OpalDrift()
Exemplar constructor.
Definition: OpalDrift.cpp:29
Base class for all beam line elements.
Definition: OpalElement.h:41
BoundaryGeometry * obgeo_m
Definition: OpalDrift.h:67
const std::string name
OpalWake * owk_m
Definition: OpalDrift.h:65
void operator=(const OpalDrift &)