-
Notifications
You must be signed in to change notification settings - Fork 37
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
MeshBlock Cleanup and Smart Backpointers. Resolves #306. #307
Conversation
… constructors. Factory method necessary to implement back pointers as weak.
@AndrewGaspar I believe all your requested changes have been implemented. |
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.
GetBlockPointer
is a mouthful, but I'll accept it.
@pgrete @forrestglines can I get one more approval from the Athena team? |
Yeah. I know. |
Co-authored-by: Philipp Grete <[email protected]>
Co-authored-by: Philipp Grete <[email protected]>
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.
Looks good and the cleanup of the constructors was well overdue.
Given the extent of the changes I'll trigger the full test now.
Once that passes this can get merged from my point of view.
Codecov Report
@@ Coverage Diff @@
## develop #307 +/- ##
===========================================
- Coverage 56.71% 56.69% -0.03%
===========================================
Files 99 99
Lines 10441 10445 +4
===========================================
Hits 5922 5922
- Misses 4519 4523 +4
Continue to review full report at Codecov.
|
Pulling the trigger. |
PR Summary
As discussed in #306 and #303, smart pointers to meshblocks means we can use them elsewhere in the code, for example, with weak back pointers. This Implements that change.
In addition, I substantially clean up the MeshBlock class. I noticed that all three constructors had the same functionality copy-pasted. I therefore removed all but one of them. I also changed the constructors to a factory method. This was necessary because of a subtlety with smart pointers. You cannot create a weak pointer to an object in its own constructor.
PR Checklist