src
rosbridge_library
rosbridge_protocol.py
Go to the documentation of this file.
1
# Software License Agreement (BSD License)
2
#
3
# Copyright (c) 2012, Willow Garage, Inc.
4
# All rights reserved.
5
#
6
# Redistribution and use in source and binary forms, with or without
7
# modification, are permitted provided that the following conditions
8
# are met:
9
#
10
# * Redistributions of source code must retain the above copyright
11
# notice, this list of conditions and the following disclaimer.
12
# * Redistributions in binary form must reproduce the above
13
# copyright notice, this list of conditions and the following
14
# disclaimer in the documentation and/or other materials provided
15
# with the distribution.
16
# * Neither the name of Willow Garage, Inc. nor the names of its
17
# contributors may be used to endorse or promote products derived
18
# from this software without specific prior written permission.
19
#
20
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
30
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
# POSSIBILITY OF SUCH DAMAGE.
32
33
from
__future__
import
print_function
34
from
rosbridge_library.protocol
import
Protocol
35
from
rosbridge_library.capabilities.call_service
import
CallService
36
from
rosbridge_library.capabilities.advertise
import
Advertise
37
from
rosbridge_library.capabilities.publish
import
Publish
38
from
rosbridge_library.capabilities.subscribe
import
Subscribe
39
# imports for defragmentation
40
from
rosbridge_library.capabilities.defragmentation
import
Defragment
41
# imports for external service_server
42
from
rosbridge_library.capabilities.advertise_service
import
AdvertiseService
43
from
rosbridge_library.capabilities.service_response
import
ServiceResponse
44
from
rosbridge_library.capabilities.unadvertise_service
import
UnadvertiseService
45
46
47
48
class
RosbridgeProtocol
(
Protocol
):
49
""" Adds the handlers for the rosbridge opcodes """
50
rosbridge_capabilities = [CallService, Advertise, Publish, Subscribe, Defragment, AdvertiseService, ServiceResponse, UnadvertiseService]
51
52
print(
"registered capabilities (classes):"
)
53
for
cap
in
rosbridge_capabilities:
54
print(
" -"
, str(cap))
55
56
parameters =
None
57
58
def
__init__
(self, client_id, parameters = None):
59
self.
parameters
= parameters
60
Protocol.__init__(self, client_id)
61
for
capability_class
in
self.
rosbridge_capabilities
:
62
self.
add_capability
(capability_class)
rosbridge_library.rosbridge_protocol.RosbridgeProtocol
Definition:
rosbridge_protocol.py:48
rosbridge_library.capabilities.defragmentation
Definition:
defragmentation.py:1
rosbridge_library.protocol.Protocol.parameters
parameters
Definition:
protocol.py:96
rosbridge_library.protocol.Protocol
Definition:
protocol.py:67
rosbridge_library.protocol.Protocol.add_capability
def add_capability(self, capability_class)
Definition:
protocol.py:371
rosbridge_library.capabilities.advertise_service
Definition:
advertise_service.py:1
rosbridge_library.capabilities.service_response
Definition:
service_response.py:1
rosbridge_library.capabilities.publish
Definition:
publish.py:1
rosbridge_library.rosbridge_protocol.RosbridgeProtocol.__init__
def __init__(self, client_id, parameters=None)
Definition:
rosbridge_protocol.py:58
rosbridge_library.capabilities.unadvertise_service
Definition:
unadvertise_service.py:1
rosbridge_library.protocol
Definition:
protocol.py:1
rosbridge_library.capabilities.advertise
Definition:
advertise.py:1
rosbridge_library.capabilities.call_service
Definition:
call_service.py:1
rosbridge_library.capabilities.subscribe
Definition:
subscribe.py:1
rosbridge_library.rosbridge_protocol.RosbridgeProtocol.rosbridge_capabilities
list rosbridge_capabilities
Definition:
rosbridge_protocol.py:50
rosbridge_library
Author(s): Jonathan Mace
autogenerated on Fri Oct 21 2022 02:45:18