1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
#ifndef MuonSegment_H
#define MuonSegment_H
#include "DataFormats/Common/interface/AssociationVector.h"
#include "DataFormats/Common/interface/AssociationMap.h"
#include "DataFormats/GeometryVector/interface/GlobalPoint.h"
#include <vector>
#include "DataFormats/DTRecHit/interface/DTRecSegment4DCollection.h"
#include "DataFormats/CSCRecHit/interface/CSCSegmentCollection.h"
namespace susybsm {
class MuonSegment {
public:
MuonSegment() {}
//bool isDT() const { return DT;}
//bool isCSC() const { return CSC;}
//void setDT(const bool type) {DT = type;}
//void setCSC(const bool type) {CSC = type;}
void setDTSegmentRef(const DTRecSegment4DRef segment) { DTSegmentRef_ = segment; }
void setCSCSegmentRef(const CSCSegmentRef segment) { CSCSegmentRef_ = segment; }
void setGP(const GlobalPoint point) { gp = point; }
GlobalPoint getGP() const { return gp; }
DTRecSegment4DRef getDTSegmentRef() const { return DTSegmentRef_; }
CSCSegmentRef getCSCSegmentRef() const { return CSCSegmentRef_; }
private:
GlobalPoint gp;
DTRecSegment4DRef DTSegmentRef_;
CSCSegmentRef CSCSegmentRef_;
};
typedef std::vector<MuonSegment> MuonSegmentCollection;
typedef edm::Ref<MuonSegmentCollection> MuonSegmentRef;
typedef edm::RefProd<MuonSegmentCollection> MuonSegmentRefProd;
typedef edm::RefVector<MuonSegmentCollection> MuonSegmentRefVector;
} // namespace susybsm
#endif
|