The Gaudi Framework  v36r11 (bdb84f5f)
Gaudi::Examples::CountSelectedTracks Class Referencefinal
Inheritance diagram for Gaudi::Examples::CountSelectedTracks:
Collaboration diagram for Gaudi::Examples::CountSelectedTracks:

Public Member Functions

 CountSelectedTracks (const std::string &name, ISvcLocator *pSvc)
 
StatusCode initialize () override
 
bool operator() (const Gaudi::Range_< Gaudi::Examples::MyTrack::ConstVector > &in_tracks) const override
 
StatusCode finalize () override
 

Private Attributes

std::atomic< long > m_tracksCount { 0 }
 
std::atomic< long > m_eventsCount { 0 }
 

Detailed Description

Definition at line 22 of file selector.cpp.

Constructor & Destructor Documentation

◆ CountSelectedTracks()

Gaudi::Examples::CountSelectedTracks::CountSelectedTracks ( const std::string name,
ISvcLocator pSvc 
)
inline

Definition at line 25 of file selector.cpp.

26  : FilterPredicate( name, pSvc,
27  { KeyValue{ "InputData", Functional::concat_alternatives( "BogusLocation", "MoreBogus",
28  "MyOutTracks" ) } } ) {}

Member Function Documentation

◆ finalize()

StatusCode Gaudi::Examples::CountSelectedTracks::finalize ( )
inlineoverride

Definition at line 44 of file selector.cpp.

44  {
45  info() << "extracted " << m_tracksCount << " tracks in " << m_eventsCount << " events" << endmsg;
46  return FilterPredicate::finalize();
47  }

◆ initialize()

StatusCode Gaudi::Examples::CountSelectedTracks::initialize ( )
inlineoverride

Definition at line 30 of file selector.cpp.

30  {
31  StatusCode sc = FilterPredicate::initialize();
32  if ( !sc ) return sc;
33  m_tracksCount = 0;
34  m_eventsCount = 0;
35  return sc;
36  }

◆ operator()()

bool Gaudi::Examples::CountSelectedTracks::operator() ( const Gaudi::Range_< Gaudi::Examples::MyTrack::ConstVector > &  in_tracks) const
inlineoverride

Definition at line 38 of file selector.cpp.

38  {
39  ++m_eventsCount;
40  m_tracksCount += in_tracks.size();
41  return true;
42  }

Member Data Documentation

◆ m_eventsCount

std::atomic<long> Gaudi::Examples::CountSelectedTracks::m_eventsCount { 0 }
mutableprivate

Definition at line 51 of file selector.cpp.

◆ m_tracksCount

std::atomic<long> Gaudi::Examples::CountSelectedTracks::m_tracksCount { 0 }
mutableprivate

Definition at line 50 of file selector.cpp.


The documentation for this class was generated from the following file:
Gaudi::Functional::FilterPredicate
details::FilterPredicate< Signature, Traits_, details::isLegacy< Traits_ > > FilterPredicate
Definition: FilterPredicate.h:70
Gaudi::Range_::size
size_t size() const
size of the sequence (number of elements)
Definition: Range.h:150
TimingHistograms.name
name
Definition: TimingHistograms.py:25
StatusCode
Definition: StatusCode.h:65
Gaudi::Examples::CountSelectedTracks::m_tracksCount
std::atomic< long > m_tracksCount
Definition: selector.cpp:50
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:203
Gaudi::Examples::CountSelectedTracks::m_eventsCount
std::atomic< long > m_eventsCount
Definition: selector.cpp:51
Gaudi::Functional::concat_alternatives
std::string concat_alternatives(std::initializer_list< std::string > c)
Definition: FunctionalUtilities.h:27