Skip to content

Commit 6748dbd

Browse files
committed
deploy: 3574b49
0 parents  commit 6748dbd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+6371
-0
lines changed

.buildinfo

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Sphinx build info version 1
2+
# This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
3+
config: ec85d9fc5aea960c7ce9192c77dd4eae
4+
tags: 645f666f9bcd5a90fca523b33c5a78b7

.doctrees/api.doctree

2.95 KB
Binary file not shown.

.doctrees/design.doctree

11.6 KB
Binary file not shown.

.doctrees/environment.pickle

2.57 MB
Binary file not shown.

.doctrees/index.doctree

9.48 KB
Binary file not shown.

.doctrees/installation.doctree

7.48 KB
Binary file not shown.

.doctrees/usage.doctree

8.64 KB
Binary file not shown.

.nojekyll

Whitespace-only changes.

_sources/api.rst.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
API
2+
=====
3+
4+
5+
.. autosummary::
6+
:toctree: _autosummary
7+
:recursive:
8+
9+
ros_typedb.typedb_interface
10+
ros_typedb.ros_typedb_interface

_sources/design.rst.txt

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
Design
2+
======
3+
4+
5+
The integration between ROS and TypeDB is implemented with 2 classes,
6+
`TypeDBInterface <TypeDBInterfaceLink>`_ and
7+
`ROSTypeDBInterface <ROSTypeDBInterfaceLink>`_.
8+
9+
The `TypeDBInterface <TypeDBInterfaceLink>`_ class interacts with the typeDB
10+
database using the `typedb python api <PythonAPILink>`_, and it contains basic
11+
functionalities that are common for all applications,
12+
such as `insert_database <InsertDatabaseLink>`_ and
13+
`match_database <MatchDatabaseLink>`_.
14+
15+
The `ROSTypeDBInterface <ROSTypeDBInterfaceLink>`_ class is a ROS 2
16+
`LifeCycle <LifeCycleLink>`_ Node, and it implements 2 ROS interfaces.
17+
A ROS service server :code:`ros_typedb_interface/query` that is used to query
18+
the database, which uses the `Query.srv <QuerySrvLink>`_ service type. And the
19+
ROS topic :code:`ros_typedb_interface/events`, where it publishes insert and
20+
delete events when data is inserted or deleted from the database with the query
21+
service.
22+
23+
Class diagram:
24+
25+
.. raw:: html
26+
27+
<embed>
28+
<p align="center">
29+
<img src="https://github.com/Rezenders/ros_typedb/assets/20564040/4cf4f799-3dab-40c4-a323-8d1e8e376e62" width="500">
30+
</p>
31+
</embed>
32+
33+
Overview:
34+
35+
.. raw:: html
36+
37+
<embed>
38+
<p align="center">
39+
<img src="https://github.com/Rezenders/ros_typedb/assets/20564040/53793f23-0cb2-42c8-8c3b-fbfa5764ab5b" width="500">
40+
</p>
41+
</embed>
42+
43+
.. TypeDBInterfaceLink: https://github.com/Rezenders/ros_typedb/blob/main/ros_typedb/ros_typedb/typedb_interface.py
44+
.. ROSTypeDBInterfaceLink: https://github.com/Rezenders/ros_typedb/blob/main/ros_typedb/ros_typedb/ros_typedb_interface.py
45+
.. PythonAPILink: https://typedb.com/docs/clients/2.x/python/python-tutorial.html
46+
.. InsertDatabaseLink: https://github.com/Rezenders/ros_typedb/blob/c16e3f8f1958f4ac2333c7b7d0612c8c79d698a0/ros_typedb/ros_typedb/typedb_interface.py#L153
47+
.. MatchDatabaseLink: https://github.com/Rezenders/ros_typedb/blob/c16e3f8f1958f4ac2333c7b7d0612c8c79d698a0/ros_typedb/ros_typedb/typedb_interface.py#L175
48+
.. LifeCycleLink: https://design.ros2.org/articles/node_lifecycle.html
49+
.. QuerySrvLink: https://github.com/Rezenders/ros_typedb/blob/main/ros_typedb_msgs/srv/Query.srv

0 commit comments

Comments
 (0)