Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-09-07 04:34:43

0001 #ifndef MuonSegment_H
0002 #define MuonSegment_H
0003 #include "DataFormats/Common/interface/AssociationVector.h"
0004 #include "DataFormats/Common/interface/AssociationMap.h"
0005 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0006 #include <vector>
0007 
0008 #include "DataFormats/DTRecHit/interface/DTRecSegment4DCollection.h"
0009 #include "DataFormats/CSCRecHit/interface/CSCSegmentCollection.h"
0010 
0011 namespace susybsm {
0012 
0013   class MuonSegment {
0014   public:
0015     MuonSegment() {}
0016     //bool isDT()  const { return DT;}
0017     //bool isCSC() const { return CSC;}
0018 
0019     //void setDT(const bool type) {DT = type;}
0020     //void setCSC(const bool type) {CSC = type;}
0021 
0022     void setDTSegmentRef(const DTRecSegment4DRef segment) { DTSegmentRef_ = segment; }
0023     void setCSCSegmentRef(const CSCSegmentRef segment) { CSCSegmentRef_ = segment; }
0024 
0025     void setGP(const GlobalPoint point) { gp = point; }
0026 
0027     GlobalPoint getGP() const { return gp; }
0028 
0029     DTRecSegment4DRef getDTSegmentRef() const { return DTSegmentRef_; }
0030     CSCSegmentRef getCSCSegmentRef() const { return CSCSegmentRef_; }
0031 
0032   private:
0033     GlobalPoint gp;
0034 
0035     DTRecSegment4DRef DTSegmentRef_;
0036     CSCSegmentRef CSCSegmentRef_;
0037   };
0038 
0039   typedef std::vector<MuonSegment> MuonSegmentCollection;
0040   typedef edm::Ref<MuonSegmentCollection> MuonSegmentRef;
0041   typedef edm::RefProd<MuonSegmentCollection> MuonSegmentRefProd;
0042   typedef edm::RefVector<MuonSegmentCollection> MuonSegmentRefVector;
0043 }  // namespace susybsm
0044 
0045 #endif