CMS 3D CMS Logo

Public Member Functions | Private Attributes

FSimVertex Class Reference

#include <FSimVertex.h>

Inheritance diagram for FSimVertex:
SimVertex CoreSimVertex

List of all members.

Public Member Functions

void addDaughter (int i)
const FSimTrackdaughter (int i) const
 ith daughter
const std::vector< int > & daughters () const
 The vector of daughter indices.
 FSimVertex ()
 Default constructor.
 FSimVertex (const math::XYZTLorentzVector &v, int im, int id, FBaseSimEvent *mom)
 constructor from the embedded vertex index in the FBaseSimEvent
int id () const
 the index in FBaseSimEvent
int nDaughters () const
 The number of daughters.
bool noDaughter () const
 no Daughters
const FSimTrackparent () const
 parent track
const math::XYZTLorentzVectorposition () const
 Temporary (until CMSSW moves to Mathcore) - No ! Actually very useful.
void setPosition (const math::XYZTLorentzVector &newPosition)
 Reset the position (to be used with care)
const SimVertexsimVertex () const
 Simply returns the SimVertex.

Private Attributes

std::vector< int > daugh_
int id_
const FBaseSimEventmom_
math::XYZTLorentzVector position_

Detailed Description

A class that mimics SimVertex, with enhanced features. Essentially an interface to SimVertex.

Author:
Patrick Janot, CERN $Date: 9-Dec-2003

Definition at line 19 of file FSimVertex.h.


Constructor & Destructor Documentation

FSimVertex::FSimVertex ( )

Default constructor.

Definition at line 4 of file FSimVertex.cc.

: SimVertex(), mom_(0), id_(-1) {;}
FSimVertex::FSimVertex ( const math::XYZTLorentzVector v,
int  im,
int  id,
FBaseSimEvent mom 
)

constructor from the embedded vertex index in the FBaseSimEvent

Definition at line 7 of file FSimVertex.cc.

                                                                                     : 
  //    SimVertex(Hep3Vector(v.vect(),v.e(),im), mom_(mom), id_(id) 
  SimVertex(v.Vect(),v.T(),im,id), mom_(mom), id_(id),
  position_(v) {;}

Member Function Documentation

void FSimVertex::addDaughter ( int  i) [inline]

Definition at line 46 of file FSimVertex.h.

References daugh_.

Referenced by FBaseSimEvent::addSimTrack().

{ daugh_.push_back(i); }
const FSimTrack& FSimVertex::daughter ( int  i) const [inline]

ith daughter

const std::vector<int>& FSimVertex::daughters ( ) const [inline]

The vector of daughter indices.

Definition at line 32 of file FSimVertex.h.

References daugh_.

{ return daugh_; }
int FSimVertex::id ( void  ) const [inline]

the index in FBaseSimEvent

Definition at line 44 of file FSimVertex.h.

References id_.

Referenced by operator<<(), and TrajectoryManager::updateWithDaughters().

{ return id_; }
int FSimVertex::nDaughters ( ) const [inline]

The number of daughters.

Definition at line 35 of file FSimVertex.h.

References daugh_.

Referenced by noDaughter().

{ return daugh_.size(); }
bool FSimVertex::noDaughter ( ) const [inline]

no Daughters

Definition at line 41 of file FSimVertex.h.

References nDaughters().

{ return !nDaughters(); }
const FSimTrack& FSimVertex::parent ( ) const [inline]

parent track

const math::XYZTLorentzVector& FSimVertex::position ( ) const [inline]

Temporary (until CMSSW moves to Mathcore) - No ! Actually very useful.

Reimplemented from CoreSimVertex.

Definition at line 49 of file FSimVertex.h.

References position_.

Referenced by EcalHitMaker::buildSegments(), EcalHitMaker::cellLine(), FBaseSimEvent::fill(), MaterialEffects::interact(), TrajectoryManager::makeSinglePSimHit(), operator<<(), ParticlePropagator::ParticlePropagator(), and PFSimParticleProducer::produce().

{ return position_; }
void FSimVertex::setPosition ( const math::XYZTLorentzVector newPosition) [inline]

Reset the position (to be used with care)

Definition at line 52 of file FSimVertex.h.

References position_.

Referenced by TrajectoryManager::updateWithDaughters().

{position_ = newPosition; }
const SimVertex& FSimVertex::simVertex ( ) const [inline]

Simply returns the SimVertex.

Definition at line 55 of file FSimVertex.h.

{ return *this; }

Member Data Documentation

std::vector<int> FSimVertex::daugh_ [private]

Definition at line 61 of file FSimVertex.h.

Referenced by addDaughter(), daughters(), and nDaughters().

int FSimVertex::id_ [private]

Definition at line 60 of file FSimVertex.h.

Referenced by id().

const FBaseSimEvent* FSimVertex::mom_ [private]

Definition at line 59 of file FSimVertex.h.

Definition at line 63 of file FSimVertex.h.

Referenced by position(), and setPosition().