////////////////////////////////////////////////////////////////////////// // // // RhoVertexSelectorBase // // // // Abstract Selector classes for vertexing // // // // Author: Marcel Kunze, RUB, July 99 // // Copyright (C) 1999-2001, Ruhr-University Bochum. // // Ralf Kliemt, HIM/GSI Feb.2013 (Cleanup & Restructuring) // // // ////////////////////////////////////////////////////////////////////////// #include "RhoBase/RhoVertexSelectorBase.h" //#include "RhoBase/TRho.h" #include "RhoBase/RhoCandidate.h" #include "RhoBase/RhoCandList.h" ClassImp ( RhoVertexSelectorBase ) #include using namespace std; RhoVertexSelectorBase::RhoVertexSelectorBase ( const char* name ) : TNamed ( name,name ), fDoca ( 1.0 ), fVtxip ( 3.14159265358979323846 ), fRmin ( 0.0 ), fRmax ( 1.E8 ), fPrimaryVertex ( 0.,0.,0. ) { } RhoVertexSelectorBase::~RhoVertexSelectorBase() { } void RhoVertexSelectorBase::Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& out ) { TLorentzVector vl; Double_t charge; Bool_t nearby = kTRUE; //fEntries = 0; //end of unlock Int_t endpos1 = l1.GetLength(); Int_t endpos2 = l2.GetLength(); out.Cleanup(); if ( &l1==&l2 ) { //combination of a list with itself for ( Int_t comb_i=0; comb_imomentum < " << fVtxip << " rad" << endl; o << "Radius of acceptance = " << fRmin << " ... " << fRmax << " cm" << endl; o << endl; } std::ostream& operator << ( std::ostream& o, const RhoVertexSelectorBase& a ) { a.PrintOn ( o ); return o; }