5#ifndef FORWARDTRACKER_IBEAMELEMENT_H
6#define FORWARDTRACKER_IBEAMELEMENT_H
28 virtual std::string
label()
const = 0;
37 virtual std::shared_ptr<const IBeamElement>
clone()
const = 0;
41 typedef Container_t::iterator
Iter_t;
43 typedef std::list<ConstPtr_t>
List_t;
47 virtual std::string
str()
const = 0;
virtual std::string label() const =0
virtual double frontFace() const =0
List_t::const_iterator ConstListIter_t
virtual std::string str() const =0
virtual Point position() const =0
virtual std::shared_ptr< const IBeamElement > clone() const =0
List_t::iterator ListIter_t
virtual bool isEndElement() const =0
std::shared_ptr< const IBeamElement > ConstPtr_t
Container_t::const_iterator ConstIter_t
std::vector< ConstPtr_t > Container_t
virtual double rearFace() const =0
std::list< ConstPtr_t > List_t
Container_t::iterator Iter_t
virtual Side side() const =0
virtual void track(IParticle &) const =0
std::ostream & operator<<(std::ostream &, const Beamline &)