diff --git a/src/viam/components/camera/camera.py b/src/viam/components/camera/camera.py index 6174f873d..7f4228c93 100644 --- a/src/viam/components/camera/camera.py +++ b/src/viam/components/camera/camera.py @@ -63,7 +63,14 @@ async def get_image( ... @abc.abstractmethod - async def get_images(self, *, filter_source_names: Optional[List[str]] = None, extra: Optional[Dict[str, Any]] = None, timeout: Optional[float] = None, **kwargs) -> Tuple[List[NamedImage], ResponseMetadata]: + async def get_images( + self, + *, + filter_source_names: Optional[List[str]] = None, + extra: Optional[Dict[str, Any]] = None, + timeout: Optional[float] = None, + **kwargs, + ) -> Tuple[List[NamedImage], ResponseMetadata]: """Get simultaneous images from different imagers, along with associated metadata. This should not be used for getting a time series of images from the same imager. diff --git a/src/viam/components/camera/service.py b/src/viam/components/camera/service.py index 7108bb437..e0a6a53f3 100644 --- a/src/viam/components/camera/service.py +++ b/src/viam/components/camera/service.py @@ -3,6 +3,7 @@ from google.api.httpbody_pb2 import HttpBody # type: ignore from grpclib.server import Stream +from viam.media.video import CameraMimeType from viam.proto.common import DoCommandRequest, DoCommandResponse, GetGeometriesRequest, GetGeometriesResponse from viam.proto.component.camera import ( CameraServiceBase, @@ -20,7 +21,6 @@ ) from viam.resource.rpc_service_base import ResourceRPCServiceBase from viam.utils import dict_to_struct, struct_to_dict -from viam.media.video import CameraMimeType from . import Camera diff --git a/src/viam/gen/common/v1/common_pb2.py b/src/viam/gen/common/v1/common_pb2.py index a287926c6..3de8661a0 100644 --- a/src/viam/gen/common/v1/common_pb2.py +++ b/src/viam/gen/common/v1/common_pb2.py @@ -9,7 +9,7 @@ from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16common/v1/common.proto\x12\x0eviam.common.v1\x1a google/protobuf/descriptor.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xae\x01\n\x0cResourceName\x12\x1c\n\tnamespace\x18\x01 \x01(\tR\tnamespace\x12\x12\n\x04type\x18\x02 \x01(\tR\x04type\x12\x18\n\x07subtype\x18\x03 \x01(\tR\x07subtype\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x1f\n\x0bremote_path\x18\x05 \x03(\tR\nremotePath\x12\x1d\n\nlocal_name\x18\x06 \x01(\tR\tlocalName"y\n\x04Pose\x12\x0c\n\x01x\x18\x01 \x01(\x01R\x01x\x12\x0c\n\x01y\x18\x02 \x01(\x01R\x01y\x12\x0c\n\x01z\x18\x03 \x01(\x01R\x01z\x12\x0f\n\x03o_x\x18\x04 \x01(\x01R\x02oX\x12\x0f\n\x03o_y\x18\x05 \x01(\x01R\x02oY\x12\x0f\n\x03o_z\x18\x06 \x01(\x01R\x02oZ\x12\x14\n\x05theta\x18\x07 \x01(\x01R\x05theta"V\n\x0bOrientation\x12\x0f\n\x03o_x\x18\x01 \x01(\x01R\x02oX\x12\x0f\n\x03o_y\x18\x02 \x01(\x01R\x02oY\x12\x0f\n\x03o_z\x18\x03 \x01(\x01R\x02oZ\x12\x14\n\x05theta\x18\x04 \x01(\x01R\x05theta"`\n\x0bPoseInFrame\x12\'\n\x0freference_frame\x18\x01 \x01(\tR\x0ereferenceFrame\x12(\n\x04pose\x18\x02 \x01(\x0b2\x14.viam.common.v1.PoseR\x04pose"3\n\x07Vector3\x12\x0c\n\x01x\x18\x01 \x01(\x01R\x01x\x12\x0c\n\x01y\x18\x02 \x01(\x01R\x01y\x12\x0c\n\x01z\x18\x03 \x01(\x01R\x01z"%\n\x06Sphere\x12\x1b\n\tradius_mm\x18\x01 \x01(\x01R\x08radiusMm"C\n\x07Capsule\x12\x1b\n\tradius_mm\x18\x01 \x01(\x01R\x08radiusMm\x12\x1b\n\tlength_mm\x18\x02 \x01(\x01R\x08lengthMm"D\n\x10RectangularPrism\x120\n\x07dims_mm\x18\x01 \x01(\x0b2\x17.viam.common.v1.Vector3R\x06dimsMm"=\n\x04Mesh\x12!\n\x0ccontent_type\x18\x01 \x01(\tR\x0bcontentType\x12\x12\n\x04mesh\x18\x02 \x01(\x0cR\x04mesh"\xa8\x02\n\x08Geometry\x12,\n\x06center\x18\x01 \x01(\x0b2\x14.viam.common.v1.PoseR\x06center\x120\n\x06sphere\x18\x02 \x01(\x0b2\x16.viam.common.v1.SphereH\x00R\x06sphere\x124\n\x03box\x18\x03 \x01(\x0b2 .viam.common.v1.RectangularPrismH\x00R\x03box\x123\n\x07capsule\x18\x05 \x01(\x0b2\x17.viam.common.v1.CapsuleH\x00R\x07capsule\x12*\n\x04mesh\x18\x06 \x01(\x0b2\x14.viam.common.v1.MeshH\x00R\x04mesh\x12\x14\n\x05label\x18\x04 \x01(\tR\x05labelB\x0f\n\rgeometry_type"v\n\x11GeometriesInFrame\x12\'\n\x0freference_frame\x18\x01 \x01(\tR\x0ereferenceFrame\x128\n\ngeometries\x18\x02 \x03(\x0b2\x18.viam.common.v1.GeometryR\ngeometries"v\n\x10PointCloudObject\x12\x1f\n\x0bpoint_cloud\x18\x01 \x01(\x0cR\npointCloud\x12A\n\ngeometries\x18\x02 \x01(\x0b2!.viam.common.v1.GeometriesInFrameR\ngeometries"D\n\x08GeoPoint\x12\x1a\n\x08latitude\x18\x01 \x01(\x01R\x08latitude\x12\x1c\n\tlongitude\x18\x02 \x01(\x01R\tlongitude"}\n\x0bGeoGeometry\x124\n\x08location\x18\x01 \x01(\x0b2\x18.viam.common.v1.GeoPointR\x08location\x128\n\ngeometries\x18\x02 \x03(\x0b2\x18.viam.common.v1.GeometryR\ngeometries"\xe2\x01\n\tTransform\x12\'\n\x0freference_frame\x18\x01 \x01(\tR\x0ereferenceFrame\x12P\n\x16pose_in_observer_frame\x18\x02 \x01(\x0b2\x1b.viam.common.v1.PoseInFrameR\x13poseInObserverFrame\x12F\n\x0fphysical_object\x18\x03 \x01(\x0b2\x18.viam.common.v1.GeometryH\x00R\x0ephysicalObject\x88\x01\x01B\x12\n\x10_physical_object"\x88\x01\n\nWorldState\x12?\n\tobstacles\x18\x01 \x03(\x0b2!.viam.common.v1.GeometriesInFrameR\tobstacles\x129\n\ntransforms\x18\x03 \x03(\x0b2\x19.viam.common.v1.TransformR\ntransforms"-\n\x0eActuatorStatus\x12\x1b\n\tis_moving\x18\x01 \x01(\x08R\x08isMoving"d\n\x10ResponseMetadata\x12@\n\x0bcaptured_at\x18\x01 \x01(\x0b2\x1a.google.protobuf.TimestampH\x00R\ncapturedAt\x88\x01\x01B\x0e\n\x0c_captured_at"Y\n\x10DoCommandRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x121\n\x07command\x18\x02 \x01(\x0b2\x17.google.protobuf.StructR\x07command"D\n\x11DoCommandResponse\x12/\n\x06result\x18\x01 \x01(\x0b2\x17.google.protobuf.StructR\x06result"Y\n\x14GetKinematicsRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"~\n\x15GetKinematicsResponse\x12<\n\x06format\x18\x01 \x01(\x0e2$.viam.common.v1.KinematicsFileFormatR\x06format\x12\'\n\x0fkinematics_data\x18\x02 \x01(\x0cR\x0ekinematicsData"Y\n\x14GetGeometriesRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"Q\n\x15GetGeometriesResponse\x128\n\ngeometries\x18\x01 \x03(\x0b2\x18.viam.common.v1.GeometryR\ngeometries"W\n\x12GetReadingsRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"\xb9\x01\n\x13GetReadingsResponse\x12M\n\x08readings\x18\x01 \x03(\x0b21.viam.common.v1.GetReadingsResponse.ReadingsEntryR\x08readings\x1aS\n\rReadingsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12,\n\x05value\x18\x02 \x01(\x0b2\x16.google.protobuf.ValueR\x05value:\x028\x01"\x97\x02\n\x08LogEntry\x12\x12\n\x04host\x18\x01 \x01(\tR\x04host\x12\x14\n\x05level\x18\x02 \x01(\tR\x05level\x12.\n\x04time\x18\x03 \x01(\x0b2\x1a.google.protobuf.TimestampR\x04time\x12\x1f\n\x0blogger_name\x18\x04 \x01(\tR\nloggerName\x12\x18\n\x07message\x18\x05 \x01(\tR\x07message\x12/\n\x06caller\x18\x06 \x01(\x0b2\x17.google.protobuf.StructR\x06caller\x12\x14\n\x05stack\x18\x07 \x01(\tR\x05stack\x12/\n\x06fields\x18\x08 \x03(\x0b2\x17.google.protobuf.StructR\x06fields*\x7f\n\x14KinematicsFileFormat\x12&\n"KINEMATICS_FILE_FORMAT_UNSPECIFIED\x10\x00\x12\x1e\n\x1aKINEMATICS_FILE_FORMAT_SVA\x10\x01\x12\x1f\n\x1bKINEMATICS_FILE_FORMAT_URDF\x10\x02:a\n\x1asafety_heartbeat_monitored\x12\x1e.google.protobuf.MethodOptions\x18\xa4\x92\x05 \x01(\x08R\x18safetyHeartbeatMonitored\x88\x01\x01B/\n\x12com.viam.common.v1Z\x19go.viam.com/api/common/v1b\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16common/v1/common.proto\x12\x0eviam.common.v1\x1a google/protobuf/descriptor.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xae\x01\n\x0cResourceName\x12\x1c\n\tnamespace\x18\x01 \x01(\tR\tnamespace\x12\x12\n\x04type\x18\x02 \x01(\tR\x04type\x12\x18\n\x07subtype\x18\x03 \x01(\tR\x07subtype\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x1f\n\x0bremote_path\x18\x05 \x03(\tR\nremotePath\x12\x1d\n\nlocal_name\x18\x06 \x01(\tR\tlocalName"y\n\x04Pose\x12\x0c\n\x01x\x18\x01 \x01(\x01R\x01x\x12\x0c\n\x01y\x18\x02 \x01(\x01R\x01y\x12\x0c\n\x01z\x18\x03 \x01(\x01R\x01z\x12\x0f\n\x03o_x\x18\x04 \x01(\x01R\x02oX\x12\x0f\n\x03o_y\x18\x05 \x01(\x01R\x02oY\x12\x0f\n\x03o_z\x18\x06 \x01(\x01R\x02oZ\x12\x14\n\x05theta\x18\x07 \x01(\x01R\x05theta"V\n\x0bOrientation\x12\x0f\n\x03o_x\x18\x01 \x01(\x01R\x02oX\x12\x0f\n\x03o_y\x18\x02 \x01(\x01R\x02oY\x12\x0f\n\x03o_z\x18\x03 \x01(\x01R\x02oZ\x12\x14\n\x05theta\x18\x04 \x01(\x01R\x05theta"`\n\x0bPoseInFrame\x12\'\n\x0freference_frame\x18\x01 \x01(\tR\x0ereferenceFrame\x12(\n\x04pose\x18\x02 \x01(\x0b2\x14.viam.common.v1.PoseR\x04pose"3\n\x07Vector3\x12\x0c\n\x01x\x18\x01 \x01(\x01R\x01x\x12\x0c\n\x01y\x18\x02 \x01(\x01R\x01y\x12\x0c\n\x01z\x18\x03 \x01(\x01R\x01z"%\n\x06Sphere\x12\x1b\n\tradius_mm\x18\x01 \x01(\x01R\x08radiusMm"C\n\x07Capsule\x12\x1b\n\tradius_mm\x18\x01 \x01(\x01R\x08radiusMm\x12\x1b\n\tlength_mm\x18\x02 \x01(\x01R\x08lengthMm"D\n\x10RectangularPrism\x120\n\x07dims_mm\x18\x01 \x01(\x0b2\x17.viam.common.v1.Vector3R\x06dimsMm"=\n\x04Mesh\x12!\n\x0ccontent_type\x18\x01 \x01(\tR\x0bcontentType\x12\x12\n\x04mesh\x18\x02 \x01(\x0cR\x04mesh"-\n\nPointCloud\x12\x1f\n\x0bpoint_cloud\x18\x01 \x01(\x0cR\npointCloud"\xe6\x02\n\x08Geometry\x12,\n\x06center\x18\x01 \x01(\x0b2\x14.viam.common.v1.PoseR\x06center\x120\n\x06sphere\x18\x02 \x01(\x0b2\x16.viam.common.v1.SphereH\x00R\x06sphere\x124\n\x03box\x18\x03 \x01(\x0b2 .viam.common.v1.RectangularPrismH\x00R\x03box\x123\n\x07capsule\x18\x05 \x01(\x0b2\x17.viam.common.v1.CapsuleH\x00R\x07capsule\x12*\n\x04mesh\x18\x06 \x01(\x0b2\x14.viam.common.v1.MeshH\x00R\x04mesh\x12<\n\npointcloud\x18\x07 \x01(\x0b2\x1a.viam.common.v1.PointCloudH\x00R\npointcloud\x12\x14\n\x05label\x18\x04 \x01(\tR\x05labelB\x0f\n\rgeometry_type"v\n\x11GeometriesInFrame\x12\'\n\x0freference_frame\x18\x01 \x01(\tR\x0ereferenceFrame\x128\n\ngeometries\x18\x02 \x03(\x0b2\x18.viam.common.v1.GeometryR\ngeometries"v\n\x10PointCloudObject\x12\x1f\n\x0bpoint_cloud\x18\x01 \x01(\x0cR\npointCloud\x12A\n\ngeometries\x18\x02 \x01(\x0b2!.viam.common.v1.GeometriesInFrameR\ngeometries"D\n\x08GeoPoint\x12\x1a\n\x08latitude\x18\x01 \x01(\x01R\x08latitude\x12\x1c\n\tlongitude\x18\x02 \x01(\x01R\tlongitude"}\n\x0bGeoGeometry\x124\n\x08location\x18\x01 \x01(\x0b2\x18.viam.common.v1.GeoPointR\x08location\x128\n\ngeometries\x18\x02 \x03(\x0b2\x18.viam.common.v1.GeometryR\ngeometries"\xbd\x02\n\tTransform\x12\'\n\x0freference_frame\x18\x01 \x01(\tR\x0ereferenceFrame\x12P\n\x16pose_in_observer_frame\x18\x02 \x01(\x0b2\x1b.viam.common.v1.PoseInFrameR\x13poseInObserverFrame\x12F\n\x0fphysical_object\x18\x03 \x01(\x0b2\x18.viam.common.v1.GeometryH\x00R\x0ephysicalObject\x88\x01\x01\x12\x12\n\x04uuid\x18\x04 \x01(\x0cR\x04uuid\x128\n\x08metadata\x18\x05 \x01(\x0b2\x17.google.protobuf.StructH\x01R\x08metadata\x88\x01\x01B\x12\n\x10_physical_objectB\x0b\n\t_metadata"\x88\x01\n\nWorldState\x12?\n\tobstacles\x18\x01 \x03(\x0b2!.viam.common.v1.GeometriesInFrameR\tobstacles\x129\n\ntransforms\x18\x03 \x03(\x0b2\x19.viam.common.v1.TransformR\ntransforms"-\n\x0eActuatorStatus\x12\x1b\n\tis_moving\x18\x01 \x01(\x08R\x08isMoving"d\n\x10ResponseMetadata\x12@\n\x0bcaptured_at\x18\x01 \x01(\x0b2\x1a.google.protobuf.TimestampH\x00R\ncapturedAt\x88\x01\x01B\x0e\n\x0c_captured_at"Y\n\x10DoCommandRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x121\n\x07command\x18\x02 \x01(\x0b2\x17.google.protobuf.StructR\x07command"D\n\x11DoCommandResponse\x12/\n\x06result\x18\x01 \x01(\x0b2\x17.google.protobuf.StructR\x06result"Y\n\x14GetKinematicsRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"~\n\x15GetKinematicsResponse\x12<\n\x06format\x18\x01 \x01(\x0e2$.viam.common.v1.KinematicsFileFormatR\x06format\x12\'\n\x0fkinematics_data\x18\x02 \x01(\x0cR\x0ekinematicsData"Y\n\x14GetGeometriesRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"Q\n\x15GetGeometriesResponse\x128\n\ngeometries\x18\x01 \x03(\x0b2\x18.viam.common.v1.GeometryR\ngeometries"W\n\x12GetReadingsRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"\xb9\x01\n\x13GetReadingsResponse\x12M\n\x08readings\x18\x01 \x03(\x0b21.viam.common.v1.GetReadingsResponse.ReadingsEntryR\x08readings\x1aS\n\rReadingsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12,\n\x05value\x18\x02 \x01(\x0b2\x16.google.protobuf.ValueR\x05value:\x028\x01"\x97\x02\n\x08LogEntry\x12\x12\n\x04host\x18\x01 \x01(\tR\x04host\x12\x14\n\x05level\x18\x02 \x01(\tR\x05level\x12.\n\x04time\x18\x03 \x01(\x0b2\x1a.google.protobuf.TimestampR\x04time\x12\x1f\n\x0blogger_name\x18\x04 \x01(\tR\nloggerName\x12\x18\n\x07message\x18\x05 \x01(\tR\x07message\x12/\n\x06caller\x18\x06 \x01(\x0b2\x17.google.protobuf.StructR\x06caller\x12\x14\n\x05stack\x18\x07 \x01(\tR\x05stack\x12/\n\x06fields\x18\x08 \x03(\x0b2\x17.google.protobuf.StructR\x06fields*\x7f\n\x14KinematicsFileFormat\x12&\n"KINEMATICS_FILE_FORMAT_UNSPECIFIED\x10\x00\x12\x1e\n\x1aKINEMATICS_FILE_FORMAT_SVA\x10\x01\x12\x1f\n\x1bKINEMATICS_FILE_FORMAT_URDF\x10\x02:a\n\x1asafety_heartbeat_monitored\x12\x1e.google.protobuf.MethodOptions\x18\xa4\x92\x05 \x01(\x08R\x18safetyHeartbeatMonitored\x88\x01\x01B/\n\x12com.viam.common.v1Z\x19go.viam.com/api/common/v1b\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common.v1.common_pb2', _globals) @@ -18,8 +18,8 @@ _globals['DESCRIPTOR']._serialized_options = b'\n\x12com.viam.common.v1Z\x19go.viam.com/api/common/v1' _globals['_GETREADINGSRESPONSE_READINGSENTRY']._loaded_options = None _globals['_GETREADINGSRESPONSE_READINGSENTRY']._serialized_options = b'8\x01' - _globals['_KINEMATICSFILEFORMAT']._serialized_start = 3285 - _globals['_KINEMATICSFILEFORMAT']._serialized_end = 3412 + _globals['_KINEMATICSFILEFORMAT']._serialized_start = 3485 + _globals['_KINEMATICSFILEFORMAT']._serialized_end = 3612 _globals['_RESOURCENAME']._serialized_start = 140 _globals['_RESOURCENAME']._serialized_end = 314 _globals['_POSE']._serialized_start = 316 @@ -38,41 +38,43 @@ _globals['_RECTANGULARPRISM']._serialized_end = 854 _globals['_MESH']._serialized_start = 856 _globals['_MESH']._serialized_end = 917 - _globals['_GEOMETRY']._serialized_start = 920 - _globals['_GEOMETRY']._serialized_end = 1216 - _globals['_GEOMETRIESINFRAME']._serialized_start = 1218 - _globals['_GEOMETRIESINFRAME']._serialized_end = 1336 - _globals['_POINTCLOUDOBJECT']._serialized_start = 1338 - _globals['_POINTCLOUDOBJECT']._serialized_end = 1456 - _globals['_GEOPOINT']._serialized_start = 1458 - _globals['_GEOPOINT']._serialized_end = 1526 - _globals['_GEOGEOMETRY']._serialized_start = 1528 - _globals['_GEOGEOMETRY']._serialized_end = 1653 - _globals['_TRANSFORM']._serialized_start = 1656 - _globals['_TRANSFORM']._serialized_end = 1882 - _globals['_WORLDSTATE']._serialized_start = 1885 - _globals['_WORLDSTATE']._serialized_end = 2021 - _globals['_ACTUATORSTATUS']._serialized_start = 2023 - _globals['_ACTUATORSTATUS']._serialized_end = 2068 - _globals['_RESPONSEMETADATA']._serialized_start = 2070 - _globals['_RESPONSEMETADATA']._serialized_end = 2170 - _globals['_DOCOMMANDREQUEST']._serialized_start = 2172 - _globals['_DOCOMMANDREQUEST']._serialized_end = 2261 - _globals['_DOCOMMANDRESPONSE']._serialized_start = 2263 - _globals['_DOCOMMANDRESPONSE']._serialized_end = 2331 - _globals['_GETKINEMATICSREQUEST']._serialized_start = 2333 - _globals['_GETKINEMATICSREQUEST']._serialized_end = 2422 - _globals['_GETKINEMATICSRESPONSE']._serialized_start = 2424 - _globals['_GETKINEMATICSRESPONSE']._serialized_end = 2550 - _globals['_GETGEOMETRIESREQUEST']._serialized_start = 2552 - _globals['_GETGEOMETRIESREQUEST']._serialized_end = 2641 - _globals['_GETGEOMETRIESRESPONSE']._serialized_start = 2643 - _globals['_GETGEOMETRIESRESPONSE']._serialized_end = 2724 - _globals['_GETREADINGSREQUEST']._serialized_start = 2726 - _globals['_GETREADINGSREQUEST']._serialized_end = 2813 - _globals['_GETREADINGSRESPONSE']._serialized_start = 2816 - _globals['_GETREADINGSRESPONSE']._serialized_end = 3001 - _globals['_GETREADINGSRESPONSE_READINGSENTRY']._serialized_start = 2918 - _globals['_GETREADINGSRESPONSE_READINGSENTRY']._serialized_end = 3001 - _globals['_LOGENTRY']._serialized_start = 3004 - _globals['_LOGENTRY']._serialized_end = 3283 \ No newline at end of file + _globals['_POINTCLOUD']._serialized_start = 919 + _globals['_POINTCLOUD']._serialized_end = 964 + _globals['_GEOMETRY']._serialized_start = 967 + _globals['_GEOMETRY']._serialized_end = 1325 + _globals['_GEOMETRIESINFRAME']._serialized_start = 1327 + _globals['_GEOMETRIESINFRAME']._serialized_end = 1445 + _globals['_POINTCLOUDOBJECT']._serialized_start = 1447 + _globals['_POINTCLOUDOBJECT']._serialized_end = 1565 + _globals['_GEOPOINT']._serialized_start = 1567 + _globals['_GEOPOINT']._serialized_end = 1635 + _globals['_GEOGEOMETRY']._serialized_start = 1637 + _globals['_GEOGEOMETRY']._serialized_end = 1762 + _globals['_TRANSFORM']._serialized_start = 1765 + _globals['_TRANSFORM']._serialized_end = 2082 + _globals['_WORLDSTATE']._serialized_start = 2085 + _globals['_WORLDSTATE']._serialized_end = 2221 + _globals['_ACTUATORSTATUS']._serialized_start = 2223 + _globals['_ACTUATORSTATUS']._serialized_end = 2268 + _globals['_RESPONSEMETADATA']._serialized_start = 2270 + _globals['_RESPONSEMETADATA']._serialized_end = 2370 + _globals['_DOCOMMANDREQUEST']._serialized_start = 2372 + _globals['_DOCOMMANDREQUEST']._serialized_end = 2461 + _globals['_DOCOMMANDRESPONSE']._serialized_start = 2463 + _globals['_DOCOMMANDRESPONSE']._serialized_end = 2531 + _globals['_GETKINEMATICSREQUEST']._serialized_start = 2533 + _globals['_GETKINEMATICSREQUEST']._serialized_end = 2622 + _globals['_GETKINEMATICSRESPONSE']._serialized_start = 2624 + _globals['_GETKINEMATICSRESPONSE']._serialized_end = 2750 + _globals['_GETGEOMETRIESREQUEST']._serialized_start = 2752 + _globals['_GETGEOMETRIESREQUEST']._serialized_end = 2841 + _globals['_GETGEOMETRIESRESPONSE']._serialized_start = 2843 + _globals['_GETGEOMETRIESRESPONSE']._serialized_end = 2924 + _globals['_GETREADINGSREQUEST']._serialized_start = 2926 + _globals['_GETREADINGSREQUEST']._serialized_end = 3013 + _globals['_GETREADINGSRESPONSE']._serialized_start = 3016 + _globals['_GETREADINGSRESPONSE']._serialized_end = 3201 + _globals['_GETREADINGSRESPONSE_READINGSENTRY']._serialized_start = 3118 + _globals['_GETREADINGSRESPONSE_READINGSENTRY']._serialized_end = 3201 + _globals['_LOGENTRY']._serialized_start = 3204 + _globals['_LOGENTRY']._serialized_end = 3483 \ No newline at end of file diff --git a/src/viam/gen/common/v1/common_pb2.pyi b/src/viam/gen/common/v1/common_pb2.pyi index be939d793..355224403 100644 --- a/src/viam/gen/common/v1/common_pb2.pyi +++ b/src/viam/gen/common/v1/common_pb2.pyi @@ -233,6 +233,19 @@ class Mesh(google.protobuf.message.Message): ... global___Mesh = Mesh +@typing.final +class PointCloud(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + POINT_CLOUD_FIELD_NUMBER: builtins.int + point_cloud: builtins.bytes + + def __init__(self, *, point_cloud: builtins.bytes=...) -> None: + ... + + def ClearField(self, field_name: typing.Literal['point_cloud', b'point_cloud']) -> None: + ... +global___PointCloud = PointCloud + @typing.final class Geometry(google.protobuf.message.Message): """Geometry contains the dimensions of a given geometry and the pose of its center. The geometry is one of either a sphere or a box.""" @@ -242,6 +255,7 @@ class Geometry(google.protobuf.message.Message): BOX_FIELD_NUMBER: builtins.int CAPSULE_FIELD_NUMBER: builtins.int MESH_FIELD_NUMBER: builtins.int + POINTCLOUD_FIELD_NUMBER: builtins.int LABEL_FIELD_NUMBER: builtins.int label: builtins.str 'Label of the geometry. If none supplied, will be an empty string.' @@ -266,16 +280,20 @@ class Geometry(google.protobuf.message.Message): def mesh(self) -> global___Mesh: ... - def __init__(self, *, center: global___Pose | None=..., sphere: global___Sphere | None=..., box: global___RectangularPrism | None=..., capsule: global___Capsule | None=..., mesh: global___Mesh | None=..., label: builtins.str=...) -> None: + @property + def pointcloud(self) -> global___PointCloud: + ... + + def __init__(self, *, center: global___Pose | None=..., sphere: global___Sphere | None=..., box: global___RectangularPrism | None=..., capsule: global___Capsule | None=..., mesh: global___Mesh | None=..., pointcloud: global___PointCloud | None=..., label: builtins.str=...) -> None: ... - def HasField(self, field_name: typing.Literal['box', b'box', 'capsule', b'capsule', 'center', b'center', 'geometry_type', b'geometry_type', 'mesh', b'mesh', 'sphere', b'sphere']) -> builtins.bool: + def HasField(self, field_name: typing.Literal['box', b'box', 'capsule', b'capsule', 'center', b'center', 'geometry_type', b'geometry_type', 'mesh', b'mesh', 'pointcloud', b'pointcloud', 'sphere', b'sphere']) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal['box', b'box', 'capsule', b'capsule', 'center', b'center', 'geometry_type', b'geometry_type', 'label', b'label', 'mesh', b'mesh', 'sphere', b'sphere']) -> None: + def ClearField(self, field_name: typing.Literal['box', b'box', 'capsule', b'capsule', 'center', b'center', 'geometry_type', b'geometry_type', 'label', b'label', 'mesh', b'mesh', 'pointcloud', b'pointcloud', 'sphere', b'sphere']) -> None: ... - def WhichOneof(self, oneof_group: typing.Literal['geometry_type', b'geometry_type']) -> typing.Literal['sphere', 'box', 'capsule', 'mesh'] | None: + def WhichOneof(self, oneof_group: typing.Literal['geometry_type', b'geometry_type']) -> typing.Literal['sphere', 'box', 'capsule', 'mesh', 'pointcloud'] | None: ... global___Geometry = Geometry @@ -376,8 +394,12 @@ class Transform(google.protobuf.message.Message): REFERENCE_FRAME_FIELD_NUMBER: builtins.int POSE_IN_OBSERVER_FRAME_FIELD_NUMBER: builtins.int PHYSICAL_OBJECT_FIELD_NUMBER: builtins.int + UUID_FIELD_NUMBER: builtins.int + METADATA_FIELD_NUMBER: builtins.int reference_frame: builtins.str 'the name of a given reference frame' + uuid: builtins.bytes + 'The UUID of the transform' @property def pose_in_observer_frame(self) -> global___PoseInFrame: @@ -387,15 +409,24 @@ class Transform(google.protobuf.message.Message): def physical_object(self) -> global___Geometry: ... - def __init__(self, *, reference_frame: builtins.str=..., pose_in_observer_frame: global___PoseInFrame | None=..., physical_object: global___Geometry | None=...) -> None: + @property + def metadata(self) -> google.protobuf.struct_pb2.Struct: + """Can hold information like color, opacity, points colors, collision_allowed, etc...""" + + def __init__(self, *, reference_frame: builtins.str=..., pose_in_observer_frame: global___PoseInFrame | None=..., physical_object: global___Geometry | None=..., uuid: builtins.bytes=..., metadata: google.protobuf.struct_pb2.Struct | None=...) -> None: + ... + + def HasField(self, field_name: typing.Literal['_metadata', b'_metadata', '_physical_object', b'_physical_object', 'metadata', b'metadata', 'physical_object', b'physical_object', 'pose_in_observer_frame', b'pose_in_observer_frame']) -> builtins.bool: ... - def HasField(self, field_name: typing.Literal['_physical_object', b'_physical_object', 'physical_object', b'physical_object', 'pose_in_observer_frame', b'pose_in_observer_frame']) -> builtins.bool: + def ClearField(self, field_name: typing.Literal['_metadata', b'_metadata', '_physical_object', b'_physical_object', 'metadata', b'metadata', 'physical_object', b'physical_object', 'pose_in_observer_frame', b'pose_in_observer_frame', 'reference_frame', b'reference_frame', 'uuid', b'uuid']) -> None: ... - def ClearField(self, field_name: typing.Literal['_physical_object', b'_physical_object', 'physical_object', b'physical_object', 'pose_in_observer_frame', b'pose_in_observer_frame', 'reference_frame', b'reference_frame']) -> None: + @typing.overload + def WhichOneof(self, oneof_group: typing.Literal['_metadata', b'_metadata']) -> typing.Literal['metadata'] | None: ... + @typing.overload def WhichOneof(self, oneof_group: typing.Literal['_physical_object', b'_physical_object']) -> typing.Literal['physical_object'] | None: ... global___Transform = Transform diff --git a/src/viam/gen/service/worldstatestore/__init__.py b/src/viam/gen/service/worldstatestore/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/src/viam/gen/service/worldstatestore/v1/__init__.py b/src/viam/gen/service/worldstatestore/v1/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/src/viam/gen/service/worldstatestore/v1/world_state_store_grpc.py b/src/viam/gen/service/worldstatestore/v1/world_state_store_grpc.py new file mode 100644 index 000000000..0552f9726 --- /dev/null +++ b/src/viam/gen/service/worldstatestore/v1/world_state_store_grpc.py @@ -0,0 +1,55 @@ +import abc +import typing +import grpclib.const +import grpclib.client +import grpclib.exceptions +if typing.TYPE_CHECKING: + import grpclib.server +from .... import common +import google.api.annotations_pb2 +import google.protobuf.field_mask_pb2 +import google.protobuf.struct_pb2 +from .... import service + +class WorldStateStoreServiceBase(abc.ABC): + + @abc.abstractmethod + async def ListUUIDs(self, stream: 'grpclib.server.Stream[service.worldstatestore.v1.world_state_store_pb2.ListUUIDsRequest, service.worldstatestore.v1.world_state_store_pb2.ListUUIDsResponse]') -> None: + pass + + @abc.abstractmethod + async def GetTransform(self, stream: 'grpclib.server.Stream[service.worldstatestore.v1.world_state_store_pb2.GetTransformRequest, service.worldstatestore.v1.world_state_store_pb2.GetTransformResponse]') -> None: + pass + + @abc.abstractmethod + async def StreamTransformChanges(self, stream: 'grpclib.server.Stream[service.worldstatestore.v1.world_state_store_pb2.StreamTransformChangesRequest, service.worldstatestore.v1.world_state_store_pb2.StreamTransformChangesResponse]') -> None: + pass + + @abc.abstractmethod + async def DoCommand(self, stream: 'grpclib.server.Stream[common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse]') -> None: + pass + + def __mapping__(self) -> typing.Dict[str, grpclib.const.Handler]: + return {'/viam.service.worldstatestore.v1.WorldStateStoreService/ListUUIDs': grpclib.const.Handler(self.ListUUIDs, grpclib.const.Cardinality.UNARY_UNARY, service.worldstatestore.v1.world_state_store_pb2.ListUUIDsRequest, service.worldstatestore.v1.world_state_store_pb2.ListUUIDsResponse), '/viam.service.worldstatestore.v1.WorldStateStoreService/GetTransform': grpclib.const.Handler(self.GetTransform, grpclib.const.Cardinality.UNARY_UNARY, service.worldstatestore.v1.world_state_store_pb2.GetTransformRequest, service.worldstatestore.v1.world_state_store_pb2.GetTransformResponse), '/viam.service.worldstatestore.v1.WorldStateStoreService/StreamTransformChanges': grpclib.const.Handler(self.StreamTransformChanges, grpclib.const.Cardinality.UNARY_STREAM, service.worldstatestore.v1.world_state_store_pb2.StreamTransformChangesRequest, service.worldstatestore.v1.world_state_store_pb2.StreamTransformChangesResponse), '/viam.service.worldstatestore.v1.WorldStateStoreService/DoCommand': grpclib.const.Handler(self.DoCommand, grpclib.const.Cardinality.UNARY_UNARY, common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse)} + +class UnimplementedWorldStateStoreServiceBase(WorldStateStoreServiceBase): + + async def ListUUIDs(self, stream: 'grpclib.server.Stream[service.worldstatestore.v1.world_state_store_pb2.ListUUIDsRequest, service.worldstatestore.v1.world_state_store_pb2.ListUUIDsResponse]') -> None: + raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED) + + async def GetTransform(self, stream: 'grpclib.server.Stream[service.worldstatestore.v1.world_state_store_pb2.GetTransformRequest, service.worldstatestore.v1.world_state_store_pb2.GetTransformResponse]') -> None: + raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED) + + async def StreamTransformChanges(self, stream: 'grpclib.server.Stream[service.worldstatestore.v1.world_state_store_pb2.StreamTransformChangesRequest, service.worldstatestore.v1.world_state_store_pb2.StreamTransformChangesResponse]') -> None: + raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED) + + async def DoCommand(self, stream: 'grpclib.server.Stream[common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse]') -> None: + raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED) + +class WorldStateStoreServiceStub: + + def __init__(self, channel: grpclib.client.Channel) -> None: + self.ListUUIDs = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.worldstatestore.v1.WorldStateStoreService/ListUUIDs', service.worldstatestore.v1.world_state_store_pb2.ListUUIDsRequest, service.worldstatestore.v1.world_state_store_pb2.ListUUIDsResponse) + self.GetTransform = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.worldstatestore.v1.WorldStateStoreService/GetTransform', service.worldstatestore.v1.world_state_store_pb2.GetTransformRequest, service.worldstatestore.v1.world_state_store_pb2.GetTransformResponse) + self.StreamTransformChanges = grpclib.client.UnaryStreamMethod(channel, '/viam.service.worldstatestore.v1.WorldStateStoreService/StreamTransformChanges', service.worldstatestore.v1.world_state_store_pb2.StreamTransformChangesRequest, service.worldstatestore.v1.world_state_store_pb2.StreamTransformChangesResponse) + self.DoCommand = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.worldstatestore.v1.WorldStateStoreService/DoCommand', common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse) \ No newline at end of file diff --git a/src/viam/gen/service/worldstatestore/v1/world_state_store_pb2.py b/src/viam/gen/service/worldstatestore/v1/world_state_store_pb2.py new file mode 100644 index 000000000..210c9cf27 --- /dev/null +++ b/src/viam/gen/service/worldstatestore/v1/world_state_store_pb2.py @@ -0,0 +1,39 @@ +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion(_runtime_version.Domain.PUBLIC, 5, 29, 2, '', 'service/worldstatestore/v1/world_state_store.proto') +_sym_db = _symbol_database.Default() +from ....common.v1 import common_pb2 as common_dot_v1_dot_common__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2service/worldstatestore/v1/world_state_store.proto\x12\x1fviam.service.worldstatestore.v1\x1a\x16common/v1/common.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto"U\n\x10ListUUIDsRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra")\n\x11ListUUIDsResponse\x12\x14\n\x05uuids\x18\x01 \x03(\x0cR\x05uuids"l\n\x13GetTransformRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04uuid\x18\x02 \x01(\x0cR\x04uuid\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"O\n\x14GetTransformResponse\x127\n\ttransform\x18\x02 \x01(\x0b2\x19.viam.common.v1.TransformR\ttransform"b\n\x1dStreamTransformChangesRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"\xf3\x01\n\x1eStreamTransformChangesResponse\x12U\n\x0bchange_type\x18\x01 \x01(\x0e24.viam.service.worldstatestore.v1.TransformChangeTypeR\nchangeType\x127\n\ttransform\x18\x02 \x01(\x0b2\x19.viam.common.v1.TransformR\ttransform\x12A\n\x0eupdated_fields\x18\x03 \x01(\x0b2\x1a.google.protobuf.FieldMaskR\rupdatedFields*\xa3\x01\n\x13TransformChangeType\x12%\n!TRANSFORM_CHANGE_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bTRANSFORM_CHANGE_TYPE_ADDED\x10\x01\x12!\n\x1dTRANSFORM_CHANGE_TYPE_REMOVED\x10\x02\x12!\n\x1dTRANSFORM_CHANGE_TYPE_UPDATED\x10\x032\x8c\x05\n\x16WorldStateStoreService\x12t\n\tListUUIDs\x121.viam.service.worldstatestore.v1.ListUUIDsRequest\x1a2.viam.service.worldstatestore.v1.ListUUIDsResponse"\x00\x12}\n\x0cGetTransform\x124.viam.service.worldstatestore.v1.GetTransformRequest\x1a5.viam.service.worldstatestore.v1.GetTransformResponse"\x00\x12\xe9\x01\n\x16StreamTransformChanges\x12>.viam.service.worldstatestore.v1.StreamTransformChangesRequest\x1a?.viam.service.worldstatestore.v1.StreamTransformChangesResponse"L\x82\xd3\xe4\x93\x02F\x12D/viam/api/v1/service/worldstatestore/{name}/stream_transform_changes0\x01\x12\x90\x01\n\tDoCommand\x12 .viam.common.v1.DoCommandRequest\x1a!.viam.common.v1.DoCommandResponse">\x82\xd3\xe4\x93\x028"6/viam/api/v1/service/worldstatestore/{name}/do_commandBQ\n#com.viam.service.worldstatestore.v1Z*go.viam.com/api/service/worldstatestore/v1b\x06proto3') +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'service.worldstatestore.v1.world_state_store_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n#com.viam.service.worldstatestore.v1Z*go.viam.com/api/service/worldstatestore/v1' + _globals['_WORLDSTATESTORESERVICE'].methods_by_name['StreamTransformChanges']._loaded_options = None + _globals['_WORLDSTATESTORESERVICE'].methods_by_name['StreamTransformChanges']._serialized_options = b'\x82\xd3\xe4\x93\x02F\x12D/viam/api/v1/service/worldstatestore/{name}/stream_transform_changes' + _globals['_WORLDSTATESTORESERVICE'].methods_by_name['DoCommand']._loaded_options = None + _globals['_WORLDSTATESTORESERVICE'].methods_by_name['DoCommand']._serialized_options = b'\x82\xd3\xe4\x93\x028"6/viam/api/v1/service/worldstatestore/{name}/do_command' + _globals['_TRANSFORMCHANGETYPE']._serialized_start = 873 + _globals['_TRANSFORMCHANGETYPE']._serialized_end = 1036 + _globals['_LISTUUIDSREQUEST']._serialized_start = 205 + _globals['_LISTUUIDSREQUEST']._serialized_end = 290 + _globals['_LISTUUIDSRESPONSE']._serialized_start = 292 + _globals['_LISTUUIDSRESPONSE']._serialized_end = 333 + _globals['_GETTRANSFORMREQUEST']._serialized_start = 335 + _globals['_GETTRANSFORMREQUEST']._serialized_end = 443 + _globals['_GETTRANSFORMRESPONSE']._serialized_start = 445 + _globals['_GETTRANSFORMRESPONSE']._serialized_end = 524 + _globals['_STREAMTRANSFORMCHANGESREQUEST']._serialized_start = 526 + _globals['_STREAMTRANSFORMCHANGESREQUEST']._serialized_end = 624 + _globals['_STREAMTRANSFORMCHANGESRESPONSE']._serialized_start = 627 + _globals['_STREAMTRANSFORMCHANGESRESPONSE']._serialized_end = 870 + _globals['_WORLDSTATESTORESERVICE']._serialized_start = 1039 + _globals['_WORLDSTATESTORESERVICE']._serialized_end = 1691 \ No newline at end of file diff --git a/src/viam/gen/service/worldstatestore/v1/world_state_store_pb2.pyi b/src/viam/gen/service/worldstatestore/v1/world_state_store_pb2.pyi new file mode 100644 index 000000000..dfd0cd80b --- /dev/null +++ b/src/viam/gen/service/worldstatestore/v1/world_state_store_pb2.pyi @@ -0,0 +1,171 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import collections.abc +from .... import common +import google.protobuf.descriptor +import google.protobuf.field_mask_pb2 +import google.protobuf.internal.containers +import google.protobuf.internal.enum_type_wrapper +import google.protobuf.message +import google.protobuf.struct_pb2 +import sys +import typing +if sys.version_info >= (3, 10): + import typing as typing_extensions +else: + import typing_extensions +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor + +class _TransformChangeType: + ValueType = typing.NewType('ValueType', builtins.int) + V: typing_extensions.TypeAlias = ValueType + +class _TransformChangeTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_TransformChangeType.ValueType], builtins.type): + DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor + TRANSFORM_CHANGE_TYPE_UNSPECIFIED: _TransformChangeType.ValueType + TRANSFORM_CHANGE_TYPE_ADDED: _TransformChangeType.ValueType + TRANSFORM_CHANGE_TYPE_REMOVED: _TransformChangeType.ValueType + TRANSFORM_CHANGE_TYPE_UPDATED: _TransformChangeType.ValueType + +class TransformChangeType(_TransformChangeType, metaclass=_TransformChangeTypeEnumTypeWrapper): + ... +TRANSFORM_CHANGE_TYPE_UNSPECIFIED: TransformChangeType.ValueType +TRANSFORM_CHANGE_TYPE_ADDED: TransformChangeType.ValueType +TRANSFORM_CHANGE_TYPE_REMOVED: TransformChangeType.ValueType +TRANSFORM_CHANGE_TYPE_UPDATED: TransformChangeType.ValueType +global___TransformChangeType = TransformChangeType + +@typing.final +class ListUUIDsRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + NAME_FIELD_NUMBER: builtins.int + EXTRA_FIELD_NUMBER: builtins.int + name: builtins.str + 'Name of the world object store service' + + @property + def extra(self) -> google.protobuf.struct_pb2.Struct: + """Additional arguments to the method""" + + def __init__(self, *, name: builtins.str=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None: + ... + + def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool: + ... + + def ClearField(self, field_name: typing.Literal['extra', b'extra', 'name', b'name']) -> None: + ... +global___ListUUIDsRequest = ListUUIDsRequest + +@typing.final +class ListUUIDsResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + UUIDS_FIELD_NUMBER: builtins.int + + @property + def uuids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]: + ... + + def __init__(self, *, uuids: collections.abc.Iterable[builtins.bytes] | None=...) -> None: + ... + + def ClearField(self, field_name: typing.Literal['uuids', b'uuids']) -> None: + ... +global___ListUUIDsResponse = ListUUIDsResponse + +@typing.final +class GetTransformRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + NAME_FIELD_NUMBER: builtins.int + UUID_FIELD_NUMBER: builtins.int + EXTRA_FIELD_NUMBER: builtins.int + name: builtins.str + 'Name of the world object store service' + uuid: builtins.bytes + + @property + def extra(self) -> google.protobuf.struct_pb2.Struct: + """Additional arguments to the method""" + + def __init__(self, *, name: builtins.str=..., uuid: builtins.bytes=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None: + ... + + def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool: + ... + + def ClearField(self, field_name: typing.Literal['extra', b'extra', 'name', b'name', 'uuid', b'uuid']) -> None: + ... +global___GetTransformRequest = GetTransformRequest + +@typing.final +class GetTransformResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + TRANSFORM_FIELD_NUMBER: builtins.int + + @property + def transform(self) -> common.v1.common_pb2.Transform: + ... + + def __init__(self, *, transform: common.v1.common_pb2.Transform | None=...) -> None: + ... + + def HasField(self, field_name: typing.Literal['transform', b'transform']) -> builtins.bool: + ... + + def ClearField(self, field_name: typing.Literal['transform', b'transform']) -> None: + ... +global___GetTransformResponse = GetTransformResponse + +@typing.final +class StreamTransformChangesRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + NAME_FIELD_NUMBER: builtins.int + EXTRA_FIELD_NUMBER: builtins.int + name: builtins.str + 'Name of the world object store service' + + @property + def extra(self) -> google.protobuf.struct_pb2.Struct: + """Additional arguments to the method""" + + def __init__(self, *, name: builtins.str=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None: + ... + + def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool: + ... + + def ClearField(self, field_name: typing.Literal['extra', b'extra', 'name', b'name']) -> None: + ... +global___StreamTransformChangesRequest = StreamTransformChangesRequest + +@typing.final +class StreamTransformChangesResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + CHANGE_TYPE_FIELD_NUMBER: builtins.int + TRANSFORM_FIELD_NUMBER: builtins.int + UPDATED_FIELDS_FIELD_NUMBER: builtins.int + change_type: global___TransformChangeType.ValueType + + @property + def transform(self) -> common.v1.common_pb2.Transform: + ... + + @property + def updated_fields(self) -> google.protobuf.field_mask_pb2.FieldMask: + """The field mask of the transform that has changed, if any. For added transforms, this will be empty. For updated + transforms, this will be the fields that have changed. For removed transforms, this will be the transform's UUID + path. + """ + + def __init__(self, *, change_type: global___TransformChangeType.ValueType=..., transform: common.v1.common_pb2.Transform | None=..., updated_fields: google.protobuf.field_mask_pb2.FieldMask | None=...) -> None: + ... + + def HasField(self, field_name: typing.Literal['transform', b'transform', 'updated_fields', b'updated_fields']) -> builtins.bool: + ... + + def ClearField(self, field_name: typing.Literal['change_type', b'change_type', 'transform', b'transform', 'updated_fields', b'updated_fields']) -> None: + ... +global___StreamTransformChangesResponse = StreamTransformChangesResponse \ No newline at end of file diff --git a/src/viam/media/video.py b/src/viam/media/video.py index e016e5136..b32d01e76 100644 --- a/src/viam/media/video.py +++ b/src/viam/media/video.py @@ -1,6 +1,7 @@ from array import array from enum import Enum from typing import List, Optional, Tuple + from typing_extensions import Self from viam.errors import NotSupportedError diff --git a/src/viam/proto/common/__init__.py b/src/viam/proto/common/__init__.py index f835f2ac6..9e1d510f5 100644 --- a/src/viam/proto/common/__init__.py +++ b/src/viam/proto/common/__init__.py @@ -22,6 +22,7 @@ LogEntry, Mesh, Orientation, + PointCloud, PointCloudObject, Pose, PoseInFrame, @@ -53,6 +54,7 @@ "LogEntry", "Mesh", "Orientation", + "PointCloud", "PointCloudObject", "Pose", "PoseInFrame", diff --git a/src/viam/proto/service/worldstatestore/__init__.py b/src/viam/proto/service/worldstatestore/__init__.py new file mode 100644 index 000000000..b6c2b155a --- /dev/null +++ b/src/viam/proto/service/worldstatestore/__init__.py @@ -0,0 +1,32 @@ +""" +@generated by Viam. +Do not edit manually! +""" + +from ....gen.service.worldstatestore.v1.world_state_store_grpc import ( + UnimplementedWorldStateStoreServiceBase, + WorldStateStoreServiceBase, + WorldStateStoreServiceStub, +) +from ....gen.service.worldstatestore.v1.world_state_store_pb2 import ( + GetTransformRequest, + GetTransformResponse, + ListUUIDsRequest, + ListUUIDsResponse, + StreamTransformChangesRequest, + StreamTransformChangesResponse, + TransformChangeType, +) + +__all__ = [ + "UnimplementedWorldStateStoreServiceBase", + "WorldStateStoreServiceBase", + "WorldStateStoreServiceStub", + "GetTransformRequest", + "GetTransformResponse", + "ListUUIDsRequest", + "ListUUIDsResponse", + "StreamTransformChangesRequest", + "StreamTransformChangesResponse", + "TransformChangeType", +] diff --git a/src/viam/version_metadata.py b/src/viam/version_metadata.py index 424b8ee79..1012f1aa6 100644 --- a/src/viam/version_metadata.py +++ b/src/viam/version_metadata.py @@ -1,4 +1,4 @@ __version__ = "0.54.0" -API_VERSION = "v0.1.474" +API_VERSION = "v0.1.475" SDK_VERSION = __version__