CMS 3D CMS Logo

NuclearInteraction.h
Go to the documentation of this file.
1 #ifndef DATAFORMAT_NUCLEARINTERACTION_
2 #define DATAFORMAT_NUCLEARINTERACTION_
3 
8 
9 namespace reco {
10 
12  public:
17 
19 
20  NuclearInteraction(const TrajectorySeedRefVector& tseeds, const reco::Vertex& vtx, double lkh) {
21  seeds_ = tseeds;
22  vertex_ = vtx;
23  likelihood_ = lkh;
24  }
25 
28 
30  int secondaryTracksSize() const { return vertex_.tracksSize() - 1; }
31 
33  trackRef_iterator secondaryTracks_begin() const { return vertex_.tracks_begin() + 1; }
34 
36  trackRef_iterator secondaryTracks_end() const { return vertex_.tracks_end(); }
37 
39  int seedsSize() const { return seeds_.size(); }
40 
42  const TrajectorySeedRefVector& seeds() { return seeds_; }
43 
45  seedRef_iterator seeds_begin() const { return seeds_.begin(); }
46 
48  seedRef_iterator seeds_end() const { return seeds_.end(); }
49 
51  const reco::Vertex& vertex() const { return vertex_; }
52 
54  double likelihood() const { return likelihood_; }
55 
56  private:
58  //reco::Track refittedPrimaryTrack_; // to be included in a futur version
59 
61  TrajectorySeedRefVector seeds_;
62 
65 
67  double likelihood_;
68  };
69 } // namespace reco
70 #endif
reco::Vertex vertex_
The calculated vertex position.
trackRef_iterator secondaryTracks_begin() const
first iterator over secondary tracks
seedRef_iterator seeds_begin() const
first iterator over seeds
trackRef_iterator tracks_end() const
last iterator over tracks
Definition: Vertex.cc:73
const edm::RefToBase< reco::Track > & primaryTrack() const
return the base reference to the primary track
double likelihood_
Varaible used to measure the quality of the reconstructed nuclear interaction.
const_iterator end() const
Termination of iteration.
Definition: RefVector.h:228
edm::Ref< TrajectorySeedCollection > TrajectorySeedRef
NuclearInteraction(const TrajectorySeedRefVector &tseeds, const reco::Vertex &vtx, double lkh)
int secondaryTracksSize() const
return the number of secondary tracks
const_iterator begin() const
Initialize an iterator over the RefVector.
Definition: RefVector.h:223
const TrajectorySeedRefVector & seeds()
return the seeds
reco::Vertex::trackRef_iterator trackRef_iterator
int seedsSize() const
return the number of seeds
double likelihood() const
return the likelihood ~ probability that the vertex is a real nuclear interaction ...
TrajectorySeedRefVector seeds_
The refitted primary track after removing eventually some outer rechits.
edm::RefVector< TrajectorySeedCollection > TrajectorySeedRefVector
TrajectorySeedRefVector::iterator seedRef_iterator
const reco::Vertex & vertex() const
return the vertex
fixed size matrix
size_type size() const
Size of the RefVector.
Definition: RefVector.h:102
seedRef_iterator seeds_end() const
last iterator over seeds
trackRef_iterator tracks_begin() const
first iterator over tracks
Definition: Vertex.cc:71
trackRef_iterator secondaryTracks_end() const
last iterator over secondary tracks
std::vector< TrackBaseRef >::const_iterator trackRef_iterator
The iteratator for the vector<TrackRef>
Definition: Vertex.h:37
size_t tracksSize() const
number of tracks
Definition: Vertex.cc:69