luckyrobots 0.1.63__py3-none-any.whl → 0.1.72__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. luckyrobots/__init__.py +30 -12
  2. luckyrobots/client.py +997 -0
  3. luckyrobots/config/robots.yaml +231 -71
  4. luckyrobots/engine/__init__.py +23 -0
  5. luckyrobots/{utils → engine}/check_updates.py +108 -48
  6. luckyrobots/{utils → engine}/download.py +61 -39
  7. luckyrobots/engine/manager.py +427 -0
  8. luckyrobots/grpc/__init__.py +6 -0
  9. luckyrobots/grpc/generated/__init__.py +18 -0
  10. luckyrobots/grpc/generated/agent_pb2.py +69 -0
  11. luckyrobots/grpc/generated/agent_pb2_grpc.py +283 -0
  12. luckyrobots/grpc/generated/camera_pb2.py +47 -0
  13. luckyrobots/grpc/generated/camera_pb2_grpc.py +144 -0
  14. luckyrobots/grpc/generated/common_pb2.py +43 -0
  15. luckyrobots/grpc/generated/common_pb2_grpc.py +24 -0
  16. luckyrobots/grpc/generated/hazel_rpc_pb2.py +43 -0
  17. luckyrobots/grpc/generated/hazel_rpc_pb2_grpc.py +24 -0
  18. luckyrobots/grpc/generated/media_pb2.py +39 -0
  19. luckyrobots/grpc/generated/media_pb2_grpc.py +24 -0
  20. luckyrobots/grpc/generated/mujoco_pb2.py +51 -0
  21. luckyrobots/grpc/generated/mujoco_pb2_grpc.py +230 -0
  22. luckyrobots/grpc/generated/scene_pb2.py +66 -0
  23. luckyrobots/grpc/generated/scene_pb2_grpc.py +317 -0
  24. luckyrobots/grpc/generated/telemetry_pb2.py +47 -0
  25. luckyrobots/grpc/generated/telemetry_pb2_grpc.py +143 -0
  26. luckyrobots/grpc/generated/viewport_pb2.py +50 -0
  27. luckyrobots/grpc/generated/viewport_pb2_grpc.py +144 -0
  28. luckyrobots/grpc/proto/agent.proto +213 -0
  29. luckyrobots/grpc/proto/camera.proto +41 -0
  30. luckyrobots/grpc/proto/common.proto +36 -0
  31. luckyrobots/grpc/proto/hazel_rpc.proto +32 -0
  32. luckyrobots/grpc/proto/media.proto +26 -0
  33. luckyrobots/grpc/proto/mujoco.proto +64 -0
  34. luckyrobots/grpc/proto/scene.proto +104 -0
  35. luckyrobots/grpc/proto/telemetry.proto +43 -0
  36. luckyrobots/grpc/proto/viewport.proto +45 -0
  37. luckyrobots/luckyrobots.py +252 -0
  38. luckyrobots/models/__init__.py +15 -0
  39. luckyrobots/models/camera.py +97 -0
  40. luckyrobots/models/observation.py +135 -0
  41. luckyrobots/models/randomization.py +77 -0
  42. luckyrobots/{utils/helpers.py → utils.py} +75 -40
  43. luckyrobots-0.1.72.dist-info/METADATA +262 -0
  44. luckyrobots-0.1.72.dist-info/RECORD +47 -0
  45. {luckyrobots-0.1.63.dist-info → luckyrobots-0.1.72.dist-info}/WHEEL +1 -1
  46. luckyrobots/core/luckyrobots.py +0 -619
  47. luckyrobots/core/manager.py +0 -236
  48. luckyrobots/core/models.py +0 -68
  49. luckyrobots/core/node.py +0 -273
  50. luckyrobots/message/__init__.py +0 -18
  51. luckyrobots/message/pubsub.py +0 -145
  52. luckyrobots/message/srv/client.py +0 -81
  53. luckyrobots/message/srv/service.py +0 -135
  54. luckyrobots/message/srv/types.py +0 -83
  55. luckyrobots/message/transporter.py +0 -427
  56. luckyrobots/utils/event_loop.py +0 -94
  57. luckyrobots/utils/sim_manager.py +0 -406
  58. luckyrobots-0.1.63.dist-info/METADATA +0 -251
  59. luckyrobots-0.1.63.dist-info/RECORD +0 -24
  60. {luckyrobots-0.1.63.dist-info → luckyrobots-0.1.72.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,283 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+ from . import agent_pb2 as agent__pb2
7
+
8
+ GRPC_GENERATED_VERSION = '1.76.0'
9
+ GRPC_VERSION = grpc.__version__
10
+ _version_not_supported = False
11
+
12
+ try:
13
+ from grpc._utilities import first_version_is_lower
14
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
15
+ except ImportError:
16
+ _version_not_supported = True
17
+
18
+ if _version_not_supported:
19
+ raise RuntimeError(
20
+ f'The grpc package installed is at version {GRPC_VERSION},'
21
+ + ' but the generated code in agent_pb2_grpc.py depends on'
22
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
23
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
24
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
25
+ )
26
+
27
+
28
+ class AgentServiceStub(object):
29
+ """Per-agent RL-style observation streaming (training / inference clients consume this).
30
+ """
31
+
32
+ def __init__(self, channel):
33
+ """Constructor.
34
+
35
+ Args:
36
+ channel: A grpc.Channel.
37
+ """
38
+ self.GetAgentSchema = channel.unary_unary(
39
+ '/hazel.rpc.AgentService/GetAgentSchema',
40
+ request_serializer=agent__pb2.GetAgentSchemaRequest.SerializeToString,
41
+ response_deserializer=agent__pb2.GetAgentSchemaResponse.FromString,
42
+ _registered_method=True)
43
+ self.GetObservation = channel.unary_unary(
44
+ '/hazel.rpc.AgentService/GetObservation',
45
+ request_serializer=agent__pb2.GetObservationRequest.SerializeToString,
46
+ response_deserializer=agent__pb2.GetObservationResponse.FromString,
47
+ _registered_method=True)
48
+ self.StreamAgent = channel.unary_stream(
49
+ '/hazel.rpc.AgentService/StreamAgent',
50
+ request_serializer=agent__pb2.StreamAgentRequest.SerializeToString,
51
+ response_deserializer=agent__pb2.AgentFrame.FromString,
52
+ _registered_method=True)
53
+ self.ResetAgent = channel.unary_unary(
54
+ '/hazel.rpc.AgentService/ResetAgent',
55
+ request_serializer=agent__pb2.ResetAgentRequest.SerializeToString,
56
+ response_deserializer=agent__pb2.ResetAgentResponse.FromString,
57
+ _registered_method=True)
58
+ self.Step = channel.unary_unary(
59
+ '/hazel.rpc.AgentService/Step',
60
+ request_serializer=agent__pb2.StepRequest.SerializeToString,
61
+ response_deserializer=agent__pb2.StepResponse.FromString,
62
+ _registered_method=True)
63
+
64
+
65
+ class AgentServiceServicer(object):
66
+ """Per-agent RL-style observation streaming (training / inference clients consume this).
67
+ """
68
+
69
+ def GetAgentSchema(self, request, context):
70
+ """Missing associated documentation comment in .proto file."""
71
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
72
+ context.set_details('Method not implemented!')
73
+ raise NotImplementedError('Method not implemented!')
74
+
75
+ def GetObservation(self, request, context):
76
+ """Single-shot observation snapshot (unified observation surface).
77
+ """
78
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
79
+ context.set_details('Method not implemented!')
80
+ raise NotImplementedError('Method not implemented!')
81
+
82
+ def StreamAgent(self, request, context):
83
+ """Server-streaming observations (and optional action echo) for a single agent.
84
+
85
+ The client specifies which agent to stream via StreamAgentRequest and may
86
+ provide a target FPS hint. Actions are currently sent via MujocoService
87
+ (SendControl); AgentFrame.actions is primarily used for telemetry.
88
+ """
89
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
90
+ context.set_details('Method not implemented!')
91
+ raise NotImplementedError('Method not implemented!')
92
+
93
+ def ResetAgent(self, request, context):
94
+ """Reset a specific agent (full reset: clear buffers, reset state, resample commands, apply MuJoCo state).
95
+ Useful for multi-env RL where individual agents need to be reset without resetting the entire scene.
96
+ """
97
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
98
+ context.set_details('Method not implemented!')
99
+ raise NotImplementedError('Method not implemented!')
100
+
101
+ def Step(self, request, context):
102
+ """Synchronous RL step: apply action, wait for physics, return observation.
103
+ This is the recommended interface for RL training as it eliminates
104
+ one network round-trip compared to separate SendControl + GetObservation.
105
+ """
106
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
107
+ context.set_details('Method not implemented!')
108
+ raise NotImplementedError('Method not implemented!')
109
+
110
+
111
+ def add_AgentServiceServicer_to_server(servicer, server):
112
+ rpc_method_handlers = {
113
+ 'GetAgentSchema': grpc.unary_unary_rpc_method_handler(
114
+ servicer.GetAgentSchema,
115
+ request_deserializer=agent__pb2.GetAgentSchemaRequest.FromString,
116
+ response_serializer=agent__pb2.GetAgentSchemaResponse.SerializeToString,
117
+ ),
118
+ 'GetObservation': grpc.unary_unary_rpc_method_handler(
119
+ servicer.GetObservation,
120
+ request_deserializer=agent__pb2.GetObservationRequest.FromString,
121
+ response_serializer=agent__pb2.GetObservationResponse.SerializeToString,
122
+ ),
123
+ 'StreamAgent': grpc.unary_stream_rpc_method_handler(
124
+ servicer.StreamAgent,
125
+ request_deserializer=agent__pb2.StreamAgentRequest.FromString,
126
+ response_serializer=agent__pb2.AgentFrame.SerializeToString,
127
+ ),
128
+ 'ResetAgent': grpc.unary_unary_rpc_method_handler(
129
+ servicer.ResetAgent,
130
+ request_deserializer=agent__pb2.ResetAgentRequest.FromString,
131
+ response_serializer=agent__pb2.ResetAgentResponse.SerializeToString,
132
+ ),
133
+ 'Step': grpc.unary_unary_rpc_method_handler(
134
+ servicer.Step,
135
+ request_deserializer=agent__pb2.StepRequest.FromString,
136
+ response_serializer=agent__pb2.StepResponse.SerializeToString,
137
+ ),
138
+ }
139
+ generic_handler = grpc.method_handlers_generic_handler(
140
+ 'hazel.rpc.AgentService', rpc_method_handlers)
141
+ server.add_generic_rpc_handlers((generic_handler,))
142
+ server.add_registered_method_handlers('hazel.rpc.AgentService', rpc_method_handlers)
143
+
144
+
145
+ # This class is part of an EXPERIMENTAL API.
146
+ class AgentService(object):
147
+ """Per-agent RL-style observation streaming (training / inference clients consume this).
148
+ """
149
+
150
+ @staticmethod
151
+ def GetAgentSchema(request,
152
+ target,
153
+ options=(),
154
+ channel_credentials=None,
155
+ call_credentials=None,
156
+ insecure=False,
157
+ compression=None,
158
+ wait_for_ready=None,
159
+ timeout=None,
160
+ metadata=None):
161
+ return grpc.experimental.unary_unary(
162
+ request,
163
+ target,
164
+ '/hazel.rpc.AgentService/GetAgentSchema',
165
+ agent__pb2.GetAgentSchemaRequest.SerializeToString,
166
+ agent__pb2.GetAgentSchemaResponse.FromString,
167
+ options,
168
+ channel_credentials,
169
+ insecure,
170
+ call_credentials,
171
+ compression,
172
+ wait_for_ready,
173
+ timeout,
174
+ metadata,
175
+ _registered_method=True)
176
+
177
+ @staticmethod
178
+ def GetObservation(request,
179
+ target,
180
+ options=(),
181
+ channel_credentials=None,
182
+ call_credentials=None,
183
+ insecure=False,
184
+ compression=None,
185
+ wait_for_ready=None,
186
+ timeout=None,
187
+ metadata=None):
188
+ return grpc.experimental.unary_unary(
189
+ request,
190
+ target,
191
+ '/hazel.rpc.AgentService/GetObservation',
192
+ agent__pb2.GetObservationRequest.SerializeToString,
193
+ agent__pb2.GetObservationResponse.FromString,
194
+ options,
195
+ channel_credentials,
196
+ insecure,
197
+ call_credentials,
198
+ compression,
199
+ wait_for_ready,
200
+ timeout,
201
+ metadata,
202
+ _registered_method=True)
203
+
204
+ @staticmethod
205
+ def StreamAgent(request,
206
+ target,
207
+ options=(),
208
+ channel_credentials=None,
209
+ call_credentials=None,
210
+ insecure=False,
211
+ compression=None,
212
+ wait_for_ready=None,
213
+ timeout=None,
214
+ metadata=None):
215
+ return grpc.experimental.unary_stream(
216
+ request,
217
+ target,
218
+ '/hazel.rpc.AgentService/StreamAgent',
219
+ agent__pb2.StreamAgentRequest.SerializeToString,
220
+ agent__pb2.AgentFrame.FromString,
221
+ options,
222
+ channel_credentials,
223
+ insecure,
224
+ call_credentials,
225
+ compression,
226
+ wait_for_ready,
227
+ timeout,
228
+ metadata,
229
+ _registered_method=True)
230
+
231
+ @staticmethod
232
+ def ResetAgent(request,
233
+ target,
234
+ options=(),
235
+ channel_credentials=None,
236
+ call_credentials=None,
237
+ insecure=False,
238
+ compression=None,
239
+ wait_for_ready=None,
240
+ timeout=None,
241
+ metadata=None):
242
+ return grpc.experimental.unary_unary(
243
+ request,
244
+ target,
245
+ '/hazel.rpc.AgentService/ResetAgent',
246
+ agent__pb2.ResetAgentRequest.SerializeToString,
247
+ agent__pb2.ResetAgentResponse.FromString,
248
+ options,
249
+ channel_credentials,
250
+ insecure,
251
+ call_credentials,
252
+ compression,
253
+ wait_for_ready,
254
+ timeout,
255
+ metadata,
256
+ _registered_method=True)
257
+
258
+ @staticmethod
259
+ def Step(request,
260
+ target,
261
+ options=(),
262
+ channel_credentials=None,
263
+ call_credentials=None,
264
+ insecure=False,
265
+ compression=None,
266
+ wait_for_ready=None,
267
+ timeout=None,
268
+ metadata=None):
269
+ return grpc.experimental.unary_unary(
270
+ request,
271
+ target,
272
+ '/hazel.rpc.AgentService/Step',
273
+ agent__pb2.StepRequest.SerializeToString,
274
+ agent__pb2.StepResponse.FromString,
275
+ options,
276
+ channel_credentials,
277
+ insecure,
278
+ call_credentials,
279
+ compression,
280
+ wait_for_ready,
281
+ timeout,
282
+ metadata,
283
+ _registered_method=True)
@@ -0,0 +1,47 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: camera.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'camera.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from . import common_pb2 as common__pb2
26
+ from . import media_pb2 as media__pb2
27
+
28
+
29
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x63\x61mera.proto\x12\thazel.rpc\x1a\x0c\x63ommon.proto\x1a\x0bmedia.proto\";\n\nCameraInfo\x12\x1f\n\x02id\x18\x01 \x01(\x0b\x32\x13.hazel.rpc.EntityId\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x14\n\x12ListCamerasRequest\"=\n\x13ListCamerasResponse\x12&\n\x07\x63\x61meras\x18\x01 \x03(\x0b\x32\x15.hazel.rpc.CameraInfo\"\x99\x01\n\x13StreamCameraRequest\x12!\n\x02id\x18\x01 \x01(\x0b\x32\x13.hazel.rpc.EntityIdH\x00\x12\x0e\n\x04name\x18\x02 \x01(\tH\x00\x12\x12\n\ntarget_fps\x18\x03 \x01(\r\x12\r\n\x05width\x18\x04 \x01(\r\x12\x0e\n\x06height\x18\x05 \x01(\r\x12\x0e\n\x06\x66ormat\x18\x06 \x01(\tB\x0c\n\nidentifier2\xa6\x01\n\rCameraService\x12L\n\x0bListCameras\x12\x1d.hazel.rpc.ListCamerasRequest\x1a\x1e.hazel.rpc.ListCamerasResponse\x12G\n\x0cStreamCamera\x12\x1e.hazel.rpc.StreamCameraRequest\x1a\x15.hazel.rpc.ImageFrame0\x01\x42\x03\xf8\x01\x01\x62\x06proto3')
30
+
31
+ _globals = globals()
32
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
33
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'camera_pb2', _globals)
34
+ if not _descriptor._USE_C_DESCRIPTORS:
35
+ _globals['DESCRIPTOR']._loaded_options = None
36
+ _globals['DESCRIPTOR']._serialized_options = b'\370\001\001'
37
+ _globals['_CAMERAINFO']._serialized_start=54
38
+ _globals['_CAMERAINFO']._serialized_end=113
39
+ _globals['_LISTCAMERASREQUEST']._serialized_start=115
40
+ _globals['_LISTCAMERASREQUEST']._serialized_end=135
41
+ _globals['_LISTCAMERASRESPONSE']._serialized_start=137
42
+ _globals['_LISTCAMERASRESPONSE']._serialized_end=198
43
+ _globals['_STREAMCAMERAREQUEST']._serialized_start=201
44
+ _globals['_STREAMCAMERAREQUEST']._serialized_end=354
45
+ _globals['_CAMERASERVICE']._serialized_start=357
46
+ _globals['_CAMERASERVICE']._serialized_end=523
47
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,144 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+ from . import camera_pb2 as camera__pb2
7
+ from . import media_pb2 as media__pb2
8
+
9
+ GRPC_GENERATED_VERSION = '1.76.0'
10
+ GRPC_VERSION = grpc.__version__
11
+ _version_not_supported = False
12
+
13
+ try:
14
+ from grpc._utilities import first_version_is_lower
15
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
16
+ except ImportError:
17
+ _version_not_supported = True
18
+
19
+ if _version_not_supported:
20
+ raise RuntimeError(
21
+ f'The grpc package installed is at version {GRPC_VERSION},'
22
+ + ' but the generated code in camera_pb2_grpc.py depends on'
23
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
24
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
25
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
26
+ )
27
+
28
+
29
+ class CameraServiceStub(object):
30
+ """Streams pixels from a camera entity (useful for external perception / debugging).
31
+ """
32
+
33
+ def __init__(self, channel):
34
+ """Constructor.
35
+
36
+ Args:
37
+ channel: A grpc.Channel.
38
+ """
39
+ self.ListCameras = channel.unary_unary(
40
+ '/hazel.rpc.CameraService/ListCameras',
41
+ request_serializer=camera__pb2.ListCamerasRequest.SerializeToString,
42
+ response_deserializer=camera__pb2.ListCamerasResponse.FromString,
43
+ _registered_method=True)
44
+ self.StreamCamera = channel.unary_stream(
45
+ '/hazel.rpc.CameraService/StreamCamera',
46
+ request_serializer=camera__pb2.StreamCameraRequest.SerializeToString,
47
+ response_deserializer=media__pb2.ImageFrame.FromString,
48
+ _registered_method=True)
49
+
50
+
51
+ class CameraServiceServicer(object):
52
+ """Streams pixels from a camera entity (useful for external perception / debugging).
53
+ """
54
+
55
+ def ListCameras(self, request, context):
56
+ """Missing associated documentation comment in .proto file."""
57
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
58
+ context.set_details('Method not implemented!')
59
+ raise NotImplementedError('Method not implemented!')
60
+
61
+ def StreamCamera(self, request, context):
62
+ """Missing associated documentation comment in .proto file."""
63
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
64
+ context.set_details('Method not implemented!')
65
+ raise NotImplementedError('Method not implemented!')
66
+
67
+
68
+ def add_CameraServiceServicer_to_server(servicer, server):
69
+ rpc_method_handlers = {
70
+ 'ListCameras': grpc.unary_unary_rpc_method_handler(
71
+ servicer.ListCameras,
72
+ request_deserializer=camera__pb2.ListCamerasRequest.FromString,
73
+ response_serializer=camera__pb2.ListCamerasResponse.SerializeToString,
74
+ ),
75
+ 'StreamCamera': grpc.unary_stream_rpc_method_handler(
76
+ servicer.StreamCamera,
77
+ request_deserializer=camera__pb2.StreamCameraRequest.FromString,
78
+ response_serializer=media__pb2.ImageFrame.SerializeToString,
79
+ ),
80
+ }
81
+ generic_handler = grpc.method_handlers_generic_handler(
82
+ 'hazel.rpc.CameraService', rpc_method_handlers)
83
+ server.add_generic_rpc_handlers((generic_handler,))
84
+ server.add_registered_method_handlers('hazel.rpc.CameraService', rpc_method_handlers)
85
+
86
+
87
+ # This class is part of an EXPERIMENTAL API.
88
+ class CameraService(object):
89
+ """Streams pixels from a camera entity (useful for external perception / debugging).
90
+ """
91
+
92
+ @staticmethod
93
+ def ListCameras(request,
94
+ target,
95
+ options=(),
96
+ channel_credentials=None,
97
+ call_credentials=None,
98
+ insecure=False,
99
+ compression=None,
100
+ wait_for_ready=None,
101
+ timeout=None,
102
+ metadata=None):
103
+ return grpc.experimental.unary_unary(
104
+ request,
105
+ target,
106
+ '/hazel.rpc.CameraService/ListCameras',
107
+ camera__pb2.ListCamerasRequest.SerializeToString,
108
+ camera__pb2.ListCamerasResponse.FromString,
109
+ options,
110
+ channel_credentials,
111
+ insecure,
112
+ call_credentials,
113
+ compression,
114
+ wait_for_ready,
115
+ timeout,
116
+ metadata,
117
+ _registered_method=True)
118
+
119
+ @staticmethod
120
+ def StreamCamera(request,
121
+ target,
122
+ options=(),
123
+ channel_credentials=None,
124
+ call_credentials=None,
125
+ insecure=False,
126
+ compression=None,
127
+ wait_for_ready=None,
128
+ timeout=None,
129
+ metadata=None):
130
+ return grpc.experimental.unary_stream(
131
+ request,
132
+ target,
133
+ '/hazel.rpc.CameraService/StreamCamera',
134
+ camera__pb2.StreamCameraRequest.SerializeToString,
135
+ media__pb2.ImageFrame.FromString,
136
+ options,
137
+ channel_credentials,
138
+ insecure,
139
+ call_credentials,
140
+ compression,
141
+ wait_for_ready,
142
+ timeout,
143
+ metadata,
144
+ _registered_method=True)
@@ -0,0 +1,43 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: common.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'common.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x63ommon.proto\x12\thazel.rpc\"\x16\n\x08\x45ntityId\x12\n\n\x02id\x18\x01 \x01(\x04\"\'\n\x04Vec3\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02\x12\t\n\x01z\x18\x03 \x01(\x02\"2\n\x04Quat\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02\x12\t\n\x01z\x18\x03 \x01(\x02\x12\t\n\x01w\x18\x04 \x01(\x02\"q\n\tTransform\x12!\n\x08position\x18\x01 \x01(\x0b\x32\x0f.hazel.rpc.Vec3\x12!\n\x08rotation\x18\x02 \x01(\x0b\x32\x0f.hazel.rpc.Quat\x12\x1e\n\x05scale\x18\x03 \x01(\x0b\x32\x0f.hazel.rpc.Vec3B\x03\xf8\x01\x01\x62\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'\370\001\001'
35
+ _globals['_ENTITYID']._serialized_start=27
36
+ _globals['_ENTITYID']._serialized_end=49
37
+ _globals['_VEC3']._serialized_start=51
38
+ _globals['_VEC3']._serialized_end=90
39
+ _globals['_QUAT']._serialized_start=92
40
+ _globals['_QUAT']._serialized_end=142
41
+ _globals['_TRANSFORM']._serialized_start=144
42
+ _globals['_TRANSFORM']._serialized_end=257
43
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,24 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+
7
+ GRPC_GENERATED_VERSION = '1.76.0'
8
+ GRPC_VERSION = grpc.__version__
9
+ _version_not_supported = False
10
+
11
+ try:
12
+ from grpc._utilities import first_version_is_lower
13
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
14
+ except ImportError:
15
+ _version_not_supported = True
16
+
17
+ if _version_not_supported:
18
+ raise RuntimeError(
19
+ f'The grpc package installed is at version {GRPC_VERSION},'
20
+ + ' but the generated code in common_pb2_grpc.py depends on'
21
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
22
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
23
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
24
+ )
@@ -0,0 +1,43 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: hazel_rpc.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'hazel_rpc.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from . import common_pb2 as common__pb2
26
+ from . import scene_pb2 as scene__pb2
27
+ from . import mujoco_pb2 as mujoco__pb2
28
+ from . import telemetry_pb2 as telemetry__pb2
29
+ from . import media_pb2 as media__pb2
30
+ from . import agent_pb2 as agent__pb2
31
+ from . import viewport_pb2 as viewport__pb2
32
+ from . import camera_pb2 as camera__pb2
33
+
34
+
35
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fhazel_rpc.proto\x12\thazel.rpc\x1a\x0c\x63ommon.proto\x1a\x0bscene.proto\x1a\x0cmujoco.proto\x1a\x0ftelemetry.proto\x1a\x0bmedia.proto\x1a\x0b\x61gent.proto\x1a\x0eviewport.proto\x1a\x0c\x63\x61mera.protoB\x03\xf8\x01\x01\x62\x06proto3')
36
+
37
+ _globals = globals()
38
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
39
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'hazel_rpc_pb2', _globals)
40
+ if not _descriptor._USE_C_DESCRIPTORS:
41
+ _globals['DESCRIPTOR']._loaded_options = None
42
+ _globals['DESCRIPTOR']._serialized_options = b'\370\001\001'
43
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,24 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+
7
+ GRPC_GENERATED_VERSION = '1.76.0'
8
+ GRPC_VERSION = grpc.__version__
9
+ _version_not_supported = False
10
+
11
+ try:
12
+ from grpc._utilities import first_version_is_lower
13
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
14
+ except ImportError:
15
+ _version_not_supported = True
16
+
17
+ if _version_not_supported:
18
+ raise RuntimeError(
19
+ f'The grpc package installed is at version {GRPC_VERSION},'
20
+ + ' but the generated code in hazel_rpc_pb2_grpc.py depends on'
21
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
22
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
23
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
24
+ )
@@ -0,0 +1,39 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: media.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'media.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0bmedia.proto\x12\thazel.rpc\"\x87\x01\n\nImageFrame\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\r\n\x05width\x18\x02 \x01(\r\x12\x0e\n\x06height\x18\x03 \x01(\r\x12\x10\n\x08\x63hannels\x18\x04 \x01(\r\x12\x0e\n\x06\x66ormat\x18\x05 \x01(\t\x12\x14\n\x0ctimestamp_ms\x18\x06 \x01(\x04\x12\x14\n\x0c\x66rame_number\x18\x07 \x01(\r\"E\n\x0fNamedImageFrame\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x05\x66rame\x18\x02 \x01(\x0b\x32\x15.hazel.rpc.ImageFrameB\x03\xf8\x01\x01\x62\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'media_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'\370\001\001'
35
+ _globals['_IMAGEFRAME']._serialized_start=27
36
+ _globals['_IMAGEFRAME']._serialized_end=162
37
+ _globals['_NAMEDIMAGEFRAME']._serialized_start=164
38
+ _globals['_NAMEDIMAGEFRAME']._serialized_end=233
39
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,24 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+
7
+ GRPC_GENERATED_VERSION = '1.76.0'
8
+ GRPC_VERSION = grpc.__version__
9
+ _version_not_supported = False
10
+
11
+ try:
12
+ from grpc._utilities import first_version_is_lower
13
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
14
+ except ImportError:
15
+ _version_not_supported = True
16
+
17
+ if _version_not_supported:
18
+ raise RuntimeError(
19
+ f'The grpc package installed is at version {GRPC_VERSION},'
20
+ + ' but the generated code in media_pb2_grpc.py depends on'
21
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
22
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
23
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
24
+ )