from cmvr.common import geometry_pb2 as _geometry_pb2
from cmvr.config import touch_screen_common_config_pb2 as _touch_screen_common_config_pb2
from google.protobuf.internal import containers as _containers
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from collections.abc import Iterable as _Iterable, Mapping as _Mapping
from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union

DESCRIPTOR: _descriptor.FileDescriptor

class TouchScreenApriltagConfig(_message.Message):
    __slots__ = ("tag_size_m", "depth_policy", "target_point_method")
    TAG_SIZE_M_FIELD_NUMBER: _ClassVar[int]
    DEPTH_POLICY_FIELD_NUMBER: _ClassVar[int]
    TARGET_POINT_METHOD_FIELD_NUMBER: _ClassVar[int]
    tag_size_m: float
    depth_policy: _touch_screen_common_config_pb2.TouchScreenDepthPolicy
    target_point_method: _touch_screen_common_config_pb2.TouchScreenTargetPointMethod
    def __init__(self, tag_size_m: _Optional[float] = ..., depth_policy: _Optional[_Union[_touch_screen_common_config_pb2.TouchScreenDepthPolicy, str]] = ..., target_point_method: _Optional[_Union[_touch_screen_common_config_pb2.TouchScreenTargetPointMethod, str]] = ...) -> None: ...

class TouchScreenIbvsConfig(_message.Message):
    __slots__ = ("camera_link", "mu", "qdot_max", "vmax6", "amax6", "twist_filter_alpha", "enable_joint_limit_avoidance", "joint_limit_avoidance_gain", "joint_limit_avoidance_margin_ratio", "joint_limit_avoidance_max_push", "r_camera_to_visp", "r_camera_to_urdf", "control_joint_names")
    CAMERA_LINK_FIELD_NUMBER: _ClassVar[int]
    LAMBDA_FIELD_NUMBER: _ClassVar[int]
    MU_FIELD_NUMBER: _ClassVar[int]
    QDOT_MAX_FIELD_NUMBER: _ClassVar[int]
    VMAX6_FIELD_NUMBER: _ClassVar[int]
    AMAX6_FIELD_NUMBER: _ClassVar[int]
    TWIST_FILTER_ALPHA_FIELD_NUMBER: _ClassVar[int]
    ENABLE_JOINT_LIMIT_AVOIDANCE_FIELD_NUMBER: _ClassVar[int]
    JOINT_LIMIT_AVOIDANCE_GAIN_FIELD_NUMBER: _ClassVar[int]
    JOINT_LIMIT_AVOIDANCE_MARGIN_RATIO_FIELD_NUMBER: _ClassVar[int]
    JOINT_LIMIT_AVOIDANCE_MAX_PUSH_FIELD_NUMBER: _ClassVar[int]
    R_CAMERA_TO_VISP_FIELD_NUMBER: _ClassVar[int]
    R_CAMERA_TO_URDF_FIELD_NUMBER: _ClassVar[int]
    CONTROL_JOINT_NAMES_FIELD_NUMBER: _ClassVar[int]
    camera_link: str
    mu: float
    qdot_max: float
    vmax6: _geometry_pb2.Vec6
    amax6: _geometry_pb2.Vec6
    twist_filter_alpha: float
    enable_joint_limit_avoidance: bool
    joint_limit_avoidance_gain: float
    joint_limit_avoidance_margin_ratio: float
    joint_limit_avoidance_max_push: float
    r_camera_to_visp: _geometry_pb2.Mat3
    r_camera_to_urdf: _geometry_pb2.Mat3
    control_joint_names: _containers.RepeatedScalarFieldContainer[str]
    def __init__(self, camera_link: _Optional[str] = ..., mu: _Optional[float] = ..., qdot_max: _Optional[float] = ..., vmax6: _Optional[_Union[_geometry_pb2.Vec6, _Mapping]] = ..., amax6: _Optional[_Union[_geometry_pb2.Vec6, _Mapping]] = ..., twist_filter_alpha: _Optional[float] = ..., enable_joint_limit_avoidance: _Optional[bool] = ..., joint_limit_avoidance_gain: _Optional[float] = ..., joint_limit_avoidance_margin_ratio: _Optional[float] = ..., joint_limit_avoidance_max_push: _Optional[float] = ..., r_camera_to_visp: _Optional[_Union[_geometry_pb2.Mat3, _Mapping]] = ..., r_camera_to_urdf: _Optional[_Union[_geometry_pb2.Mat3, _Mapping]] = ..., control_joint_names: _Optional[_Iterable[str]] = ..., **kwargs) -> None: ...
