OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Marker.cpp
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2// $RCSfile: Marker.cpp,v $
3// ------------------------------------------------------------------------
4// $Revision: 1.1.1.1 $
5// ------------------------------------------------------------------------
6// Copyright: see Copyright.readme
7// ------------------------------------------------------------------------
8//
9// Class: Marker
10// Defines the abstract interface for a marker element.
11//
12// ------------------------------------------------------------------------
13// Class category: AbsBeamline
14// ------------------------------------------------------------------------
15//
16// $Date: 2000/03/27 09:32:31 $
17// $Author: fci $
18//
19// ------------------------------------------------------------------------
20
21#include "AbsBeamline/Marker.h"
23
24
25// Class Marker
26// ------------------------------------------------------------------------
27
28
30 Component()
31{ }
32
33
34Marker::Marker(const Marker &right):
35 Component(right)
36{ }
37
38
39Marker::Marker(const std::string &name):
41{ }
42
43
45{ }
46
47
48void Marker::accept(BeamlineVisitor &visitor) const {
49 visitor.visitMarker(*this);
50}
51
52void Marker::initialise(PartBunchBase<double, 3> *bunch, double &/*startField*/, double &/*endField*/) {
53 RefPartBunch_m = bunch;
54}
55
57{ }
58
59bool Marker::bends() const {
60 return false;
61}
62
63
64void Marker::getDimensions(double &/*zBegin*/, double &/*zEnd*/) const {
65}
66
69}
70
ElementType
Definition: ElementBase.h:88
const std::string name
virtual void visitMarker(const Marker &)=0
Apply the algorithm to a marker.
Interface for a single beam element.
Definition: Component.h:50
PartBunchBase< double, 3 > * RefPartBunch_m
Definition: Component.h:191
Interface for a marker.
Definition: Marker.h:32
virtual bool bends() const override
Definition: Marker.cpp:59
virtual void initialise(PartBunchBase< double, 3 > *bunch, double &startField, double &endField) override
Definition: Marker.cpp:52
virtual void finalise() override
Definition: Marker.cpp:56
virtual ElementType getType() const override
Get element type std::string.
Definition: Marker.cpp:67
virtual void getDimensions(double &zBegin, double &zEnd) const override
Definition: Marker.cpp:64
virtual void accept(BeamlineVisitor &) const override
Apply visitor to Marker.
Definition: Marker.cpp:48
Marker()
Definition: Marker.cpp:29
virtual ~Marker()
Definition: Marker.cpp:44