CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
OptOCOPS.h
Go to the documentation of this file.
1 // COCOA class header file
2 //Id: OptOCOPS.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 _OptOCOPS_hh
11 #define _OptOCOPS_hh
12 
15 class Measurement;
16 class LightRay;
19 
20 class OptOCOPS: public OpticalObject
21 {
22 
23 public:
24  //---------- Constructors / Destructor
25  OptOCOPS(){ };
26  OptOCOPS(OpticalObject* parent, const ALIstring& type, const ALIstring& name, const ALIbool copy_data) :
27  OpticalObject( parent, type, name, copy_data), fdevi_from_file(0){ };
28  ~OptOCOPS(){ };
29 
30  //---------- defaultBehaviour: make measurement
31  virtual void defaultBehaviour( LightRay& lightray, Measurement& meas );
32  //---------- Make measurement
33  virtual void makeMeasurement( LightRay& lightray, Measurement& meas );
34  //---------- Fast simulation of the light ray traversing
35  virtual void fastTraversesLightRay( LightRay& lightray );
36 
37  // Get intersection in local coordinates
38  ALIdouble* convertPointToLocalCoordinates( const CLHEP::Hep3Vector& point);
39 
40 #ifdef COCOA_VIS
41  virtual void fillVRML();
42  virtual void fillIguana();
43 #endif
44  void constructSolidShape();
45 
46  private:
47  ALIdouble getMeasFromInters( ALILine& line_xhair, ALILine& ccd, CLHEP::Hep3Vector& cops_line );
48  // Deviation values read from file
52 };
53 
54 #endif
type
Definition: HCALResponse.h:22
long double ALIdouble
Definition: CocoaGlobals.h:11
DeviationsFromFileSensor2D * deviFromFile
Definition: OptOCOPS.h:49
virtual void defaultBehaviour(LightRay &lightray, Measurement &meas)
Definition: OptOCOPS.cc:32
virtual void makeMeasurement(LightRay &lightray, Measurement &meas)
Definition: OptOCOPS.cc:42
virtual void fillVRML()
Definition: OpticalObject.h:55
OptOCOPS(OpticalObject *parent, const ALIstring &type, const ALIstring &name, const ALIbool copy_data)
Definition: OptOCOPS.h:26
bool ALIbool
Definition: CocoaGlobals.h:19
ALIdouble * convertPointToLocalCoordinates(const CLHEP::Hep3Vector &point)
Definition: OptOCOPS.cc:364
const OpticalObject * parent() const
Definition: OpticalObject.h:62
ALILine ccds[4]
Definition: OptOCOPS.h:51
~OptOCOPS()
Definition: OptOCOPS.h:28
void constructSolidShape()
Definition: OptOCOPS.cc:501
virtual void fillIguana()
Definition: OpticalObject.h:56
Measurement * meas()
ALIbool fdevi_from_file
Definition: OptOCOPS.h:50
std::string ALIstring
Definition: CocoaGlobals.h:9
ALIdouble getMeasFromInters(ALILine &line_xhair, ALILine &ccd, CLHEP::Hep3Vector &cops_line)
Definition: OptOCOPS.cc:393
const ALIstring & name() const
Definition: OpticalObject.h:60
*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
virtual void fastTraversesLightRay(LightRay &lightray)
Definition: OptOCOPS.cc:342
OptOCOPS()
Definition: OptOCOPS.h:25