Base class for querying for nodes in the DDExpandedView.
Definition at line 17 of file DDQuery.h.
Definition at line 38 of file DDQuery.cc.
References DDFilter::accept(), begin, criteria_, particleFlowClusterECALTimeSelected_cfi::depth, DDScope::depth(), end, epv_, ALCARECOTkAlBeamHalo_cff::filter, DDExpandedView::geoHistory(), DDExpandedView::next(), DDExpandedView::reset(), mps_fire::result, result_, findQualityFiles::run, SimDataFormats::CaloAnalysis::sc, DDScope::scope(), scope_, DDExpandedView::setScope(), and DDExpandedView::specifics().
49 DDScope::scope_type::const_iterator it = dummy.begin();
50 DDScope::scope_type::const_iterator it_end = dummy.end();
53 it = sc.
scope().begin();
55 scoped = bool(sc.
scope().end()-it);
58 bool runonce = scoped ?
false :
true;
60 while (runonce || (it != it_end) ) {
bool next()
set current node to the next node in the expanded tree
std::vector< const DDsvalues_type * > specifics() const
User specific data attached to the current node.
std::vector< DDExpandedNode > result_
const DDGeoHistory & geoHistory() const
The list of ancestors up to the root-node of the current node.
std::vector< DDGeoHistory > scope_type
int depth(void) const
return the depth to wich the subtrees are restricted
bool setScope(const DDGeoHistory &hist, int depth=0)
sets the scope of the expanded view
defines subtrees in the expanded-view
void reset()
true, if a call to firstChild() would succeed (current node has at least one child) ...
A Filter accepts or rejects a DDExpandedNode based on a user-coded decision rule. ...
std::vector< std::pair< bool, DDFilter * > > criteria_
virtual bool accept(const DDExpandedView &) const =0
true, if the DDExpandedNode fulfills the filter criteria
const scope_type & scope(void) const
returns the scope container