Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-04-29 23:10:59

0001 #ifndef EstimatorTool_RecSegment_h
0002 #define EstimatorTool_RecSegment_h
0003 
0004 /**
0005  *  Class: ChamberSegmentUtility
0006  *
0007  *  Description:
0008  *  utility class for the dynamical truncation algorithm
0009  *
0010  *
0011  *  Authors :
0012  *  D. Pagano & G. Bruno - UCL Louvain
0013  *
0014  **/
0015 
0016 #include "Geometry/DTGeometry/interface/DTGeometry.h"
0017 #include "DataFormats/CLHEP/interface/AlgebraicObjects.h"
0018 #include "DataFormats/GeometrySurface/interface/LocalError.h"
0019 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
0020 #include "SimDataFormats/TrackingHit/interface/PSimHitContainer.h"
0021 #include "Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h"
0022 #include "Geometry/CSCGeometry/interface/CSCGeometry.h"
0023 #include "Geometry/Records/interface/GlobalTrackingGeometryRecord.h"
0024 #include "Geometry/DTGeometry/interface/DTChamber.h"
0025 #include "DataFormats/DTRecHit/interface/DTRecSegment4D.h"
0026 #include "DataFormats/DTRecHit/interface/DTRecSegment4DCollection.h"
0027 #include "DataFormats/CSCRecHit/interface/CSCSegment.h"
0028 #include "DataFormats/CSCRecHit/interface/CSCSegmentCollection.h"
0029 
0030 class ChamberSegmentUtility {
0031 public:
0032   ChamberSegmentUtility();
0033 
0034   void initCSU(const edm::Handle<DTRecSegment4DCollection>&, const edm::Handle<CSCSegmentCollection>&);
0035 
0036   // Get the 4D segments in a CSC chamber
0037   std::vector<CSCSegment> getCSCSegmentsInChamber(CSCDetId);
0038 
0039   // Get the 4D segments in a DT chamber
0040   std::vector<DTRecSegment4D> getDTSegmentsInChamber(DTChamberId);
0041 
0042 private:
0043   edm::Handle<CSCSegmentCollection> CSCSegments;
0044   edm::Handle<DTRecSegment4DCollection> all4DSegments;
0045   std::vector<DTRecSegment4D> dtseg;
0046   std::vector<CSCSegment> cscseg;
0047 };
0048 
0049 #endif