|
[Rivet-svn] rivet: Intermediate stage. Todo: overload old fill methods in tu...Rivet Mercurial rivet at projects.hepforge.orgTue Oct 25 18:15:01 BST 2016
details: https://rivet.hepforge.org/hg/rivet/rev/94d82e2f972f branches: multiweight changeset: 5575:94d82e2f972f user: David Grellscheid <david.grellscheid at durham.ac.uk> date: Tue Oct 25 18:14:17 2016 +0100 description: Intermediate stage. Todo: overload old fill methods in tuple wrappers diffs (truncated from 83 to 50 lines): --- a/include/Rivet/Tools/RivetYODA.hh Tue Oct 25 17:56:41 2016 +0100 +++ b/include/Rivet/Tools/RivetYODA.hh Tue Oct 25 18:14:17 2016 +0100 @@ -149,6 +149,13 @@ using Fills = multiset<Fill<T>>; +// TODO TODO TODO +// need to override the old fill method too! +// otherwise we can't intercept existing fill calls in analysis code +// +// need to +// TODO TODO TODO + template <class T> class TupleWrapper : public T { public: @@ -156,8 +163,6 @@ TupleWrapper(const T & h) : T(h) {} - using T::fill; - // todo: do we need to deal with users using fractions directly? void fill(typename T::FillType x, double weight=1.0, double fraction=1.0) { fills_.insert( {x, weight} ); @@ -298,23 +303,14 @@ }; - -using Histo1DTuple = TupleWrapper<YODA::Histo1D>; - - - // every object listed here needs a virtual fill method in YODA, // otherwise the Tuple fakery won't work. using Histo1DPtr = Wrapper<YODA::Histo1D>; - - using Histo2DPtr = Wrapper<YODA::Histo2D>; - - //RIVETAOPTR_COMMON(Histo1D) - // RIVETAOPTR_COMMON(Histo2D) - // RIVETAOPTR_COMMON(Profile1D) - // RIVETAOPTR_COMMON(Profile2D) - // RIVETAOPTR_COMMON(Counter) + //using Histo2DPtr = Wrapper<YODA::Histo2D>; + using Profile1DPtr = Wrapper<YODA::Profile1D>; + using Profile2DPtr = Wrapper<YODA::Profile2D>; + using CounterPtr = Wrapper<YODA::Counter>;
More information about the Rivet-svn mailing list |