"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class CameraCalibration(google.protobuf.message.Message):
    """Kamera-spezifische Metadaten"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SENSOR_NAME_FIELD_NUMBER: builtins.int
    INTRINSIC_FIELD_NUMBER: builtins.int
    sensor_name: builtins.str
    @property
    def intrinsic(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]:
        """z.B. Intrinsic-Matrix (3×3 row-major)"""

    def __init__(
        self,
        *,
        sensor_name: builtins.str = ...,
        intrinsic: collections.abc.Iterable[builtins.float] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["intrinsic", b"intrinsic", "sensor_name", b"sensor_name"]) -> None: ...

global___CameraCalibration = CameraCalibration

@typing.final
class CameraFrame(google.protobuf.message.Message):
    """Eine einzelne Kamera-Aufnahme"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SENSOR_NAME_FIELD_NUMBER: builtins.int
    FRAME_TIMESTAMP_NS_FIELD_NUMBER: builtins.int
    WIDTH_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    ENCODING_FIELD_NUMBER: builtins.int
    IMAGE_DATA_FIELD_NUMBER: builtins.int
    CALIBRATION_FIELD_NUMBER: builtins.int
    sensor_name: builtins.str
    frame_timestamp_ns: builtins.int
    """z.B. zum LiDAR-Sync"""
    width: builtins.int
    height: builtins.int
    encoding: builtins.str
    """"jpeg", "png", "raw_bgr", ..."""
    image_data: builtins.bytes
    @property
    def calibration(self) -> global___CameraCalibration: ...
    def __init__(
        self,
        *,
        sensor_name: builtins.str = ...,
        frame_timestamp_ns: builtins.int = ...,
        width: builtins.int = ...,
        height: builtins.int = ...,
        encoding: builtins.str = ...,
        image_data: builtins.bytes = ...,
        calibration: global___CameraCalibration | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["calibration", b"calibration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["calibration", b"calibration", "encoding", b"encoding", "frame_timestamp_ns", b"frame_timestamp_ns", "height", b"height", "image_data", b"image_data", "sensor_name", b"sensor_name", "width", b"width"]) -> None: ...

global___CameraFrame = CameraFrame
