-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
Refactor MaskMap
and deprecate several of its methods
#3399
Conversation
Just a small pr to introduce myself. |
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! Sorry for the delay. Real life gets in the way for the maintainers sometimes :)
I've just taken a quick look Thanks for the contribution in advance
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.
Hey, welcome to PCL, and thanks for contributing!
@@ -65,10 +65,16 @@ namespace pcl | |||
inline const unsigned char* | |||
getData () const { return (&data_[0]); } | |||
|
|||
[[deprecated("output parameter is not desirable,\ |
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.
[[deprecated("output parameter is not desirable,\ | |
[[deprecated("use getDifferenceMask() with return value instead")]] |
For deprecation messages, we generally try to stick to "use %signature% instead" template. The %signature% part does not have to be a formal signature but should be sufficient to understand which function/overload is meant.
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.
Ok, cheers
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 for the noise. Time and again, I press "approve" instead of "comment"/"request changes" when finishing a review, grrr.
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.
This set of comments is just nitpicks. Not required. LGTM
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.
One minor improvement for the PCL_NODISCARD
macro please
🚀 if CI is a go |
Build.Ubuntu fails because of "no space left on the device" |
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.
Is there any intent to fix or mitigate this issue? Is it considered an issue at all?
Yes, this is an issue, which will get easier to debug after clang-9 is released. Feel free to address this since we have limited time and manpower.
Anyone knows what is going on?
That'd my fault. I added a cache to speed up compilations which succeeded, but now we are exceeding the memory limits. I'm hesitant to fiddle with cache size. Maybe reducing cache size to 7 GB or even smaller might work, but it might affect compilation times (which fell 45%). Meanwhile, @taketwo has created an issue with Azure to possibly give extra disk space for open source projects since it affects WIndows (without cache) too. See #3387 for details
For c++17 in converts to [[nodiscard]] othwerwise, just empty macro
Quick refactor to mask_map to make it more into C++14 - "default" to mark default constructor and destructor - default values for member variables instead of default constructor - avoid output parameters passed by reference, RVO will make the job for us
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 rebased on current master and added a commit that removes usage of deprecated signature within PCL.
@lightyear15 I've created #3414 so you can find the offending compilation units. There are some low lying fruits like per-initializing some templates which might interest you |
MaskMap
and deprecate several of its methods
Quick refactor to mask_map to make it more into C++14
us
This PR deprecates
void getDifferenceMask(const MaskMap&, const MaskMap&, MaskMap&)
in favor of a new overload with return value instead of output parameter.