-
Notifications
You must be signed in to change notification settings - Fork 134
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
Collective Perception Service - Core #251
base: master
Are you sure you want to change the base?
Conversation
EnvmodPrinter did only print the Artery-internal station ID of objects which it not persistent. Now it also prints the external (TraCI) ID simplifying debugging of radar systems etc.
the IdentityRegistry
Just overriding the staged initialize method is not enough, the returned number of init stages must also be adjusted to the number of required stages. Additionally update the code to allow derived classes to use single-stage initialization easily, for these classes it is enough to just override the single-stage initialization method, it is not required anymore to overrided the multi-stage initialization method.
`StationID` as type for the `objectID` in `PerceivedObject`
Try to match the recent code style of the project.
Add some additional settings that match the default settings for semantic reasons.
Such module requires exactly one Simple Module Submodule that implements the ItsG5BaseService C++ interface.
Allow longer lines and two consecutive empty lines.
This prevents a unnecessary type conversion.
Allow short blocks on a single line.
Return the internal map for entries like the LocalEnvironmentModel does to be able to access all stores CAM's easily. Replaces the method to return a CAM of a specific station.
Thanks @sodevel for providing this branch for discussion. I am fine with most commits.
|
|
Hi @sodevel, please have a look at my cpservice_core branch I have just pushed. What do you think of it? I have implemented 1) by I have also removed the |
The branch is looking good to me, thanks for the additions. About the clang-format specification, i tried to replicate the current code style. However, there is not a unified style used accross the whole code base, i tried to use the style that seemed current to me, i changed some small aspects because of personal preference, some results are because of limitations of clang-format itself. I did not use automatic tooling to apply the formatting, i only used the Can you be more specific about what clang-format changes what it shouldn't? For testing, i formatted a bunch of files and these are my observations. Intended changes:
More or less unwanted changes:
If you are concerned about to mess up Let me know what i can clean up of my other PR before you merge it. |
Can you please move the clang-format stuff to a separate branch where we can further discuss the formatting-specific issues? In general, I am fine with clang-format, and I see the value of having a suitable |
Format related PR seems to be merged. Any update on this PR? |
I have just merged cpservice_core into master. Are you referring to any specific further parts of this PR @mfyuce? |
Thank you so much @riebl, really appreciated and want to say from my heart that really good work. I will check out. Currently researching ways to integrate CPM messages into the VereMI dynamic dataset and hopefully open source it, if you kindly willing to accept. Any help is appreciated. |
This PR does not contain anything CPM related except the patching of the CPM message format which was not merged. All CPM related functionality is part of #252, but for that one to work, an alternate solution to use "extended" CPMs must be implemented first. |
Thank you @sodevel, i will look into it. Recently read a paper implying they have integrated CPM with artery, but no source code published.
I have contacted the authors, will inform about their response. |
These are the core Artery changes required for #249.
The way the patching of the CP message format is done is not optimal, it results in a dirty source tree. This wasn't done by me because back in the days i had no idea about that CMake stuff, this is a bit different now. It would be better to copy the source files that require patching into the binary tree and patch them there, but currently this doesn't work because the files use quoted includes.
If i understand the CMake files of Vanetza right, they contain the code to actually compile the C++ files that are included in the repository from the ASN1 files and perform some intense post-processing. This post-processing also changes the angle includes into quoted includes. If the angle includes would be kept, putting the binary tree before the source tree in the include path would be sufficient to pick up the patched header file instead of using the original one (selecting the correct source file is easily done by CMake code).