CMS 3D CMS Logo

OptOSensor2D.h
Go to the documentation of this file.
1 // COCOA class header file
2 //Id: OptOSensor2D.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 _OPTOSENSOR2D_HH
11 #define _OPTOSENSOR2D_HH
12 
15 class Measurement;
16 class LightRay;
18 
20 {
21 
22 public:
23  //---------- Constructors / Destructor
25  OptOSensor2D(OpticalObject* parent, const ALIstring& type, const ALIstring& name, const ALIbool copy_data) :
26  OpticalObject( parent, type, name, copy_data), fdevi_from_file(0){ };
28 
29  //---------- defaultBehaviour: make measurement
30  virtual void defaultBehaviour( LightRay& lightray, Measurement& meas );
31  //---------- Make measurement
32  virtual void makeMeasurement( LightRay& lightray, Measurement& meas );
33  //---------- Fast simulation of the light ray traversing
34  virtual void fastTraversesLightRay( LightRay& lightray );
35  //---------- Detailed simulation of the light ray traversing
36  virtual void detailedTraversesLightRay( LightRay& lightray );
37 
38  // Create and fill an extra entry, checking if it has to be read from file
39  virtual void fillExtraEntry( std::vector<ALIstring>& wordlist );
40 
41  // Get intersection in local coordinates
42  ALIdouble* convertPointToLocalCoordinates( const CLHEP::Hep3Vector& point);
43 
44 #ifdef COCOA_VIS
45  virtual void fillVRML();
46  virtual void fillIguana();
47 #endif
48  void constructSolidShape();
49 
50  private:
51  // Deviation values read from file
54 };
55 
56 #endif
type
Definition: HCALResponse.h:21
long double ALIdouble
Definition: CocoaGlobals.h:11
virtual void fillExtraEntry(std::vector< ALIstring > &wordlist)
virtual void fillVRML()
Definition: OpticalObject.h:55
virtual void makeMeasurement(LightRay &lightray, Measurement &meas)
Definition: OptOSensor2D.cc:43
bool ALIbool
Definition: CocoaGlobals.h:19
DeviationsFromFileSensor2D * deviFromFile
Definition: OptOSensor2D.h:52
virtual void fastTraversesLightRay(LightRay &lightray)
const OpticalObject * parent() const
Definition: OpticalObject.h:62
virtual void defaultBehaviour(LightRay &lightray, Measurement &meas)
Definition: OptOSensor2D.cc:34
ALIbool fdevi_from_file
Definition: OptOSensor2D.h:53
OptOSensor2D(OpticalObject *parent, const ALIstring &type, const ALIstring &name, const ALIbool copy_data)
Definition: OptOSensor2D.h:25
virtual void fillIguana()
Definition: OpticalObject.h:56
Measurement * meas()
std::string ALIstring
Definition: CocoaGlobals.h:9
const ALIstring & name() const
Definition: OpticalObject.h:60
virtual void detailedTraversesLightRay(LightRay &lightray)
ALIdouble * convertPointToLocalCoordinates(const CLHEP::Hep3Vector &point)
void constructSolidShape()
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5