CMS 3D CMS Logo

OptOLens.h
Go to the documentation of this file.
1 // COCOA class header file
2 //Id: OptOLens.h
3 //CAT: Model
4 //
5 // Base class to describe Optical Objects of type sensor 2D
6 //
7 // History: v1.0
8 // Pedro Arce
9 
10 #ifndef _OPTOLENS_HH
11 #define _OPTOLENS_HH
12 
15 class Measurement;
16 class LightRay;
17 
18 class OptOLens: public OpticalObject
19 {
20 
21 public:
22  //---------- Constructors / Destructor
23  OptOLens();
24  OptOLens(OpticalObject* parent, const ALIstring& type, const ALIstring& name, const ALIbool copy_data) :
25  OpticalObject( parent, type, name, copy_data){ };
26  ~OptOLens() override{ };
27 
28  //---------- Propagate light for measurement meas
29  void participateInMeasurement( LightRay& lightray, Measurement& meas, const ALIstring& behav ) override;
30 
31 #ifdef COCOA_VIS
32  virtual void fillIguana();
33 #endif
34  void constructSolidShape() override;
35 
36 };
37 
38 #endif
39 
type
Definition: HCALResponse.h:21
void constructSolidShape() override
Definition: OptOLens.cc:50
~OptOLens() override
Definition: OptOLens.h:26
bool ALIbool
Definition: CocoaGlobals.h:19
const OpticalObject * parent() const
Definition: OpticalObject.h:62
OptOLens()
Definition: OptOLens.cc:21
void participateInMeasurement(LightRay &lightray, Measurement &meas, const ALIstring &behav) override
Definition: OptOLens.cc:28
virtual void fillIguana()
Definition: OpticalObject.h:56
Measurement * meas()
OptOLens(OpticalObject *parent, const ALIstring &type, const ALIstring &name, const ALIbool copy_data)
Definition: OptOLens.h:24
std::string ALIstring
Definition: CocoaGlobals.h:9
const ALIstring & name() const
Definition: OpticalObject.h:60