CMS 3D CMS Logo

Public Member Functions | Private Attributes | Static Private Attributes

PvSvFilter Class Reference

#include <PvSvFilter.h>

List of all members.

Public Member Functions

bool operator() (const TransientVertex &) const
 PvSvFilter (double, TransientVertex &)
 ~PvSvFilter ()

Private Attributes

double maxFractionPv
TransientVertexthePrimaryVertex

Static Private Attributes

static const bool debug = false

Detailed Description

Definition at line 10 of file PvSvFilter.h.


Constructor & Destructor Documentation

PvSvFilter::PvSvFilter ( double  maxInPv,
TransientVertex thePV 
)

Definition at line 10 of file PvSvFilter.cc.

                                                                  : 
  maxFractionPv ( maxInPv ) , 
  thePrimaryVertex ( &thePV ) 
{}
PvSvFilter::~PvSvFilter ( ) [inline]

Definition at line 16 of file PvSvFilter.h.

{ } ;

Member Function Documentation

bool PvSvFilter::operator() ( const TransientVertex VertexToFilter) const

Definition at line 15 of file PvSvFilter.cc.

References gather_cfg::cout, debug, TransientTrackInVertices::isInVertex(), maxFractionPv, TransientVertex::originalTracks(), and thePrimaryVertex.

{
  std::vector<reco::TransientTrack> tracksAtSv = VertexToFilter.originalTracks() ;
  int multSv = tracksAtSv.size() ;
  int inPv = 0 ;
  
  for ( std::vector<reco::TransientTrack>::const_iterator itSvT = tracksAtSv.begin(); 
    itSvT != tracksAtSv.end() ; itSvT++ ) {
    if ( TransientTrackInVertices::isInVertex ( *itSvT , *thePrimaryVertex ) ) inPv++ ;
    else {if(debug) std::cout<<"NOT IN VTX\n";}
  }
  
  double  fracInPv = 0.0 ;
  if ( multSv > 0 ) fracInPv = double ( inPv ) / double ( multSv ) ; 

  if(debug) std::cout <<"[PvSvFilter] frac,max: "<<fracInPv<<","<<maxFractionPv<<std::endl;

  return ( fracInPv < maxFractionPv ) ; 
}

Member Data Documentation

const bool PvSvFilter::debug = false [static, private]

Definition at line 26 of file PvSvFilter.h.

Referenced by operator()().

double PvSvFilter::maxFractionPv [private]

Definition at line 22 of file PvSvFilter.h.

Referenced by operator()().

Definition at line 24 of file PvSvFilter.h.

Referenced by operator()().