-
Notifications
You must be signed in to change notification settings - Fork 27
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
Commonisation of serializers and publishers. #148
Open
Autumn60
wants to merge
64
commits into
develop
Choose a base branch
from
feature/commonPublisher
base: develop
Could not load branches
Branch not found: {{ refName }}
Could not load tags
Nothing to show
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Feature/common publisher
Autumn60
changed the title
Common serializers and publishers
Commonisation of serializers and publishers.
Feb 20, 2024
Feature/common publisher
Feature/common publisher
@Autumn60 |
@RyodoTanaka |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Notice: This PR is less backward compatible.
Before merging, [master_2.x.x] branch must be created from the current [master] branch.
en
Commonisation of serializers and publishers
All "Sensor" classes, except a few such as TF, now have interface to the data provided by each sensor.
"Serializer" classes and "Publisher" classes are now dependent on the interface of the corresponding data, not the "Sensor" classes.
This change allows "Sensor"s that provide common data to send data with a common "Serializer" and "Publisher" scripts.
Also, scripts that are not "Sensor" can now be used as data sources from Serializer and Publisher if they have a corresponding interface.
PointCloud2 data serialisation method change
Change from a method using JobSystem to a method using memory copy.
RGBDCamera
RGBD camera with PointXYZRGB point cloud output implemented.
jp
SerializerPublisherの共通化
TFなどの一部を除くすべての "Sensor "クラスは、各センサーが提供するデータへのインターフェイスを持つようになりました。
「Serializer "クラスと "Publisher "クラスは、"Sensor "クラスではなく、対応するデータのインターフェースに依存するようになりました。
この変更により、共通のデータを提供する "Sensor "は、共通の "Serializer "と "Publisher "スクリプトでデータを送信できるようになりました。
また、"Sensor "ではないスクリプトでも、対応するインターフェイスがあれば、"Serializer "や "Publisher "のデータソースとして使用できるようになりました。
PointCloud2データのmsg化方法の変更
JobSystemを用いる方法から、メモリコピーを用いる方法に変更しました。
ROS->Unityの座標変換は、PointCloud2のPointFieldの順番を入れ替えることと、JobSystemを用いてx軸(ROSではy軸)を入れ替えることで実現しました。
可読性が酷いことになっていますが、
各点の4 byte 目に128を足す = 各点の1つ目の4 byte型(float)の1 bit 目を反転させる = 各点のxの値を反転させる
処理をしています。
RGBDカメラ復活
実装を見直したことで、RGBDカメラが再び実装されました。