

# Generated by the protocol buffer compiler.  DO NOT EDIT!
# sources: blickfeld/base/config/geolocation.proto, blickfeld/base/config/range.proto
# plugin: python-betterproto
from dataclasses import dataclass

import blickfeld_qb2.betterproto as betterproto
import blickfeld_qb2.betterproto.lib.google.protobuf as betterproto_lib_google_protobuf


@dataclass(eq=False, repr=False)
class Range(betterproto.Message):
    """
    This section defines ranges for numerical types. They can be used to define
    minimum and maximum values.
    """

    pass


@dataclass(eq=False, repr=False)
class RangeUint32(betterproto.Message):
    """An unsigned integer range"""

    minimum: int = betterproto.uint32_field(1)
    """An unsigned integer minimum value"""

    maximum: int = betterproto.uint32_field(2)
    """An unsigned integer maximum value"""


@dataclass(eq=False, repr=False)
class RangeInt32(betterproto.Message):
    """A signed integer range"""

    minimum: int = betterproto.int32_field(1)
    """A signed integer minimum value"""

    maximum: int = betterproto.int32_field(2)
    """A signed integer maximum value"""


@dataclass(eq=False, repr=False)
class RangeFloat(betterproto.Message):
    """A single precision float range"""

    minimum: float = betterproto.float_field(1)
    """A single precision float minimum"""

    maximum: float = betterproto.float_field(2)
    """A single precision float maximum"""


@dataclass(eq=False, repr=False)
class RangeDouble(betterproto.Message):
    """A double precision float range"""

    minimum: float = betterproto.double_field(1)
    """A double precision float minimum"""

    maximum: float = betterproto.double_field(2)
    """A double precision float maximum"""


@dataclass(eq=False, repr=False)
class Geolocation(betterproto.Message):
    """
    Geolocation in the geographic coordinate system. Is used to geo-reference
    device coordinate systems and produced data.
    """

    latitude: float = betterproto.float_field(1)
    """Latitude angle"""

    longitude: float = betterproto.float_field(2)
    """Longitude angle"""

    metadata: "betterproto_lib_google_protobuf.Struct" = betterproto.message_field(100)
    """Arbitrary metadata storage for client applications"""
