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 
13  public :
14 
19 
21 
22  NuclearInteraction( const TrajectorySeedRefVector& tseeds, const reco::Vertex& vtx, double lkh) {
23  seeds_ = tseeds;
24  vertex_ = vtx;
25  likelihood_ = lkh;
26  }
27 
30 
32  int secondaryTracksSize() const { return vertex_.tracksSize()-1; }
33 
35  trackRef_iterator secondaryTracks_begin() const { return vertex_.tracks_begin()+1; }
36 
38  trackRef_iterator secondaryTracks_end() const { return vertex_.tracks_end(); }
39 
41  int seedsSize() const { return seeds_.size(); }
42 
44  const TrajectorySeedRefVector& seeds() { return seeds_; }
45 
47  seedRef_iterator seeds_begin() const { return seeds_.begin(); }
48 
50  seedRef_iterator seeds_end() const { return seeds_.end(); }
51 
53  const reco::Vertex& vertex() const { return vertex_; }
54 
56  double likelihood() const { return likelihood_; }
57 
58  private :
59 
61  //reco::Track refittedPrimaryTrack_; // to be included in a futur version
62 
64  TrajectorySeedRefVector seeds_;
65 
68 
70  double likelihood_;
71  };
72 }
73 #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:81
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:253
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:248
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
std::vector< TrackBaseRef >::const_iterator trackRef_iterator
The iteratator for the vector<TrackRef>
Definition: Vertex.h:37
size_type size() const
Size of the RefVector.
Definition: RefVector.h:107
seedRef_iterator seeds_end() const
last iterator over seeds
trackRef_iterator tracks_begin() const
first iterator over tracks
Definition: Vertex.cc:76
trackRef_iterator secondaryTracks_end() const
last iterator over secondary tracks
size_t tracksSize() const
number of tracks
Definition: Vertex.cc:71