CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/Alignment/CocoaModel/interface/MeasurementCOPS.h

Go to the documentation of this file.
00001 // COCOA class header file
00002 // Id:  MeasurementCOPS.h
00003 // CAT: Model
00004 //
00005 // Class for measurements
00006 // 
00007 // History: v1.0 
00008 // Authors:
00009 //   Pedro Arce
00010 
00011 #ifndef _MeasurementCOPS_h
00012 #define _MeasurementCOPS_h
00013 
00014 #include <vector>
00015 #include "Alignment/CocoaModel/interface/Measurement.h"
00016 #include "Alignment/CocoaUtilities/interface/CocoaGlobals.h"
00017 
00018 class MeasurementCOPS : public Measurement
00019 { 
00020 public:
00021   MeasurementCOPS( const ALIint measdim, ALIstring& type, ALIstring& name )
00022 : Measurement( measdim, type, name ){
00023     for(unsigned int ii=0; ii<4; ii++) theXlaserLine[ii] = -1; 
00024   };
00025   MeasurementCOPS(){ };   
00026   ~MeasurementCOPS(){ };
00027     
00028   // Get simulated value (called every time a parameter is displaced)
00029   virtual void calculateSimulatedValue( ALIbool firstTime );
00030 
00031   //---------- Add any correction between the measurement data and the default format in COCOA
00032   virtual void correctValueAndSigma();
00033 
00034   //---------- Convert from V to rad
00035   virtual void setConversionFactor( const std::vector<ALIstring>& wordlist );
00036   virtual int xlaserLine( unsigned int ii) {
00037     return theXlaserLine[ii];
00038   }
00039   virtual void setXlaserLine( unsigned int ii, int val) {
00040     theXlaserLine[ii] = val;};
00041 
00042  private:
00043 
00044   ALIdouble theDisplace[4];
00045   ALIint theXlaserLine[4]; // which x-hair laser line is measuring the CCD (0: X for UP and DOWN, Y for LEFT and RIGHT; 1: Y for UP and DOWN, X for LEFT and RIGHT ). Initialised at -1
00046 
00047 };
00048 
00049 #endif