#ifndef _H_RomanPot_ #define _H_RomanPot_ /// \file H_RomanPot.h /// \brief Roman pot class /* ---- Hector the simulator ---- A fast simulator of particles through generic beamlines. J. de Favereau, X. Rouby ~~~ hector_devel@cp3.phys.ucl.ac.be http://www.fynu.ucl.ac.be/hector.html Centre de Physique des Particules et de Phénoménologie (CP3) Université Catholique de Louvain (UCL) */ // local #includes #include "H_Drift.h" #define RP_LENGTH 0.0001 #define RP_HEIGHT 10000 /// Roman pot as an optics element. class H_RomanPot : public H_Drift { public: /// Constructors and destructor //@{ H_RomanPot():H_Drift() {type = RP; init();} H_RomanPot(const string, const double, const double); H_RomanPot(const double, const double); ~H_RomanPot() { return; }; //@} virtual void printProperties() const; H_RomanPot* clone() const ; void init(); private: virtual void setTypeString() {typestring=RPNAME;}; virtual void setMatrix(const float, const float, const float) ; }; #endif