There was a problem fetching the pipeline summary.
modernization of Property
This is a major rewrite of the system of `Property` classes. Started as the implementation of GAUDI-1214, it continued as a review of `IProperty` and `PropertyMgr`, to end up in a complete rewrite (and optimization) of `PropertyWithValue`. * Fixes GAUDI-1214 - added missing `declareProperty` signature - added `PropertyHolder` (an updated `PropertyMgr`) - adapted all properties in Gaudi * improved use of `PropertyHolder` - use inheritance instead of composition - removed ~200 (duplicated) lines of code in GaudiKernel * optimization of Property (fixes GAUDI-1229) - use templates and automatic code generation to handle efficiently both value and reference properties - avoid creation of values on the heap (see GAUDI-1229) - removed the *owned* boolean flag - improved usability of properties (e.g. begin/end wrappers for C++11 loops, increment/decrement operators...) - deprecated use of C arrays as properties - merged features of `PropertyWithVerifier`, `SimpleProperty` and `SimplePropertyRef` into `PropertyWithValue` - deduplication of name and doc strings via [`boost::string_ref`](http://www.boost.org/doc/libs/1_61_0/libs/utility/doc/html/string_ref.html) and a static storage (see GAUDI-1229) * Fixes GAUDI-1205 * add deprecation warnings in service accessors of `Algorithm` (@graven) * renamed `Property` base class to `Gaudi::Details::PropertyBase` and `PropertyWithValue` to `Gaudi::Property` - added backward compatibility type aliases (but not compatible with forward declarations of `class Property`, which should be replaced by `#include "GaudiKernel/PropertyFwd.h"`) * added macro `GAUDI_PROPERTY_v2` to allow easy implementation of backward compatible changes in derived projects (e.g. when user code relied on `DoubleProperty` having a verifier) * Fixes GAUDI-1268 The changes are as backward compatible as much as possible (except if you explicitly inherit from `SimpleProperty`, or you forward declared `class Property`, which now are typedefs), but must be validated in the experiment frameworks. See merge request !182
No related branches found
No related tags found
Pipeline #
Showing
- GaudiAlg/GaudiAlg/EventCounter.h 37 additions, 38 deletionsGaudiAlg/GaudiAlg/EventCounter.h
- GaudiAlg/GaudiAlg/GaudiAlgorithm.h 89 additions, 110 deletionsGaudiAlg/GaudiAlg/GaudiAlgorithm.h
- GaudiAlg/GaudiAlg/GaudiCommon.h 194 additions, 211 deletionsGaudiAlg/GaudiAlg/GaudiCommon.h
- GaudiAlg/GaudiAlg/GaudiHistoAlg.h 1 addition, 1 deletionGaudiAlg/GaudiAlg/GaudiHistoAlg.h
- GaudiAlg/GaudiAlg/GaudiHistos.h 467 additions, 767 deletionsGaudiAlg/GaudiAlg/GaudiHistos.h
- GaudiAlg/GaudiAlg/GaudiHistos.icpp 187 additions, 285 deletionsGaudiAlg/GaudiAlg/GaudiHistos.icpp
- GaudiAlg/GaudiAlg/GaudiSequencer.h 42 additions, 43 deletionsGaudiAlg/GaudiAlg/GaudiSequencer.h
- GaudiAlg/GaudiAlg/GaudiTool.h 140 additions, 176 deletionsGaudiAlg/GaudiAlg/GaudiTool.h
- GaudiAlg/GaudiAlg/GaudiTuples.h 78 additions, 159 deletionsGaudiAlg/GaudiAlg/GaudiTuples.h
- GaudiAlg/GaudiAlg/GaudiTuples.icpp 236 additions, 233 deletionsGaudiAlg/GaudiAlg/GaudiTuples.icpp
- GaudiAlg/GaudiAlg/Prescaler.h 30 additions, 31 deletionsGaudiAlg/GaudiAlg/Prescaler.h
- GaudiAlg/GaudiAlg/Sequencer.h 205 additions, 220 deletionsGaudiAlg/GaudiAlg/Sequencer.h
- GaudiAlg/src/components/EventNodeKiller.cpp 0 additions, 11 deletionsGaudiAlg/src/components/EventNodeKiller.cpp
- GaudiAlg/src/components/EventNodeKiller.h 9 additions, 10 deletionsGaudiAlg/src/components/EventNodeKiller.h
- GaudiAlg/src/components/SequencerTimerTool.cpp 1 addition, 6 deletionsGaudiAlg/src/components/SequencerTimerTool.cpp
- GaudiAlg/src/components/SequencerTimerTool.h 12 additions, 21 deletionsGaudiAlg/src/components/SequencerTimerTool.h
- GaudiAlg/src/components/TimingAuditor.cpp 170 additions, 160 deletionsGaudiAlg/src/components/TimingAuditor.cpp
- GaudiAlg/src/lib/EventCounter.cpp 0 additions, 1 deletionGaudiAlg/src/lib/EventCounter.cpp
- GaudiAlg/src/lib/GaudiAlgorithm.cpp 0 additions, 5 deletionsGaudiAlg/src/lib/GaudiAlgorithm.cpp
- GaudiAlg/src/lib/GaudiCommon.icpp 303 additions, 384 deletionsGaudiAlg/src/lib/GaudiCommon.icpp
Loading
Please register or sign in to comment