![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
10 #ifndef MCPARTICLEUTILS_MCVTXFILTER_H
11 #define MCPARTICLEUTILS_MCVTXFILTER_H
92 void dump( std::ostream&
out = std::cout )
const;
255 #endif //> MCPARTICLEUTILS_MCVTXFILTER_H
void dump(std::ostream &out=std::cout) const
Dump to std::ostream (default = std::cout) the decay pattern the filter one is looking for.
bool m_matchBranches
Tell if one wants a strict vertex branches matching.
DataVector< const ParticleCandidateList > m_parentList
The list of the matching particles Ids : each item in DataVector stands for an entering branch to the...
void setMatchSign(const bool matchSign)
Set if one wants to discriminate the sign of the particles.
bool checkParentBranch(HepMC::ConstGenVertexPtr vtx) const
Check if the parent branch fulfills the requirements.
virtual void setFilter(const IFilterCuts *filter)
Set filter cut options.
McVtxFilter()
Default constructor:
bool checkTwoBodyDecay(HepMC::ConstGenVertexPtr vtx) const
Check the branches for the special case of a 1->2 body decay (there is some room for optimisation in ...
McVtxFilter allows to select HepMC::GenParticle based on the decay pattern.
const DataVector< const ParticleCandidateList > & childList() const
return the list of particle candidates for the output particles (child)
virtual bool isAccepted(HepMC::ConstGenVertexPtr vtx) const
Main filter method.
const std::string & decayPattern() const
return the decay pattern used by this filter
std::string m_decayPattern
The decay pattern one looks for.
bool isFullVtx() const
returns true if the vertex filter requires a parent AND a child list ie: returns false if the filter ...
void setDecayPattern(const std::string &decayPattern)
Set the decay pattern to look for : it correctly setups the parent and children according to the LaTe...
Class to provide easy MsgStream access and capabilities.
bool checkChildBranch(HepMC::ConstGenVertexPtr vtx) const
Check if the child branch fulfills the requirements.
void setMatchBranches(const bool matchVtxBranches)
Set if one wants to strictly match the number of output particles.
bool matchBranches() const
return true if the filter strictly matchs the number of output particles eg: a vertex t->Wbgg won't b...
virtual ~McVtxFilter()
Destructor:
An STL vector of pointers that by default owns its pointed-to elements.
IFilterCuts is a class which is used internally by the filters to copy their cut properties one to ...
const DataVector< const ParticleCandidateList > & parentList() const
return the list of particle candidates for the input particles (parent)
const HepMC::GenVertex * ConstGenVertexPtr
MsgStream & operator<<(MsgStream &msg, const McVtxFilter &obj)
I/O operators.
bool m_matchSign
Discrimination between particles and conjugates.
DataVector< const ParticleCandidateList > m_childList
The list of the matching particles Ids : each item in DataVector stands for an out-going branch to th...
McVtxFilter & operator=(const McVtxFilter &rhs)
Assignment operator:
bool matchSign() const
return true if the filter discriminates the sign of the particles
bool empty() const noexcept
Returns true if the collection is empty.