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
Return HitRZCompatibility and TrackingRegion by unique_ptr in TrackingRegion #28704
Conversation
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-28704/13285
|
A new Pull Request was created by @makortel (Matti Kortelainen) for master. It involves the following packages: RecoTracker/ConversionSeedGenerators @perrotta, @cmsbuild, @slava77 can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@cmsbuild, please test |
The tests are being triggered in jenkins. |
+1 |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1
|
This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @davidlange6, @slava77, @smuzaffar, @fabiocos, @silviodonato (and backports should be raised in the release meeting by the corresponding L2) |
return nullptr; | ||
} | ||
|
||
CosmicTrackingRegion* clone() const override { return new CosmicTrackingRegion(*this); } | ||
std::unique_ptr<TrackingRegion> clone() const override { return std::make_unique<CosmicTrackingRegion>(*this); } |
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.
Are you replacing CosmicTrackingRegion into TrackingRegion on purpose?
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.
Yes, covariant return types work only with raw pointers, not with smart pointers. And nothing seemed to make use of the covariant return types.
|
||
GlobalTrackingRegion* clone() const override { return new GlobalTrackingRegion(*this); } | ||
std::unique_ptr<TrackingRegion> clone() const override { return std::make_unique<GlobalTrackingRegion>(*this); } |
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.
similarly here
return checkRZOld(layer, outerHit, iSetup, outerlayer); | ||
} | ||
|
||
RectangularEtaPhiTrackingRegion* clone() const override { return new RectangularEtaPhiTrackingRegion(*this); } | ||
std::unique_ptr<TrackingRegion> clone() const override { |
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.
and here
+1 |
PR description:
Returning by
unique_ptr
makes the ownership clear, guarantees deletion, and silences static analyzer warnings.PR validation:
Code compiles.