OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
AbstractTracker.h
Go to the documentation of this file.
1#ifndef CLASSIC_AbstractTracker_HH
2#define CLASSIC_AbstractTracker_HH
3
4// ------------------------------------------------------------------------
5// $RCSfile: AbstractTracker.h,v $
6// ------------------------------------------------------------------------
7// $Revision: 1.1.1.1.2.1 $
8// ------------------------------------------------------------------------
9// Copyright: see Copyright.readme
10// ------------------------------------------------------------------------
11//
12// Class: AbstractTracker
13//
14// ------------------------------------------------------------------------
15// Class category: Algorithms
16// ------------------------------------------------------------------------
17//
18// $Date: 2004/11/12 18:57:53 $
19// $Author: adelmann $
20//
21// ------------------------------------------------------------------------
22
24#include "Algorithms/PartData.h"
25
26// Class AbstractTracker
27// ------------------------------------------------------------------------
29// An abstract base class for all visitors capable of tracking particles
30// through a beam element.
31// This class redefines all visitXXX() methods for elements as pure
32// to force their implementation in derived classes.
33
35
36public:
37
38 // Particle coordinate numbers.
39 enum { X, PX, Y, PY, T, PT };
40
42 // The beam line to be tracked is [b]bl[/b].
43 // The particle reference data are taken from [b]data[/b].
44 // If [b]revBeam[/b] is true, the beam runs from s = C to s = 0.
45 // If [b]revTrack[/b] is true, we track against the beam.
46 AbstractTracker(const Beamline &, const PartData &,
47 bool backBeam, bool backTrack);
48
49 virtual ~AbstractTracker();
50
51protected:
52
55
56private:
57
58 // Not implemented.
62};
63
64#endif // CLASSIC_AbstractTracker_HH
Track particles or bunches.
void operator=(const AbstractTracker &)
const PartData itsReference
The reference information.
virtual ~AbstractTracker()
AbstractTracker(const AbstractTracker &)
Particle reference data.
Definition: PartData.h:35
An abstract sequence of beam line components.
Definition: Beamline.h:34