Resolve "TQMultiObservable should lazily evaluate subObservables"
Release notes
Lazy evaluation of components in TQMultiObservable: if using Root >6.06 (i.e. Rel21+) TQMultiObservable now only evaluates subobservables when really needed. This allows, e.g., for easier handling of quantities that are only defined under certain conditions like DYjj requiring at least two jets in the event. For example the expression '[nJets]>1 ? [DYjj] : -999.' will only evaluate the DYjj observable if the value of the nJets observable is >1 for the respective event.
Details
see issue closed by this MR. Also note again that this only affects things when compiling against ROOT 6.06+ as the TFormula constructor needed to make this work was only introduced in 6.06!
Closes #162 (closed)
Merge request reports
Activity
added 1 commit
- e77332a6 - slight compiler soothing (preventing a warning)
added 1 commit
- d1363bec - adding old code back in (with root version switch) to fix compillation in Root 6.04
assigned to @rgugel
added 1 commit
- 2e870892 - donot compile expression again after parsing in TQMultiObservable
- Resolved by Ralf Gugel
added 49 commits
-
c42c009a...a884955d - 48 commits from branch
master
- 2b9d69d3 - Merge remote-tracking branch 'origin/master' into…
-
c42c009a...a884955d - 48 commits from branch
mentioned in issue #171
mentioned in commit 91d3adaf