-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[RF] Make RooFitResult set methods public #12017
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
[RF] Make RooFitResult set methods public #12017
Conversation
|
Can one of the admins verify this patch? |
|
@phsft-bot build |
|
Starting build on |
guitargeek
left a comment
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.
Hi @will-cern, thank you very much for this PR!
I have made a few comments inline.
In general, is it possible to have the following functions still protected?
void fillCorrMatrix() ;
void fillLegacyCorrMatrix() const ;
void fillPrefitCorrMatrix();
double correlation(Int_t row, Int_t col) const;
double covariance(Int_t row, Int_t col) const;
The first three are implementation details and don't make sense to be called by anyone I think, right? They don't even take input arguments.
And the final two are not needed because you can just do things like correlationMatrix()(row, col) instead.
guitargeek
left a comment
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.
Sorry, pushed the wrong button. I request changes of course.
Also, please remember to code-format the xRooFit.cxx file after implementing the suggestions 👍
|
Thanks for the review - I think all responded to now |
|
Build failed on ROOT-performance-centos8-multicore/cxx17. Errors:
|
|
Build failed on mac11/cxx14. Errors:
|
|
Build failed on ROOT-ubuntu2004/python3. Errors:
|
guitargeek
left a comment
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.
Hi Will, thanks for the updates!
I just have a few more inline comment. I also tried to compile the code on my machine, and I got a warning in xRooFit line 508 because of the unused bool save = true; variable. can you please remove this line?
Also, sorry for not being clear earlier, but when I asked to make the fillCorrMatrix() protected again, I only meant the overload that doesn't take parameters. Also, you made setStatusHistory protected now, but it should be public.
In other words, these two overloads need to be made public now:
void fillCorrMatrix(const std::vector<double>& globalCC, const TMatrixDSym& corrs, const TMatrixDSym& covs) ;
void setStatusHistory(std::vector<std::pair<std::string,int> >& hist) { _statusHistory = hist ; }
One more thing: can you please squash the commit history such that there are again only two commits, one for xroofit and one for roofit? We don't need all the commits for addressing the review comments. Normally I would squash-on-merge, but then I can only squash to one single commit. And it would be nice to keep the history of roofit and xroofit separate.
|
yes this was my fault for not checking it compiled first before pushing, I should have spotted this! |
|
Build failed on windows10/cxx14. |
b5b2f77 to
eeb1fdf
Compare
|
@phsft-bot build |
|
Starting build on |
|
Build failed on windows10/cxx14. Errors:
|
eeb1fdf to
203909d
Compare
|
@phsft-bot build |
|
Starting build on |
|
Build failed on windows10/cxx14. Errors:
|
This allows non-friends to construct RooFitResults, which allows for the removal of protected->public override in xRooFit for this class.