"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import blickfeld.data.point_pb2
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ...

class Scanline(google.protobuf.message.Message):
    """*
    This section describes the contents of a single scan line in a point cloud frame.
    """
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    ID_FIELD_NUMBER: builtins.int
    FRAME_ID_FIELD_NUMBER: builtins.int
    POINTS_FIELD_NUMBER: builtins.int
    START_OFFSET_NS_FIELD_NUMBER: builtins.int
    id: builtins.int = ...
    """Scan line ID in the corresponding frame"""

    frame_id: builtins.int = ...
    """Frame ID of the corresponding frame"""

    @property
    def points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[blickfeld.data.point_pb2.Point]:
        """Refer to [Point](#blickfeld.protocol.data.Point)"""
        pass
    start_offset_ns: builtins.int = ...
    """Unit: [ns] - start time of the scanline in relation to [Frame.start_time_ns](#blickfeld.protocol.data.Frame.start_time_ns)"""

    def __init__(self,
        *,
        id : typing.Optional[builtins.int] = ...,
        frame_id : typing.Optional[builtins.int] = ...,
        points : typing.Optional[typing.Iterable[blickfeld.data.point_pb2.Point]] = ...,
        start_offset_ns : typing.Optional[builtins.int] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"frame_id",b"frame_id",u"id",b"id",u"start_offset_ns",b"start_offset_ns"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"frame_id",b"frame_id",u"id",b"id",u"points",b"points",u"start_offset_ns",b"start_offset_ns"]) -> None: ...
global___Scanline = Scanline
