Go to the documentation of this file.
34 const Node& _node =
dynamic_cast<const Node&
>( node );
35 m_node.reset( _node.
m_node->clone() );
37 m_node.reset( node.
clone() );
50 return m_node->validate( svc );
54 if ( &right ==
this ) {
return *
this; }
55 m_node.reset( right.m_node->clone() );
60 if ( &right ==
this ) {
return *
this; }
63 const Node& _node =
dynamic_cast<const Node&
>( right );
64 node = _node.
m_node->clone();
virtual std::ostream & fillStream(std::ostream &s) const =0
printout of the stream
virtual iNode * clone() const =0
clone method ("virtual constructor")
Node * clone() const override
MANDATORY: clone method ("virtual constructor")
std::ostream & fillStream(std::ostream &s) const override
MANDATORY: the specific printout.
bool valid() const override
MANDATORY: check the validity of the node.
Node & op_and(const iNode &right)
StatusCode validate(const Gaudi::Interfaces::IParticlePropertySvc *svc) const override
MANDATORY: the proper validation of the node.
virtual std::string toString() const
the string representation of the node
Node & operator=(const Node &right)
assignment operator:
bool valid(Iterator begin, Iterator end)
check the validness of the trees or nodes
Node & op_or(const iNode &right)
bool operator()(const Gaudi::ParticleID &p) const override
MANDATORY: the only one essential method.
std::unique_ptr< iNode > m_node
the node itself:
virtual bool operator!() const
invalid node?
Node(const Decays::iNode &node)
constructor from the node