CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/Validation/RecoTrack/interface/SiStripTrackingRecHitsValid.h

Go to the documentation of this file.
00001 #ifndef Validation_RecoTrack_SiStripTrackingRecHitsValid_h
00002 #define Validation_RecoTrack_SiStripTrackingRecHitsValid_h
00003 
00004 //DQM services for histogram
00005 #include "DQMServices/Core/interface/DQMStore.h"
00006 #include "DQMServices/Core/interface/MonitorElement.h"
00007 #include "FWCore/ServiceRegistry/interface/Service.h"
00008 
00009 #include "FWCore/Framework/interface/EDAnalyzer.h"
00010 #include "FWCore/Framework/interface/Event.h"
00011 
00012 #include "DataFormats/Common/interface/Handle.h"
00013 
00014 #include "FWCore/Framework/interface/EventSetup.h"
00015 
00016 #include "DataFormats/Common/interface/EDProduct.h"
00017 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00018 #include "DataFormats/TrackingRecHit/interface/TrackingRecHit.h"
00019 #include "DataFormats/TrajectorySeed/interface/TrajectorySeed.h"
00020 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h"
00021 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
00022 #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
00023 #include "TrackingTools/MaterialEffects/interface/PropagatorWithMaterial.h"
00024 #include "TrackingTools/KalmanUpdators/interface/KFUpdator.h"
00025 #include "TrackingTools/KalmanUpdators/interface/Chi2MeasurementEstimator.h"
00026 #include "TrackingTools/TrackFitters/interface/KFTrajectoryFitter.h"
00027 #include "TrackingTools/TrackFitters/interface/KFTrajectorySmoother.h"
00028 #include "RecoTracker/TransientTrackingRecHit/interface/TkTransientTrackingRecHitBuilder.h" 
00029 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateTransform.h"
00030 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00031 
00032 #include <TROOT.h>
00033 #include <TTree.h>
00034 #include <TFile.h>
00035 #include <TH1F.h>
00036 #include <TProfile.h>
00037 
00038 #include "FWCore/Framework/interface/Frameworkfwd.h"
00039 #include "FWCore/Framework/interface/EventSetup.h"
00040 #include "FWCore/Framework/interface/ESHandle.h"
00041 #include "FWCore/Framework/interface/MakerMacros.h"
00042 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00043 
00044 //--- for SimHit association
00045 #include "SimDataFormats/TrackingHit/interface/PSimHit.h"  
00046 #include "SimTracker/TrackerHitAssociation/interface/TrackerHitAssociator.h" 
00047 #include "Geometry/CommonTopologies/interface/PixelTopology.h"
00048 #include "Geometry/CommonTopologies/interface/StripTopology.h"
00049 #include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h"
00050 #include "Geometry/CommonDetUnit/interface/GeomDetType.h" 
00051 #include "Geometry/CommonDetUnit/interface/GeomDetUnit.h" 
00052 #include "Geometry/TrackerGeometryBuilder/interface/GluedGeomDet.h"
00053 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
00054 #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h"
00055 #include "Geometry/TrackerNumberingBuilder/interface/GeometricDet.h"
00056 #include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetType.h"
00057 #include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetType.h"
00058 
00059 #include "DataFormats/GeometrySurface/interface/ReferenceCounted.h"
00060 
00061 #include "TrackingTools/PatternTools/interface/TrajectoryMeasurement.h"
00062 
00063 #include <string>
00064 
00065 class SiStripTrackingRecHitsValid : public edm::EDAnalyzer
00066 {
00067  public:
00068   
00069   explicit SiStripTrackingRecHitsValid(const edm::ParameterSet& conf);
00070   
00071   virtual ~SiStripTrackingRecHitsValid();
00072 
00073   virtual void analyze(const edm::Event& e, const edm::EventSetup& c);
00074   void endJob();
00075 
00076   std::pair<LocalPoint,LocalVector> projectHit( const PSimHit& hit, const StripGeomDetUnit* stripDet,const BoundPlane& plane);
00077 
00078   LocalVector driftDirection(const StripGeomDetUnit* det)const;
00079 
00080   MonitorElement* Fit_SliceY(TH2F * Histo2D);
00081 
00082  private:
00083 
00084   edm::ParameterSet conf_;
00085 
00086   DQMStore* dbe_;
00087   std::string outputFile_;
00088   //std::string src_;
00089   //std::string builderName_;
00090   //  bool MTCCtrack_;
00091 
00092   // slices
00093 
00094   TFile* myFile;
00095 
00096   TH1F *  SecondStrip;
00097   TH1F *  PositionSHx;
00098   TH1F *  Diff;
00099   TH1F *  ErrxMF;
00100   TH2F *  ErrxMFvsTrackwidth;
00101   TH2F *  ErrxMFvsTrackwidthWClus1;
00102   TH2F *  ErrxMFvsTrackwidthWClus2;
00103   TH2F *  ErrxMFvsTrackwidthWClus3;
00104   TH2F *  ErrxMFvsTrackwidthWClus4;
00105 
00106   TH2F *  ResMFvsTrackwidth;
00107   TH2F *  ResMFvsTrackwidthWClus1;
00108   TH2F *  ResMFvsTrackwidthWClus1Wexp1;
00109   TH2F *  ResMFvsTrackwidthWClus1Wexp2;
00110   TH2F *  ResMFvsTrackwidthWClus1Wexp3;
00111   TH2F *  ResMFvsTrackwidthWClus1Wexp4;
00112   TH2F *  ResMFvsTrackwidthWClus2;
00113   TH2F *  ResMFvsTrackwidthWClus2Wexp1;
00114   TH2F *  ResMFvsTrackwidthWClus2Wexp2;
00115   TH2F *  ResMFvsTrackwidthWClus2Wexp3;
00116   TH2F *  ResMFvsTrackwidthWClus2Wexp4;
00117   TH2F *  ResMFvsTrackwidthWClus3;
00118   TH2F *  ResMFvsTrackwidthWClus3Wexp1;
00119   TH2F *  ResMFvsTrackwidthWClus3Wexp2;
00120   TH2F *  ResMFvsTrackwidthWClus3Wexp3;
00121   TH2F *  ResMFvsTrackwidthWClus3Wexp4;
00122   TH2F *  ResMFvsTrackwidthWClus4;
00123   TH2F *  ResMFvsTrackwidthWClus4Wexp1;
00124   TH2F *  ResMFvsTrackwidthWClus4Wexp2;
00125   TH2F *  ResMFvsTrackwidthWClus4Wexp3;
00126   TH2F *  ResMFvsTrackwidthWClus4Wexp4;
00127 
00128   TH2F *  ErrxMFvsTrackwidthCategory2;
00129   TH2F *  ErrxMFvsTrackwidthCategory3;
00130   TH2F *  ErrxMFvsTrackwidthCategory4;
00131 
00132   TH2F *  ResMFvsTrackwidthCategory2;
00133   TH2F *  ResMFvsTrackwidthCategory3;
00134   TH2F *  ResMFvsTrackwidthCategory4;
00135 
00136   TH2F *  PullvsTrackwidth;
00137   TH2F *  PullvsClusterwidth;
00138   TH2F *  PullvsExpectedwidth;
00139   TH2F *  PullvsTrackangle;
00140   TH2F *  PullvsTrackanglebeta;
00141 
00142   TH2F *  PullvsTrackwidthTIB;
00143   TH2F *  PullvsClusterwidthTIB;
00144   TH2F *  PullvsExpectedwidthTIB;
00145   TH2F *  PullvsTrackangleTIB;
00146   TH2F *  PullvsTrackanglebetaTIB;
00147 
00148   TH2F *  PullvsTrackwidthTOB;
00149   TH2F *  PullvsClusterwidthTOB;
00150   TH2F *  PullvsExpectedwidthTOB;
00151   TH2F *  PullvsTrackangleTOB;
00152   TH2F *  PullvsTrackanglebetaTOB;
00153 
00154   TH2F *  PullvsTrackwidthTID;
00155   TH2F *  PullvsClusterwidthTID;
00156   TH2F *  PullvsExpectedwidthTID;
00157   TH2F *  PullvsTrackangleTID;
00158   TH2F *  PullvsTrackanglebetaTID;
00159 
00160   TH2F *  PullvsTrackwidthTEC;
00161   TH2F *  PullvsClusterwidthTEC;
00162   TH2F *  PullvsExpectedwidthTEC;
00163   TH2F *  PullvsTrackangleTEC;
00164   TH2F *  PullvsTrackanglebetaTEC;
00165 
00166   MonitorElement* PullRMSvsTrackwidth;
00167   MonitorElement* PullRMSvsExpectedwidth;
00168   MonitorElement* PullRMSvsClusterwidth;
00169   MonitorElement* PullRMSvsTrackangle;
00170   MonitorElement* PullRMSvsTrackanglebeta;
00171 
00172   MonitorElement* PullRMSvsTrackwidthTIB;
00173   MonitorElement* PullRMSvsExpectedwidthTIB;
00174   MonitorElement* PullRMSvsClusterwidthTIB;
00175   MonitorElement* PullRMSvsTrackangleTIB;
00176   MonitorElement* PullRMSvsTrackanglebetaTIB;
00177 
00178   MonitorElement* PullRMSvsTrackwidthTOB;
00179   MonitorElement* PullRMSvsExpectedwidthTOB;
00180   MonitorElement* PullRMSvsClusterwidthTOB;
00181   MonitorElement* PullRMSvsTrackangleTOB;
00182   MonitorElement* PullRMSvsTrackanglebetaTOB;
00183 
00184   MonitorElement* PullRMSvsTrackwidthTID;
00185   MonitorElement* PullRMSvsExpectedwidthTID;
00186   MonitorElement* PullRMSvsClusterwidthTID;
00187   MonitorElement* PullRMSvsTrackangleTID;
00188   MonitorElement* PullRMSvsTrackanglebetaTID;
00189 
00190   MonitorElement* PullRMSvsTrackwidthTEC;
00191   MonitorElement* PullRMSvsExpectedwidthTEC;
00192   MonitorElement* PullRMSvsClusterwidthTEC;
00193   MonitorElement* PullRMSvsTrackangleTEC;
00194   MonitorElement* PullRMSvsTrackanglebetaTEC;
00195 
00196 
00197   // ALL
00198 
00199   MonitorElement* meCategory;
00200   MonitorElement* meTrackwidth;
00201   MonitorElement* meExpectedwidth;
00202   MonitorElement* meClusterwidth;
00203   MonitorElement* meTrackanglealpha;
00204   MonitorElement* meTrackanglebeta;
00205   MonitorElement* meErrxMFTrackwidthProfile;
00206   MonitorElement* meErrxMFTrackwidthProfileWClus1;
00207   MonitorElement* meErrxMFTrackwidthProfileWClus2;
00208   MonitorElement* meErrxMFTrackwidthProfileWClus3;
00209   MonitorElement* meErrxMFTrackwidthProfileWClus4;
00210   MonitorElement* meResMFTrackwidthProfileWClus1;
00211 
00212   MonitorElement* meResMFTrackwidthProfileWClus2;
00213   MonitorElement* meResMFTrackwidthProfileWClus21;
00214   MonitorElement* meResMFTrackwidthProfileWClus22;
00215   MonitorElement* meResMFTrackwidthProfileWClus23;
00216 
00217   MonitorElement* meResMFTrackwidthProfileWClus3;
00218   MonitorElement* meResMFTrackwidthProfileWClus4;
00219   MonitorElement* meErrxMFTrackwidthProfileCategory1;
00220   MonitorElement* meErrxMFTrackwidthProfileCategory2;
00221   MonitorElement* meErrxMFTrackwidthProfileCategory3;
00222   MonitorElement* meErrxMFTrackwidthProfileCategory4;
00223   MonitorElement* meErrxMFClusterwidthProfileCategory1;
00224   MonitorElement* meErrxMFAngleProfile;
00225   MonitorElement* meErrxLF;
00226   MonitorElement* meResLF;
00227   MonitorElement* mePullLF;
00228   MonitorElement* meErrxMF;
00229   MonitorElement* meResMF;
00230   MonitorElement* mePullMF;
00231 
00232 
00233   //TIB
00234   MonitorElement* meNstpRphiTIB[4];
00235   MonitorElement* meAdcRphiTIB[4];
00236   MonitorElement* mePosxRphiTIB[4];
00237   MonitorElement* meErrxLFRphiTIB[4];
00238   MonitorElement* meErrxMFRphiTIB[4];
00239   MonitorElement* meResLFRphiTIB[4];
00240   MonitorElement* meResMFRphiTIB[4];
00241   MonitorElement* mePullLFRphiTIB[4];
00242   MonitorElement* mePullMFRphiTIB[4];
00243   MonitorElement* meTrackangleRphiTIB[4];
00244   MonitorElement* meTrackanglebetaRphiTIB[4];
00245   MonitorElement* meTrackangle2RphiTIB[4];
00246   MonitorElement* mePullTrackangleProfileRphiTIB[4];
00247   MonitorElement* mePullTrackangle2DRphiTIB[4];
00248   MonitorElement* meTrackwidthRphiTIB[4];
00249   MonitorElement* meExpectedwidthRphiTIB[4];
00250   MonitorElement* meClusterwidthRphiTIB[4];
00251   MonitorElement* meCategoryRphiTIB[4];
00252   MonitorElement* mePullTrackwidthProfileRphiTIB[4];
00253   MonitorElement* mePullTrackwidthProfileCategory1RphiTIB[4];
00254   MonitorElement* mePullTrackwidthProfileCategory2RphiTIB[4];
00255   MonitorElement* mePullTrackwidthProfileCategory3RphiTIB[4];
00256   MonitorElement* mePullTrackwidthProfileCategory4RphiTIB[4];
00257   MonitorElement* meErrxMFTrackwidthProfileRphiTIB[4];
00258 
00259   MonitorElement* meErrxMFTrackwidthProfileWclus1RphiTIB[4];
00260   MonitorElement* meErrxMFTrackwidthProfileWclus2RphiTIB[4];
00261   MonitorElement* meErrxMFTrackwidthProfileWclus3RphiTIB[4];
00262   MonitorElement* meErrxMFTrackwidthProfileWclus4RphiTIB[4];
00263   MonitorElement* meResMFTrackwidthProfileWclus1RphiTIB[4];
00264   MonitorElement* meResMFTrackwidthProfileWclus2RphiTIB[4];
00265   MonitorElement* meResMFTrackwidthProfileWclus3RphiTIB[4];
00266   MonitorElement* meResMFTrackwidthProfileWclus4RphiTIB[4];
00267 
00268   MonitorElement* meErrxMFTrackwidthProfileCategory1RphiTIB[4];
00269   MonitorElement* meErrxMFTrackwidthProfileCategory2RphiTIB[4];
00270   MonitorElement* meErrxMFTrackwidthProfileCategory3RphiTIB[4];
00271   MonitorElement* meErrxMFTrackwidthProfileCategory4RphiTIB[4];
00272   MonitorElement* meErrxMFClusterwidthProfileCategory1RphiTIB[4];
00273   MonitorElement* meErrxMFAngleProfileRphiTIB[4];
00274 
00275   MonitorElement* meNstpSasTIB[4];
00276   MonitorElement* meAdcSasTIB[4];
00277   MonitorElement* mePosxSasTIB[4];
00278   MonitorElement* meErrxLFSasTIB[4];
00279   MonitorElement* meErrxMFSasTIB[4];
00280   MonitorElement* meResLFSasTIB[4];
00281   MonitorElement* meResMFSasTIB[4];
00282   MonitorElement* mePullLFSasTIB[4];
00283   MonitorElement* mePullMFSasTIB[4];
00284   MonitorElement* meTrackangleSasTIB[4];
00285   MonitorElement* meTrackanglebetaSasTIB[4];
00286   MonitorElement* mePullTrackangleProfileSasTIB[4];
00287   MonitorElement* meTrackwidthSasTIB[4];
00288   MonitorElement* meExpectedwidthSasTIB[4];
00289   MonitorElement* meClusterwidthSasTIB[4];
00290   MonitorElement* meCategorySasTIB[4];
00291   MonitorElement* mePullTrackwidthProfileSasTIB[4];
00292   MonitorElement* mePullTrackwidthProfileCategory1SasTIB[4];
00293   MonitorElement* mePullTrackwidthProfileCategory2SasTIB[4];
00294   MonitorElement* mePullTrackwidthProfileCategory3SasTIB[4];
00295   MonitorElement* mePullTrackwidthProfileCategory4SasTIB[4];
00296   MonitorElement* meErrxMFTrackwidthProfileSasTIB[4];
00297   MonitorElement* meErrxMFTrackwidthProfileCategory1SasTIB[4];
00298   MonitorElement* meErrxMFTrackwidthProfileCategory2SasTIB[4];
00299   MonitorElement* meErrxMFTrackwidthProfileCategory3SasTIB[4];
00300   MonitorElement* meErrxMFTrackwidthProfileCategory4SasTIB[4];
00301   MonitorElement* meErrxMFClusterwidthProfileCategory1SasTIB[4];
00302   MonitorElement* meErrxMFAngleProfileSasTIB[4];
00303 
00304   MonitorElement* mePosxMatchedTIB[2];
00305   MonitorElement* mePosyMatchedTIB[2];
00306   MonitorElement* meErrxMatchedTIB[2];
00307   MonitorElement* meErryMatchedTIB[2];
00308   MonitorElement* meResxMatchedTIB[2];
00309   MonitorElement* meResyMatchedTIB[2];
00310   MonitorElement* mePullxMatchedTIB[2];
00311   MonitorElement* mePullyMatchedTIB[2];
00312   //TOB
00313   MonitorElement* meNstpRphiTOB[6];
00314   MonitorElement* meAdcRphiTOB[6];
00315   MonitorElement* mePosxRphiTOB[6];
00316   MonitorElement* meErrxLFRphiTOB[6];
00317   MonitorElement* meResLFRphiTOB[6];
00318   MonitorElement* mePullLFRphiTOB[6];
00319   MonitorElement* meErrxMFRphiTOB[6];
00320   MonitorElement* meResMFRphiTOB[6];
00321   MonitorElement* mePullMFRphiTOB[6];
00322   MonitorElement* meTrackangleRphiTOB[6];
00323   MonitorElement* meTrackanglebetaRphiTOB[6];
00324   MonitorElement* mePullTrackangleProfileRphiTOB[6];
00325   MonitorElement* meTrackwidthRphiTOB[6];
00326   MonitorElement* meExpectedwidthRphiTOB[6];
00327   MonitorElement* meClusterwidthRphiTOB[6];
00328   MonitorElement* meCategoryRphiTOB[6];
00329   MonitorElement* mePullTrackwidthProfileRphiTOB[6];
00330   MonitorElement* mePullTrackwidthProfileCategory1RphiTOB[6];
00331   MonitorElement* mePullTrackwidthProfileCategory2RphiTOB[6];
00332   MonitorElement* mePullTrackwidthProfileCategory3RphiTOB[6];
00333   MonitorElement* mePullTrackwidthProfileCategory4RphiTOB[6];
00334   MonitorElement* meErrxMFTrackwidthProfileRphiTOB[6];
00335 
00336   MonitorElement* meErrxMFTrackwidthProfileWclus1RphiTOB[6];
00337   MonitorElement* meErrxMFTrackwidthProfileWclus2RphiTOB[6];
00338   MonitorElement* meErrxMFTrackwidthProfileWclus3RphiTOB[6];
00339   MonitorElement* meErrxMFTrackwidthProfileWclus4RphiTOB[6];
00340   MonitorElement* meResMFTrackwidthProfileWclus1RphiTOB[6];
00341   MonitorElement* meResMFTrackwidthProfileWclus2RphiTOB[6];
00342   MonitorElement* meResMFTrackwidthProfileWclus3RphiTOB[6];
00343   MonitorElement* meResMFTrackwidthProfileWclus4RphiTOB[6];
00344 
00345   MonitorElement* meErrxMFTrackwidthProfileCategory1RphiTOB[6];
00346   MonitorElement* meErrxMFTrackwidthProfileCategory2RphiTOB[6];
00347   MonitorElement* meErrxMFTrackwidthProfileCategory3RphiTOB[6];
00348   MonitorElement* meErrxMFTrackwidthProfileCategory4RphiTOB[6];
00349   MonitorElement* meErrxMFClusterwidthProfileCategory1RphiTOB[6];
00350   MonitorElement* meErrxMFAngleProfileRphiTOB[6];
00351 
00352   MonitorElement* meNstpSasTOB[2];
00353   MonitorElement* meAdcSasTOB[2];
00354   MonitorElement* mePosxSasTOB[2];
00355   MonitorElement* meErrxLFSasTOB[2];
00356   MonitorElement* meResLFSasTOB[2];
00357   MonitorElement* mePullLFSasTOB[2];
00358   MonitorElement* meErrxMFSasTOB[2];
00359   MonitorElement* meResMFSasTOB[2];
00360   MonitorElement* mePullMFSasTOB[2];
00361   MonitorElement* meTrackangleSasTOB[2];
00362   MonitorElement* meTrackanglebetaSasTOB[2];
00363   MonitorElement* mePullTrackangleProfileSasTOB[2];
00364   MonitorElement* meTrackwidthSasTOB[2];
00365   MonitorElement* meExpectedwidthSasTOB[2];
00366   MonitorElement* meClusterwidthSasTOB[2];
00367   MonitorElement* meCategorySasTOB[2];
00368   MonitorElement* mePullTrackwidthProfileSasTOB[2];
00369   MonitorElement* mePullTrackwidthProfileCategory1SasTOB[2];
00370   MonitorElement* mePullTrackwidthProfileCategory2SasTOB[2];
00371   MonitorElement* mePullTrackwidthProfileCategory3SasTOB[2];
00372   MonitorElement* mePullTrackwidthProfileCategory4SasTOB[2];
00373   MonitorElement* meErrxMFTrackwidthProfileSasTOB[2];
00374   MonitorElement* meErrxMFTrackwidthProfileCategory1SasTOB[2];
00375   MonitorElement* meErrxMFTrackwidthProfileCategory2SasTOB[2];
00376   MonitorElement* meErrxMFTrackwidthProfileCategory3SasTOB[2];
00377   MonitorElement* meErrxMFTrackwidthProfileCategory4SasTOB[2];
00378   MonitorElement* meErrxMFClusterwidthProfileCategory1SasTOB[2];
00379   MonitorElement* meErrxMFAngleProfileSasTOB[2];
00380 
00381   MonitorElement* mePosxMatchedTOB[2];
00382   MonitorElement* mePosyMatchedTOB[2];
00383   MonitorElement* meErrxMatchedTOB[2];
00384   MonitorElement* meErryMatchedTOB[2];
00385   MonitorElement* meResxMatchedTOB[2];
00386   MonitorElement* meResyMatchedTOB[2];
00387   MonitorElement* mePullxMatchedTOB[2];
00388   MonitorElement* mePullyMatchedTOB[2];
00389   //TID
00390   MonitorElement* meNstpRphiTID[3];
00391   MonitorElement* meAdcRphiTID[3];
00392   MonitorElement* mePosxRphiTID[3];
00393   MonitorElement* meErrxLFRphiTID[3];
00394   MonitorElement* meResLFRphiTID[3];
00395   MonitorElement* mePullLFRphiTID[3];
00396   MonitorElement* meErrxMFRphiTID[3];
00397   MonitorElement* meResMFRphiTID[3];
00398   MonitorElement* mePullMFRphiTID[3];
00399   MonitorElement* meTrackangleRphiTID[3];
00400   MonitorElement* meTrackanglebetaRphiTID[3];
00401   MonitorElement* mePullTrackangleProfileRphiTID[3];
00402   MonitorElement* meTrackwidthRphiTID[3];
00403   MonitorElement* meExpectedwidthRphiTID[3];
00404   MonitorElement* meClusterwidthRphiTID[3];
00405   MonitorElement* meCategoryRphiTID[3];
00406   MonitorElement* mePullTrackwidthProfileRphiTID[3];
00407   MonitorElement* mePullTrackwidthProfileCategory1RphiTID[3];
00408   MonitorElement* mePullTrackwidthProfileCategory2RphiTID[3];
00409   MonitorElement* mePullTrackwidthProfileCategory3RphiTID[3];
00410   MonitorElement* mePullTrackwidthProfileCategory4RphiTID[3];
00411   MonitorElement* meErrxMFTrackwidthProfileRphiTID[3];
00412   MonitorElement* meErrxMFTrackwidthProfileCategory1RphiTID[3];
00413   MonitorElement* meErrxMFTrackwidthProfileCategory2RphiTID[3];
00414   MonitorElement* meErrxMFTrackwidthProfileCategory3RphiTID[3];
00415   MonitorElement* meErrxMFTrackwidthProfileCategory4RphiTID[3];
00416   MonitorElement* meErrxMFClusterwidthProfileCategory1RphiTID[3];
00417   MonitorElement* meErrxMFAngleProfileRphiTID[3];
00418 
00419   MonitorElement* meNstpSasTID[2];
00420   MonitorElement* meAdcSasTID[2];
00421   MonitorElement* mePosxSasTID[2];
00422   MonitorElement* meErrxLFSasTID[2];
00423   MonitorElement* meResLFSasTID[2];
00424   MonitorElement* mePullLFSasTID[2];
00425   MonitorElement* meErrxMFSasTID[2];
00426   MonitorElement* meResMFSasTID[2];
00427   MonitorElement* mePullMFSasTID[2];
00428   MonitorElement* meTrackangleSasTID[2];
00429   MonitorElement* meTrackanglebetaSasTID[2];
00430   MonitorElement* mePullTrackangleProfileSasTID[2];
00431   MonitorElement* meTrackwidthSasTID[2];
00432   MonitorElement* meExpectedwidthSasTID[2];
00433   MonitorElement* meClusterwidthSasTID[2];
00434   MonitorElement* meCategorySasTID[2];
00435   MonitorElement* mePullTrackwidthProfileSasTID[2];
00436   MonitorElement* mePullTrackwidthProfileCategory1SasTID[2];
00437   MonitorElement* mePullTrackwidthProfileCategory2SasTID[2];
00438   MonitorElement* mePullTrackwidthProfileCategory3SasTID[2];
00439   MonitorElement* mePullTrackwidthProfileCategory4SasTID[2];
00440   MonitorElement* meErrxMFTrackwidthProfileSasTID[2];
00441   MonitorElement* meErrxMFTrackwidthProfileCategory1SasTID[2];
00442   MonitorElement* meErrxMFTrackwidthProfileCategory2SasTID[2];
00443   MonitorElement* meErrxMFTrackwidthProfileCategory3SasTID[2];
00444   MonitorElement* meErrxMFTrackwidthProfileCategory4SasTID[2];
00445   MonitorElement* meErrxMFClusterwidthProfileCategory1SasTID[2];
00446   MonitorElement* meErrxMFAngleProfileSasTID[2];
00447 
00448   MonitorElement* mePosxMatchedTID[2];
00449   MonitorElement* mePosyMatchedTID[2];
00450   MonitorElement* meErrxMatchedTID[2];
00451   MonitorElement* meErryMatchedTID[2];
00452   MonitorElement* meResxMatchedTID[2];
00453   MonitorElement* meResyMatchedTID[2];
00454   MonitorElement* mePullxMatchedTID[2];
00455   MonitorElement* mePullyMatchedTID[2];
00456  //TEC
00457   MonitorElement* meNstpRphiTEC[7];
00458   MonitorElement* meAdcRphiTEC[7];
00459   MonitorElement* mePosxRphiTEC[7];
00460   MonitorElement* meErrxLFRphiTEC[7];
00461   MonitorElement* meResLFRphiTEC[7];
00462   MonitorElement* mePullLFRphiTEC[7];
00463   MonitorElement* meErrxMFRphiTEC[7];
00464   MonitorElement* meResMFRphiTEC[7];
00465   MonitorElement* mePullMFRphiTEC[7];
00466   MonitorElement* meTrackangleRphiTEC[7];
00467   MonitorElement* meTrackanglebetaRphiTEC[7];
00468   MonitorElement* mePullTrackangleProfileRphiTEC[7];
00469   MonitorElement* meTrackwidthRphiTEC[7];
00470   MonitorElement* meExpectedwidthRphiTEC[7];
00471   MonitorElement* meClusterwidthRphiTEC[7];
00472   MonitorElement* meCategoryRphiTEC[7];
00473   MonitorElement* mePullTrackwidthProfileRphiTEC[7];
00474   MonitorElement* mePullTrackwidthProfileCategory1RphiTEC[7];
00475   MonitorElement* mePullTrackwidthProfileCategory2RphiTEC[7];
00476   MonitorElement* mePullTrackwidthProfileCategory3RphiTEC[7];
00477   MonitorElement* mePullTrackwidthProfileCategory4RphiTEC[7];
00478   MonitorElement* meErrxMFTrackwidthProfileSasTEC[7];
00479   MonitorElement* meErrxMFTrackwidthProfileCategory1SasTEC[7];
00480   MonitorElement* meErrxMFTrackwidthProfileCategory2SasTEC[7];
00481   MonitorElement* meErrxMFTrackwidthProfileCategory3SasTEC[7];
00482   MonitorElement* meErrxMFTrackwidthProfileCategory4SasTEC[7];
00483   MonitorElement* meErrxMFClusterwidthProfileCategory1SasTEC[7];
00484   MonitorElement* meErrxMFTrackwidthProfileRphiTEC[7];
00485   MonitorElement* meErrxMFTrackwidthProfileCategory1RphiTEC[7];
00486   MonitorElement* meErrxMFTrackwidthProfileCategory2RphiTEC[7];
00487   MonitorElement* meErrxMFTrackwidthProfileCategory3RphiTEC[7];
00488   MonitorElement* meErrxMFTrackwidthProfileCategory4RphiTEC[7];
00489   MonitorElement* meErrxMFClusterwidthProfileCategory1RphiTEC[7];
00490   MonitorElement* meErrxMFAngleProfileRphiTEC[7];
00491 
00492   MonitorElement* meNstpSasTEC[5];
00493   MonitorElement* meAdcSasTEC[5];
00494   MonitorElement* mePosxSasTEC[5];
00495   MonitorElement* meErrxLFSasTEC[5];
00496   MonitorElement* meResLFSasTEC[5];
00497   MonitorElement* mePullLFSasTEC[5];
00498   MonitorElement* meErrxMFSasTEC[5];
00499   MonitorElement* meResMFSasTEC[5];
00500   MonitorElement* mePullMFSasTEC[5];
00501   MonitorElement* meTrackangleSasTEC[5];
00502   MonitorElement* meTrackanglebetaSasTEC[5];
00503   MonitorElement* mePullTrackangleProfileSasTEC[5];
00504   MonitorElement* meTrackwidthSasTEC[5];
00505   MonitorElement* meExpectedwidthSasTEC[5];
00506   MonitorElement* meClusterwidthSasTEC[5];
00507   MonitorElement* meCategorySasTEC[5];
00508   MonitorElement* mePullTrackwidthProfileSasTEC[5];
00509   MonitorElement* mePullTrackwidthProfileCategory1SasTEC[5];
00510   MonitorElement* mePullTrackwidthProfileCategory2SasTEC[5];
00511   MonitorElement* mePullTrackwidthProfileCategory3SasTEC[5];
00512   MonitorElement* mePullTrackwidthProfileCategory4SasTEC[5];
00513   MonitorElement* meErrxMFAngleProfileSasTEC[5];
00514 
00515   MonitorElement* mePosxMatchedTEC[5];
00516   MonitorElement* mePosyMatchedTEC[5];
00517   MonitorElement* meErrxMatchedTEC[5];
00518   MonitorElement* meErryMatchedTEC[5];
00519   MonitorElement* meResxMatchedTEC[5];
00520   MonitorElement* meResyMatchedTEC[5];
00521   MonitorElement* mePullxMatchedTEC[5];
00522   MonitorElement* mePullyMatchedTEC[5];
00523 
00524   const StripTopology* topol;
00525 
00526   float rechitrphix;
00527   float rechitrphierrx;
00528   float rechitrphierrxLF;
00529   float rechitrphierrxMF;
00530   float rechitrphiy;
00531   float rechitrphiz;
00532   float rechitrphiphi;
00533   float rechitrphires;
00534   float rechitrphiresLF;
00535   float rechitrphiresMF;
00536   float rechitrphipull;
00537   float rechitrphipullLF;
00538   float rechitrphipullMF;
00539   float rechitrphitrackangle;
00540   float rechitrphitrackanglebeta;
00541   float rechitrphitrackangle2;
00542   float rechitrphitrackwidth;
00543   int rechitrphiexpectedwidth;
00544   int rechitrphicategory;
00545   int   clusizrphi;
00546   float cluchgrphi;
00547   float rechitsasx;
00548   float rechitsaserrx;
00549   float rechitsaserrxLF;
00550   float rechitsaserrxMF;
00551   float rechitsasy;
00552   float rechitsasz;
00553   float rechitsasphi;
00554   float rechitsasres;
00555   float rechitsasresLF;
00556   float rechitsasresMF;
00557   float rechitsaspull;
00558   float rechitsaspullLF;
00559   float rechitsaspullMF;
00560   float rechitsastrackangle;
00561   float rechitsastrackanglebeta;
00562   float rechitsastrackwidth;
00563   int rechitsasexpectedwidth;
00564   int rechitsascategory;
00565   float  rechitrphithickness;
00566   float  rechitsasthickness;
00567 
00568   int   clusizsas;
00569   float cluchgsas;
00570   float rechitmatchedx;
00571   float rechitmatchedy;
00572   float rechitmatchedz;
00573   float rechitmatchederrxx;
00574   float rechitmatchederrxy;
00575   float rechitmatchederryy;
00576   float rechitmatchedphi;
00577   float rechitmatchedresx;
00578   float rechitmatchedresy;
00579   float rechitmatchedpullx;
00580   float rechitmatchedpully;
00581   float rechitmatchedtrackangle;
00582 
00583  protected:  
00584     const MagneticField * magfield2_ ;
00585 
00586 };
00587 
00588 
00589 #endif