-
Notifications
You must be signed in to change notification settings - Fork 4.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make all registry data members non-mutable #167
Make all registry data members non-mutable #167
Conversation
The following categories have been signed by chrjones (a.k.a. @Dr15Jones on GitHub): Core @cms-git-visualization, @cms-git-core, @cms-git-geometry |
void initializeTransients() {transient_.reset();} | ||
|
||
struct Transients { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I assumed this stayed to avoid backwards compatibility problems?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Possible backward compatibility problems was one reason.
Other reasons: - Removing it forces tricky changes in classes_def.xml which are non-trivial to get right, if they work at all.
- Future proofing against a subsequent addition of new transient data members.
- Standardization: Keeping it makes it like other registries.
Bill
Hi, |
Make all registry data members non-mutable
…-ib-pages Generate a summary json file with the latest IB per release queue
fixed dataFormat change 706-->723
…_uGMT-dev uGMT developments
add plots of Ch-higgs_Pt, add TTBar category classification
Backport DRNN clustering + ntuple updates
Pre-compute few constants that could not be declared constexpr. Reduce temporary buffer size. Reduce the block size of the calls to gpuPixelDoublets::getDoubletsFromHisto() from 256 to 64, to make better usage of the GPU processors.
* Revert "Revert "Fix for trkMVA branch in trackTree" (cms-sw#164)" This reverts commit f793d57. in official AOD: floats_generalTracks_MVAValues_RECO.obj : vector<float>
* Revert "Revert "Fix for trkMVA branch in trackTree" (cms-sw#164)" This reverts commit f793d57. in official AOD: floats_generalTracks_MVAValues_RECO.obj : vector<float>
Candidate ranking à la CMSSW
This pull request is another small step towards the multithreaded framework. It eliminates the last three mutable data members from registries. The Parentage, ProcessConfiguration, and ProcessHistory classes each contained a mutable cached hash id used for storage in a registry. In the case of Parentage, the cached ID is simply removed, because it is not needed. In the case of the other two classes, the cached ID is made non mutable. The "id()" function remains const, because, while it still reads from the cache, it no longer fills the cache. A new "set" function fills the cache when needed.
Also, in the case of Parentage, a non-const function with the same name as a const function is removed and replaced with other functions.
Also, "for" loops affected by this change are changed to C++11 range for loops.
This code has been fully tested with checkdeps -a. All framework unit tests and relval matrix tests pass.