Fork me on GitHub

source: svn/trunk/Utilities/Hector/include/H_RomanPot.h@ 873

Last change on this file since 873 was 281, checked in by Xavier Rouby, 16 years ago

new Hector version

File size: 1.7 KB
Line 
1#ifndef _H_RomanPot_
2#define _H_RomanPot_
3
4 /* * * * * * * * * * * * * * * * * * * * * * * * * * * *
5 * *
6* --<--<-- A fast simulator --<--<-- *
7* / --<--<-- of particle --<--<-- *
8* ----HECTOR----< *
9* \ -->-->-- transport through -->-->-- *
10* -->-->-- generic beamlines -->-->-- *
11* *
12* JINST 2:P09005 (2007) *
13* X Rouby, J de Favereau, K Piotrzkowski (CP3) *
14* http://www.fynu.ucl.ac.be/hector.html *
15* *
16* Center for Cosmology, Particle Physics and Phenomenology *
17* Universite catholique de Louvain *
18* Louvain-la-Neuve, Belgium *
19 * *
20 * * * * * * * * * * * * * * * * * * * * * * * * * * * */
21
22/// \file H_RomanPot.h
23/// \brief Roman pot class
24
25// local #includes
26#include "H_Drift.h"
27
28#define RP_LENGTH 0.0001
29#define RP_HEIGHT 10000
30/// Roman pot as an optics element.
31class H_RomanPot : public H_Drift {
32
33 public:
34 /// Constructors and destructor
35 //@{
36 H_RomanPot():H_Drift() {type = RP; init();}
37 H_RomanPot(const string&, const double, const double);
38 H_RomanPot(const double, const double);
39 ~H_RomanPot() {};
40 //@}
41 H_RomanPot* clone() const ;
42 void init();
43 private:
44 virtual void setTypeString() {typestring=RPNAME;};
45 virtual void setMatrix(const float, const float, const float) ;
46 friend std::ostream& operator<< (std::ostream& os, const H_RomanPot& el);
47};
48
49#endif
Note: See TracBrowser for help on using the repository browser.