9#include <analysis/utility/DecayNode.h>
21 if (to_find == (*
this))
24 if (node.find_decay(to_find))
32 std::stringstream output;
34 for (
unsigned int i = 0; i < indent; ++i) {
38 output << std::to_string(
pdg);
42 output << d.print_node(indent + 1);
50 if (node1.
pdg == node2.
pdg) {
54 for (
unsigned int i = 0; i < node1.
daughters.size(); ++i) {
67 return not(node1 == node2);
DecayNode describes the decay of a particle identified by its pdg code, into list of daughters.
std::vector< DecayNode > daughters
daughter decay nodes
int pdg
pdg code of the particle
std::string print_node(unsigned int indent=0) const
Output a single node.
bool operator==(const DecayNode &node1, const DecayNode &node2)
Compare two Decay Nodes: They are equal if All daughter decay nodes are equal or one of the daughter ...
bool operator!=(const DecayNode &node1, const DecayNode &node2)
Not equal: See operator==.
bool find_decay(const DecayNode &to_find) const
Check if the decay node contains the given decay tree.
Abstract base class for different kinds of events.