CMS 3D CMS Logo

OptODistancemeter3dim Class Reference

#include <Alignment/CocoaModel/interface/OptODistancemeter3dim.h>

Inheritance diagram for OptODistancemeter3dim:

OpticalObject

List of all members.

Public Member Functions

void constructSolidShape ()
virtual void defaultBehaviour (LightRay &lightray, Measurement &meas)
virtual void makeMeasurement (LightRay &lightray, Measurement &meas)
 OptODistancemeter3dim (OpticalObject *parent, const ALIstring &type, const ALIstring &name, const ALIbool copy_data)
 OptODistancemeter3dim ()
 ~OptODistancemeter3dim ()


Detailed Description

Definition at line 18 of file OptODistancemeter3dim.h.


Constructor & Destructor Documentation

OptODistancemeter3dim::OptODistancemeter3dim (  )  [inline]

Definition at line 23 of file OptODistancemeter3dim.h.

00023 { };

OptODistancemeter3dim::OptODistancemeter3dim ( OpticalObject parent,
const ALIstring type,
const ALIstring name,
const ALIbool  copy_data 
) [inline]

Definition at line 24 of file OptODistancemeter3dim.h.

00024                                                                                                                       : 
00025   OpticalObject( parent, type, name, copy_data){ };

OptODistancemeter3dim::~OptODistancemeter3dim (  )  [inline]

Definition at line 26 of file OptODistancemeter3dim.h.

00026 { };


Member Function Documentation

void OptODistancemeter3dim::constructSolidShape (  )  [virtual]

Reimplemented from OpticalObject.

Definition at line 84 of file OptODistancemeter3dim.cc.

References GlobalOptionMgr::getGlobalOptionValue(), GlobalOptionMgr::getInstance(), m, and OpticalObject::theSolidShape.

00085 {
00086   ALIdouble go;
00087   GlobalOptionMgr* gomgr = GlobalOptionMgr::getInstance();
00088   gomgr->getGlobalOptionValue("VisScale", go );
00089 
00090   theSolidShape = new CocoaSolidShapeTubs( "Tubs", go*0.*cm/m, go*2.*cm/m, go*5.*cm/m ); //COCOA internal units are meters
00091 }

void OptODistancemeter3dim::defaultBehaviour ( LightRay lightray,
Measurement meas 
) [virtual]

Reimplemented from OpticalObject.

Definition at line 24 of file OptODistancemeter3dim.cc.

References makeMeasurement().

00025 {
00026   makeMeasurement( lightray, meas);
00027 
00028 }

void OptODistancemeter3dim::makeMeasurement ( LightRay lightray,
Measurement meas 
) [virtual]

Reimplemented from OpticalObject.

Definition at line 34 of file OptODistancemeter3dim.cc.

References OpticalObject::centreGlob(), GenMuonPlsPt100GeV_cfg::cout, ALIUtils::debug, ALIUtils::dump3v(), lat::endl(), Measurement::getPreviousOptO(), OpticalObject::name(), Measurement::setValueSimulated(), Measurement::value(), and Measurement::valueSimulated().

Referenced by defaultBehaviour().

00035 {
00036   const OpticalObject* opto_prev = meas.getPreviousOptO( this );
00037   CLHEP::Hep3Vector dm_centre = centreGlob();
00038   dm_centre -= opto_prev->centreGlob();
00039   if (ALIUtils::debug >= 4) {
00040     std::cout << "OptO " << name() << std::endl;
00041     ALIUtils::dump3v( centreGlob(), " centre Glob ");
00042     std::cout << "OptO " << opto_prev->name() << std::endl;
00043     ALIUtils::dump3v( opto_prev->centreGlob(), " previous OptO centre Glob ");
00044     ALIUtils::dump3v( dm_centre, " distance std::vector");
00045   }
00046 
00047   meas.setValueSimulated (0 , dm_centre.mag() );
00048   if (ALIUtils::debug >= 1) { 
00049     std::cout << "SIMU value: D: " << meas.valueSimulated(0)*1000.
00050          << " (mm)  " << (this)->name() << std::endl;
00051     std::cout << "REAL value: D: " << meas.value()[0]*1000. 
00052          << " (mm)  " << (this)->name() << std::endl;
00053   }
00054 }


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:29:18 2009 for CMSSW by  doxygen 1.5.4