-
-
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
Add pcl::index_t
; move some type declarations from pcl/pcl_macros.h
to pcl/types.h
#3651
Conversation
16d1cea
to
ccfd319
Compare
Can we change the name of |
As I have explained here, I would make unsigned indices the default, not signed ones. |
The current usage is Nothing against your argument, simply there needs to be a roadmap to the final change, and no matter what the target is, I feel this is the road to take:
|
Makes sense, but wouldn't it already be "breaking" when switching from |
Good point. I'd have to revisit the code and maintain compatibility for this release. Thanks for noticing that |
Agreed
At first sight yes, yes and yes. |
d4e2554
to
e2f4362
Compare
ae96197
to
6507970
Compare
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.
LGTM. You're moving the int types from pcl_macros.h
to pcl_types.h
. This will break consumer code.
Do we need to call the new header pcl_types.h
, when it already resides in <pcl/....>
. How about <pcl/types.h>
?
Nope. Just following the names of other files.
That's unfortunate, but I don't see a way around that. The breakage can be prevented by breaking |
We have some similar looking meta-programming on integer types in type_traits.h and types.h |
Do you mean |
I mean the two parallel PRs, this one and the one about Not the same logic about integer types, but similar. |
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'm not really sure what feedback is still missing but feel free to merge from my side.
Oh none. It was added quite early on and just didn't get removed Waiting for the CI before merge |
Do I understand right that "API break" refers to the fact that some types were moved out of |
Yes |
pcl::index_t
pcl::index_t
; move some type declarations from pcl/pcl_macros.h
to pcl/types.h
OK. I've updated the title and the PR description to provide more insight. Remember that PRs that end up in the "Notable changes" section of the changelog (and especially the "API break" ones) are likely to be noticed/read by our users. I imagine the following process:
Taking this PR as an example, the "API break" label is confusing given that the title is simply "Adding configurable Sidenote: this is another reason why we prefer granular PRs. If the PR title for the changelog needs to contain two clauses joined by a semicolon, then these probably should have been two PRs in the first place. |
So what are the next steps after |
I'll be trying for 1.11 (replacing |
@kunaltyagi I think I found an error (a bit late, I know, sorry). |
I think I recently sent a patch for that, included in #3822 |
Ah yes, that should work. I didn't see that, I just noticed the error on the current master branch. |
tl;dr
A new type
pcl::index_t
is introduced. This type will be used for pointcloud indexing in the future.Breaking change: some type declarations (e.g.
pcl::uint8_t
) we extracted frompcl/pcl_macros.h
to a new header filepcl/types.h
. In most cases, the users of these types do not need to do anything becausepcl/types.h
will be transitively included by other PCL headers.pcl::index_t
and related changesTODO (need to discuss where):
PCL_INDEX_SIZE
andPCL_INDEX_SIGNED
. Might make sense to have a separate PR for this and keep this strictly related to new typepcl::index_t
inIndices