Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
298cc9f
add parameters support for the java snapshot model
ipa-nhg Feb 17, 2020
a8980af
add interfaces for parameters and update java model output
ipa-nhg Feb 18, 2020
ee955c2
Added 2 services for ros and rossystem models
hsd-dev Feb 20, 2020
f7cf8f0
add except if can't connect to service
ipa-nhg Feb 25, 2020
b1440ad
formatting
hsd-dev Mar 20, 2020
02ded69
add parameters support for the java snapshot model
ipa-nhg Feb 17, 2020
cd6df77
Added 2 services for ros and rossystem models
hsd-dev Feb 20, 2020
2b3458c
readded deleted modules and avoid duplicated code
ipa-nhg Mar 20, 2020
56d66b3
[Fix]the Rossystem generated file missed 2 close braces ("}}") for st…
ipa-nhg Mar 23, 2020
aeec92a
[Fix] syntax ros actions definition for the java snapshot method
ipa-nhg Mar 24, 2020
640aa75
resolved merge conflict
hsd-dev Mar 25, 2020
2f724bd
Fix braces for nested params
hsd-dev Apr 18, 2020
48b0618
remove application(cob4-3) specific configuration
ipa-nhg Apr 20, 2020
fe682f1
Merge pull request #5 from ipa-hsd/fix_braces
ipa-nhg Aug 27, 2020
8a22a9f
Adaptation for the cob4 experiments
ipa-nhg Sep 1, 2020
ef3edf6
Merge pull request #6 from ipa-nhg/SoSymPaper
ipa-nhg Sep 6, 2020
07badb9
add service clients to the model parser
ipa-nhg Jan 15, 2021
f811edc
add service clients to the model parser
ipa-nhg Jan 15, 2021
1b0e487
update the python API to support the new models format see https://gi…
ipa-nhg Mar 9, 2021
715d8aa
Merge pull request #8 from ipa-nhg/SoSymPaper
ipa-nhg Mar 29, 2021
0442adb
Merge pull request #7 from ipa-nhg/NewRosModelVersion0803
ipa-nhg Mar 31, 2021
61207a4
Add support for python3
Rezenders Aug 27, 2021
5b32727
Merge pull request #9 from Rezenders/patch-1
ipa-nhg Aug 30, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 2 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ catkin_python_setup()

add_service_files(
FILES
Scan.srv
GetROSModel.srv
GetROSSystemModel.srv
)

generate_messages()
Expand All @@ -18,10 +19,6 @@ catkin_package(
CATKIN_DEPENDS message_runtime
)

install(DIRECTORY launch
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
)

catkin_install_python(PROGRAMS scripts/ros_node
scripts/print_snapshot
scripts/java_snapshot
Expand Down
9 changes: 5 additions & 4 deletions package.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
<package format="2">
<package format="3">
<name>ros_graph_parser</name>
<version>0.0.1</version>
<description>parser of ros graph</description>
Expand All @@ -12,12 +12,13 @@


<buildtool_depend>catkin</buildtool_depend>

<build_depend>message_generation</build_depend>

<exec_depend>message_runtime</exec_depend>
<exec_depend>message_runtime</exec_depend>
<exec_depend>rospy</exec_depend>
<exec_depend>python-yaml</exec_depend>
<exec_depend condition="$ROS_PYTHON_VERSION == 2">python-yaml</exec_depend>
<exec_depend condition="$ROS_PYTHON_VERSION == 3">python3-yaml</exec_depend>

<export>

Expand Down
30 changes: 14 additions & 16 deletions scripts/ros_node
Original file line number Diff line number Diff line change
Expand Up @@ -8,26 +8,24 @@ import rospy
class RosGraphNode():

def __init__(self):
rospy.Service('scan_ros_graph', rg_srv.Scan, self.create_snapshot)

def create_snapshot(self, request):
answer = rg_srv.ScanResponse()
answer.success, answer.message, answer.rosgraph = self._create_snapshot()
rospy.Service('get_ros_model', rg_srv.GetROSModel,
self.get_ros_model)

rospy.Service('get_rossystem_model', rg_srv.GetROSSystemModel,
self.get_rossystem_model)

def get_ros_model(self, request):
answer = rg_srv.GetROSModelResponse()
answer.success, answer.message, answer.model = rg.create_java_ros_model()
return answer

def _create_snapshot(self):
try:
snapshot = rg.create_ros_graph_snapshot()
dump = dict()
dump['nodes']=dict()
for node in snapshot:
dump['nodes'][node.name] = node.dump_yaml()
return True, "Scanning Succeeded", str(dump)
except:
return False, "Scanning Failed", ""
def get_rossystem_model(self, request):
answer = rg_srv.GetROSSystemModelResponse()
answer.success, answer.message, answer.model = rg.create_java_system_model()
return answer


if __name__ == "__main__":
rospy.init_node("ros_graph_parser_node")
RosGraphNode()
rospy.spin()
rospy.spin()
Loading