# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

import common_msgs_pb2 as common__msgs__pb2
import config_msgs_pb2 as config__msgs__pb2
import control_msgs_pb2 as control__msgs__pb2


class ControlStub(object):
    """Missing associated documentation comment in .proto file."""

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.GetControlInfo = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetControlInfo',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.ControlInfo.FromString,
                )
        self.ActivateIndySDK = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/ActivateIndySDK',
                request_serializer=control__msgs__pb2.SDKLicenseInfo.SerializeToString,
                response_deserializer=control__msgs__pb2.SDKLicenseResp.FromString,
                )
        self.MoveJ = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveJ',
                request_serializer=control__msgs__pb2.MoveJReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveJT = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveJT',
                request_serializer=control__msgs__pb2.MoveJTReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveL = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveL',
                request_serializer=control__msgs__pb2.MoveLReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveLT = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveLT',
                request_serializer=control__msgs__pb2.MoveLTReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveC = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveC',
                request_serializer=control__msgs__pb2.MoveCReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveCT = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveCT',
                request_serializer=control__msgs__pb2.MoveCTReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.WaitIO = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/WaitIO',
                request_serializer=control__msgs__pb2.WaitIOReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.WaitTime = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/WaitTime',
                request_serializer=control__msgs__pb2.WaitTimeReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.WaitProgress = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/WaitProgress',
                request_serializer=control__msgs__pb2.WaitProgressReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.WaitTraj = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/WaitTraj',
                request_serializer=control__msgs__pb2.WaitTrajReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.WaitRadius = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/WaitRadius',
                request_serializer=control__msgs__pb2.WaitRadiusReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveJCond = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveJCond',
                request_serializer=control__msgs__pb2.MoveJCondReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.StopMotion = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/StopMotion',
                request_serializer=common__msgs__pb2.StopCat.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.PauseMotion = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/PauseMotion',
                request_serializer=common__msgs__pb2.PauseCat.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.SetDirectTeaching = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetDirectTeaching',
                request_serializer=common__msgs__pb2.State.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.SetSimulationMode = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetSimulationMode',
                request_serializer=common__msgs__pb2.State.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.SetCustomControlMode = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetCustomControlMode',
                request_serializer=common__msgs__pb2.IntMode.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.GetCustomControlMode = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetCustomControlMode',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.IntMode.FromString,
                )
        self.SetFrictionCompensation = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetFrictionCompensation',
                request_serializer=common__msgs__pb2.State.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.GetFrictionCompensationState = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetFrictionCompensationState',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.State.FromString,
                )
        self.Recover = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/Recover',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.SetManualRecovery = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetManualRecovery',
                request_serializer=common__msgs__pb2.State.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveRecoverJoint = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveRecoverJoint',
                request_serializer=control__msgs__pb2.TargetJ.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.SearchProgram = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SearchProgram',
                request_serializer=control__msgs__pb2.Program.SerializeToString,
                response_deserializer=control__msgs__pb2.ProgramInfo.FromString,
                )
        self.PlayProgram = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/PlayProgram',
                request_serializer=control__msgs__pb2.Program.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.PauseProgram = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/PauseProgram',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.ResumeProgram = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/ResumeProgram',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.StopProgram = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/StopProgram',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.SendAlarm = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SendAlarm',
                request_serializer=common__msgs__pb2.Message.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.SendAnnotation = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SendAnnotation',
                request_serializer=common__msgs__pb2.Message.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.PlayTuningProgram = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/PlayTuningProgram',
                request_serializer=control__msgs__pb2.TuningProgram.SerializeToString,
                response_deserializer=config__msgs__pb2.CollisionThresholds.FromString,
                )
        self.SetModbusVariableNameList = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetModbusVariableNameList',
                request_serializer=control__msgs__pb2.ModbusVariableList.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.SetVariableNameList = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetVariableNameList',
                request_serializer=control__msgs__pb2.AllVars.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.GetVariableNameList = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetVariableNameList',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.AllVars.FromString,
                )
        self.SetIntVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetIntVariable',
                request_serializer=control__msgs__pb2.IntVars.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.GetIntVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetIntVariable',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.IntVars.FromString,
                )
        self.SetModbusVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetModbusVariable',
                request_serializer=control__msgs__pb2.ModbusVars.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.GetModbusVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetModbusVariable',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.ModbusVars.FromString,
                )
        self.SetBoolVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetBoolVariable',
                request_serializer=control__msgs__pb2.BoolVars.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.GetBoolVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetBoolVariable',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.BoolVars.FromString,
                )
        self.SetFloatVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetFloatVariable',
                request_serializer=control__msgs__pb2.FloatVars.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.GetFloatVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetFloatVariable',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.FloatVars.FromString,
                )
        self.SetJPosVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetJPosVariable',
                request_serializer=control__msgs__pb2.JPosVars.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.GetJPosVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetJPosVariable',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.JPosVars.FromString,
                )
        self.SetTPosVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetTPosVariable',
                request_serializer=control__msgs__pb2.TPosVars.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.GetTPosVariable = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetTPosVariable',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.TPosVars.FromString,
                )
        self.InverseKinematics = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/InverseKinematics',
                request_serializer=control__msgs__pb2.InverseKinematicsReq.SerializeToString,
                response_deserializer=control__msgs__pb2.InverseKinematicsRes.FromString,
                )
        self.CheckAproachRetractValid = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/CheckAproachRetractValid',
                request_serializer=control__msgs__pb2.CheckAproachRetractValidReq.SerializeToString,
                response_deserializer=control__msgs__pb2.CheckAproachRetractValidRes.FromString,
                )
        self.GetPalletPointList = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetPalletPointList',
                request_serializer=control__msgs__pb2.GetPalletPointListReq.SerializeToString,
                response_deserializer=control__msgs__pb2.GetPalletPointListRes.FromString,
                )
        self.CalculateRelativePose = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/CalculateRelativePose',
                request_serializer=control__msgs__pb2.CalculateRelativePoseReq.SerializeToString,
                response_deserializer=control__msgs__pb2.CalculateRelativePoseRes.FromString,
                )
        self.CalculateCurrentPoseRel = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/CalculateCurrentPoseRel',
                request_serializer=control__msgs__pb2.CalculateCurrentPoseRelReq.SerializeToString,
                response_deserializer=control__msgs__pb2.CalculateCurrentPoseRelRes.FromString,
                )
        self.PingFromConty = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/PingFromConty',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.Empty.FromString,
                )
        self.GetTeleOpDevice = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetTeleOpDevice',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.TeleOpDevice.FromString,
                )
        self.GetTeleOpState = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetTeleOpState',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.TeleOpState.FromString,
                )
        self.ConnectTeleOpDevice = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/ConnectTeleOpDevice',
                request_serializer=control__msgs__pb2.TeleOpDevice.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.DisConnectTeleOpDevice = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/DisConnectTeleOpDevice',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.ReadTeleOpInput = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/ReadTeleOpInput',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.TeleP.FromString,
                )
        self.StartTeleOp = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/StartTeleOp',
                request_serializer=control__msgs__pb2.TeleOpState.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.StopTeleOp = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/StopTeleOp',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.SetPlayRate = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SetPlayRate',
                request_serializer=control__msgs__pb2.TelePlayRate.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.GetPlayRate = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetPlayRate',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.TelePlayRate.FromString,
                )
        self.GetTeleFileList = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/GetTeleFileList',
                request_serializer=common__msgs__pb2.Empty.SerializeToString,
                response_deserializer=control__msgs__pb2.TeleOpFileList.FromString,
                )
        self.SaveTeleMotion = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/SaveTeleMotion',
                request_serializer=control__msgs__pb2.TeleFileReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.LoadTeleMotion = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/LoadTeleMotion',
                request_serializer=control__msgs__pb2.TeleFileReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.DeleteTeleMotion = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/DeleteTeleMotion',
                request_serializer=control__msgs__pb2.TeleFileReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.EnableTeleKey = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/EnableTeleKey',
                request_serializer=common__msgs__pb2.State.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveTeleJ = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveTeleJ',
                request_serializer=control__msgs__pb2.MoveTeleJReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveTeleL = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveTeleL',
                request_serializer=control__msgs__pb2.MoveTeleLReq.SerializeToString,
                response_deserializer=common__msgs__pb2.Response.FromString,
                )
        self.MoveFL = channel.unary_unary(
                '/Nrmk.IndyFramework.Control/MoveFL',
                request_serializer=control__msgs__pb2.MoveFLReq.SerializeToString,
                response_deserializer=control__msgs__pb2.MoveFLRes.FromString,
                )


class ControlServicer(object):
    """Missing associated documentation comment in .proto file."""

    def GetControlInfo(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ActivateIndySDK(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveJ(self, request, context):
        """---------------------------------------------------------------- //
        Motion
        ---------------------------------------------------------------- //
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveJT(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveL(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveLT(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveC(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveCT(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def WaitIO(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def WaitTime(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def WaitProgress(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def WaitTraj(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def WaitRadius(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveJCond(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StopMotion(self, request, context):
        """---------------------------------------------------------------- //
        Command
        ---------------------------------------------------------------- //
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def PauseMotion(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetDirectTeaching(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetSimulationMode(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetCustomControlMode(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetCustomControlMode(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetFrictionCompensation(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetFrictionCompensationState(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Recover(self, request, context):
        """---------------------------------------------------------------- //
        Violation Recovery
        ---------------------------------------------------------------- //
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetManualRecovery(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveRecoverJoint(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SearchProgram(self, request, context):
        """---------------------------------------------------------------- //
        Program
        ---------------------------------------------------------------- //
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def PlayProgram(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def PauseProgram(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ResumeProgram(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StopProgram(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SendAlarm(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SendAnnotation(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def PlayTuningProgram(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetModbusVariableNameList(self, request, context):
        """---------------------------------------------------------------- //
        Custom Variable
        ---------------------------------------------------------------- //
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetVariableNameList(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetVariableNameList(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetIntVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetIntVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetModbusVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetModbusVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetBoolVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetBoolVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetFloatVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetFloatVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetJPosVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetJPosVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetTPosVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetTPosVariable(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def InverseKinematics(self, request, context):
        """---------------------------------------------------------------- //
        Utility
        ---------------------------------------------------------------- //
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CheckAproachRetractValid(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetPalletPointList(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CalculateRelativePose(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CalculateCurrentPoseRel(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def PingFromConty(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetTeleOpDevice(self, request, context):
        """---------------------------------------------------------------- //
        TeleOperation
        ---------------------------------------------------------------- //
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetTeleOpState(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ConnectTeleOpDevice(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DisConnectTeleOpDevice(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ReadTeleOpInput(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StartTeleOp(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StopTeleOp(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetPlayRate(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetPlayRate(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetTeleFileList(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SaveTeleMotion(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def LoadTeleMotion(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteTeleMotion(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def EnableTeleKey(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveTeleJ(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveTeleL(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveFL(self, request, context):
        """---------------------------------------------------------------- //
        Sanding
        ---------------------------------------------------------------- //

        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_ControlServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'GetControlInfo': grpc.unary_unary_rpc_method_handler(
                    servicer.GetControlInfo,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.ControlInfo.SerializeToString,
            ),
            'ActivateIndySDK': grpc.unary_unary_rpc_method_handler(
                    servicer.ActivateIndySDK,
                    request_deserializer=control__msgs__pb2.SDKLicenseInfo.FromString,
                    response_serializer=control__msgs__pb2.SDKLicenseResp.SerializeToString,
            ),
            'MoveJ': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveJ,
                    request_deserializer=control__msgs__pb2.MoveJReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveJT': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveJT,
                    request_deserializer=control__msgs__pb2.MoveJTReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveL': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveL,
                    request_deserializer=control__msgs__pb2.MoveLReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveLT': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveLT,
                    request_deserializer=control__msgs__pb2.MoveLTReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveC': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveC,
                    request_deserializer=control__msgs__pb2.MoveCReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveCT': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveCT,
                    request_deserializer=control__msgs__pb2.MoveCTReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'WaitIO': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitIO,
                    request_deserializer=control__msgs__pb2.WaitIOReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'WaitTime': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitTime,
                    request_deserializer=control__msgs__pb2.WaitTimeReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'WaitProgress': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitProgress,
                    request_deserializer=control__msgs__pb2.WaitProgressReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'WaitTraj': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitTraj,
                    request_deserializer=control__msgs__pb2.WaitTrajReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'WaitRadius': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitRadius,
                    request_deserializer=control__msgs__pb2.WaitRadiusReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveJCond': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveJCond,
                    request_deserializer=control__msgs__pb2.MoveJCondReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'StopMotion': grpc.unary_unary_rpc_method_handler(
                    servicer.StopMotion,
                    request_deserializer=common__msgs__pb2.StopCat.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'PauseMotion': grpc.unary_unary_rpc_method_handler(
                    servicer.PauseMotion,
                    request_deserializer=common__msgs__pb2.PauseCat.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'SetDirectTeaching': grpc.unary_unary_rpc_method_handler(
                    servicer.SetDirectTeaching,
                    request_deserializer=common__msgs__pb2.State.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'SetSimulationMode': grpc.unary_unary_rpc_method_handler(
                    servicer.SetSimulationMode,
                    request_deserializer=common__msgs__pb2.State.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'SetCustomControlMode': grpc.unary_unary_rpc_method_handler(
                    servicer.SetCustomControlMode,
                    request_deserializer=common__msgs__pb2.IntMode.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'GetCustomControlMode': grpc.unary_unary_rpc_method_handler(
                    servicer.GetCustomControlMode,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.IntMode.SerializeToString,
            ),
            'SetFrictionCompensation': grpc.unary_unary_rpc_method_handler(
                    servicer.SetFrictionCompensation,
                    request_deserializer=common__msgs__pb2.State.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'GetFrictionCompensationState': grpc.unary_unary_rpc_method_handler(
                    servicer.GetFrictionCompensationState,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.State.SerializeToString,
            ),
            'Recover': grpc.unary_unary_rpc_method_handler(
                    servicer.Recover,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'SetManualRecovery': grpc.unary_unary_rpc_method_handler(
                    servicer.SetManualRecovery,
                    request_deserializer=common__msgs__pb2.State.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveRecoverJoint': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveRecoverJoint,
                    request_deserializer=control__msgs__pb2.TargetJ.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'SearchProgram': grpc.unary_unary_rpc_method_handler(
                    servicer.SearchProgram,
                    request_deserializer=control__msgs__pb2.Program.FromString,
                    response_serializer=control__msgs__pb2.ProgramInfo.SerializeToString,
            ),
            'PlayProgram': grpc.unary_unary_rpc_method_handler(
                    servicer.PlayProgram,
                    request_deserializer=control__msgs__pb2.Program.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'PauseProgram': grpc.unary_unary_rpc_method_handler(
                    servicer.PauseProgram,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'ResumeProgram': grpc.unary_unary_rpc_method_handler(
                    servicer.ResumeProgram,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'StopProgram': grpc.unary_unary_rpc_method_handler(
                    servicer.StopProgram,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'SendAlarm': grpc.unary_unary_rpc_method_handler(
                    servicer.SendAlarm,
                    request_deserializer=common__msgs__pb2.Message.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'SendAnnotation': grpc.unary_unary_rpc_method_handler(
                    servicer.SendAnnotation,
                    request_deserializer=common__msgs__pb2.Message.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'PlayTuningProgram': grpc.unary_unary_rpc_method_handler(
                    servicer.PlayTuningProgram,
                    request_deserializer=control__msgs__pb2.TuningProgram.FromString,
                    response_serializer=config__msgs__pb2.CollisionThresholds.SerializeToString,
            ),
            'SetModbusVariableNameList': grpc.unary_unary_rpc_method_handler(
                    servicer.SetModbusVariableNameList,
                    request_deserializer=control__msgs__pb2.ModbusVariableList.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'SetVariableNameList': grpc.unary_unary_rpc_method_handler(
                    servicer.SetVariableNameList,
                    request_deserializer=control__msgs__pb2.AllVars.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'GetVariableNameList': grpc.unary_unary_rpc_method_handler(
                    servicer.GetVariableNameList,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.AllVars.SerializeToString,
            ),
            'SetIntVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.SetIntVariable,
                    request_deserializer=control__msgs__pb2.IntVars.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'GetIntVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.GetIntVariable,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.IntVars.SerializeToString,
            ),
            'SetModbusVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.SetModbusVariable,
                    request_deserializer=control__msgs__pb2.ModbusVars.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'GetModbusVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.GetModbusVariable,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.ModbusVars.SerializeToString,
            ),
            'SetBoolVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.SetBoolVariable,
                    request_deserializer=control__msgs__pb2.BoolVars.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'GetBoolVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.GetBoolVariable,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.BoolVars.SerializeToString,
            ),
            'SetFloatVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.SetFloatVariable,
                    request_deserializer=control__msgs__pb2.FloatVars.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'GetFloatVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.GetFloatVariable,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.FloatVars.SerializeToString,
            ),
            'SetJPosVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.SetJPosVariable,
                    request_deserializer=control__msgs__pb2.JPosVars.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'GetJPosVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.GetJPosVariable,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.JPosVars.SerializeToString,
            ),
            'SetTPosVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.SetTPosVariable,
                    request_deserializer=control__msgs__pb2.TPosVars.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'GetTPosVariable': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTPosVariable,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.TPosVars.SerializeToString,
            ),
            'InverseKinematics': grpc.unary_unary_rpc_method_handler(
                    servicer.InverseKinematics,
                    request_deserializer=control__msgs__pb2.InverseKinematicsReq.FromString,
                    response_serializer=control__msgs__pb2.InverseKinematicsRes.SerializeToString,
            ),
            'CheckAproachRetractValid': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckAproachRetractValid,
                    request_deserializer=control__msgs__pb2.CheckAproachRetractValidReq.FromString,
                    response_serializer=control__msgs__pb2.CheckAproachRetractValidRes.SerializeToString,
            ),
            'GetPalletPointList': grpc.unary_unary_rpc_method_handler(
                    servicer.GetPalletPointList,
                    request_deserializer=control__msgs__pb2.GetPalletPointListReq.FromString,
                    response_serializer=control__msgs__pb2.GetPalletPointListRes.SerializeToString,
            ),
            'CalculateRelativePose': grpc.unary_unary_rpc_method_handler(
                    servicer.CalculateRelativePose,
                    request_deserializer=control__msgs__pb2.CalculateRelativePoseReq.FromString,
                    response_serializer=control__msgs__pb2.CalculateRelativePoseRes.SerializeToString,
            ),
            'CalculateCurrentPoseRel': grpc.unary_unary_rpc_method_handler(
                    servicer.CalculateCurrentPoseRel,
                    request_deserializer=control__msgs__pb2.CalculateCurrentPoseRelReq.FromString,
                    response_serializer=control__msgs__pb2.CalculateCurrentPoseRelRes.SerializeToString,
            ),
            'PingFromConty': grpc.unary_unary_rpc_method_handler(
                    servicer.PingFromConty,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.Empty.SerializeToString,
            ),
            'GetTeleOpDevice': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTeleOpDevice,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.TeleOpDevice.SerializeToString,
            ),
            'GetTeleOpState': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTeleOpState,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.TeleOpState.SerializeToString,
            ),
            'ConnectTeleOpDevice': grpc.unary_unary_rpc_method_handler(
                    servicer.ConnectTeleOpDevice,
                    request_deserializer=control__msgs__pb2.TeleOpDevice.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'DisConnectTeleOpDevice': grpc.unary_unary_rpc_method_handler(
                    servicer.DisConnectTeleOpDevice,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'ReadTeleOpInput': grpc.unary_unary_rpc_method_handler(
                    servicer.ReadTeleOpInput,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.TeleP.SerializeToString,
            ),
            'StartTeleOp': grpc.unary_unary_rpc_method_handler(
                    servicer.StartTeleOp,
                    request_deserializer=control__msgs__pb2.TeleOpState.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'StopTeleOp': grpc.unary_unary_rpc_method_handler(
                    servicer.StopTeleOp,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'SetPlayRate': grpc.unary_unary_rpc_method_handler(
                    servicer.SetPlayRate,
                    request_deserializer=control__msgs__pb2.TelePlayRate.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'GetPlayRate': grpc.unary_unary_rpc_method_handler(
                    servicer.GetPlayRate,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.TelePlayRate.SerializeToString,
            ),
            'GetTeleFileList': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTeleFileList,
                    request_deserializer=common__msgs__pb2.Empty.FromString,
                    response_serializer=control__msgs__pb2.TeleOpFileList.SerializeToString,
            ),
            'SaveTeleMotion': grpc.unary_unary_rpc_method_handler(
                    servicer.SaveTeleMotion,
                    request_deserializer=control__msgs__pb2.TeleFileReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'LoadTeleMotion': grpc.unary_unary_rpc_method_handler(
                    servicer.LoadTeleMotion,
                    request_deserializer=control__msgs__pb2.TeleFileReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'DeleteTeleMotion': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteTeleMotion,
                    request_deserializer=control__msgs__pb2.TeleFileReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'EnableTeleKey': grpc.unary_unary_rpc_method_handler(
                    servicer.EnableTeleKey,
                    request_deserializer=common__msgs__pb2.State.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveTeleJ': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveTeleJ,
                    request_deserializer=control__msgs__pb2.MoveTeleJReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveTeleL': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveTeleL,
                    request_deserializer=control__msgs__pb2.MoveTeleLReq.FromString,
                    response_serializer=common__msgs__pb2.Response.SerializeToString,
            ),
            'MoveFL': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveFL,
                    request_deserializer=control__msgs__pb2.MoveFLReq.FromString,
                    response_serializer=control__msgs__pb2.MoveFLRes.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'Nrmk.IndyFramework.Control', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class Control(object):
    """Missing associated documentation comment in .proto file."""

    @staticmethod
    def GetControlInfo(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetControlInfo',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.ControlInfo.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ActivateIndySDK(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/ActivateIndySDK',
            control__msgs__pb2.SDKLicenseInfo.SerializeToString,
            control__msgs__pb2.SDKLicenseResp.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveJ(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveJ',
            control__msgs__pb2.MoveJReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveJT(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveJT',
            control__msgs__pb2.MoveJTReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveL(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveL',
            control__msgs__pb2.MoveLReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveLT(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveLT',
            control__msgs__pb2.MoveLTReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveC(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveC',
            control__msgs__pb2.MoveCReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveCT(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveCT',
            control__msgs__pb2.MoveCTReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WaitIO(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/WaitIO',
            control__msgs__pb2.WaitIOReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WaitTime(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/WaitTime',
            control__msgs__pb2.WaitTimeReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WaitProgress(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/WaitProgress',
            control__msgs__pb2.WaitProgressReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WaitTraj(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/WaitTraj',
            control__msgs__pb2.WaitTrajReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WaitRadius(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/WaitRadius',
            control__msgs__pb2.WaitRadiusReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveJCond(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveJCond',
            control__msgs__pb2.MoveJCondReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StopMotion(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/StopMotion',
            common__msgs__pb2.StopCat.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def PauseMotion(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/PauseMotion',
            common__msgs__pb2.PauseCat.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetDirectTeaching(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetDirectTeaching',
            common__msgs__pb2.State.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetSimulationMode(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetSimulationMode',
            common__msgs__pb2.State.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetCustomControlMode(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetCustomControlMode',
            common__msgs__pb2.IntMode.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetCustomControlMode(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetCustomControlMode',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.IntMode.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetFrictionCompensation(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetFrictionCompensation',
            common__msgs__pb2.State.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetFrictionCompensationState(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetFrictionCompensationState',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.State.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Recover(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/Recover',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetManualRecovery(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetManualRecovery',
            common__msgs__pb2.State.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveRecoverJoint(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveRecoverJoint',
            control__msgs__pb2.TargetJ.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SearchProgram(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SearchProgram',
            control__msgs__pb2.Program.SerializeToString,
            control__msgs__pb2.ProgramInfo.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def PlayProgram(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/PlayProgram',
            control__msgs__pb2.Program.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def PauseProgram(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/PauseProgram',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ResumeProgram(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/ResumeProgram',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StopProgram(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/StopProgram',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SendAlarm(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SendAlarm',
            common__msgs__pb2.Message.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SendAnnotation(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SendAnnotation',
            common__msgs__pb2.Message.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def PlayTuningProgram(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/PlayTuningProgram',
            control__msgs__pb2.TuningProgram.SerializeToString,
            config__msgs__pb2.CollisionThresholds.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetModbusVariableNameList(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetModbusVariableNameList',
            control__msgs__pb2.ModbusVariableList.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetVariableNameList(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetVariableNameList',
            control__msgs__pb2.AllVars.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetVariableNameList(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetVariableNameList',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.AllVars.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetIntVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetIntVariable',
            control__msgs__pb2.IntVars.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetIntVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetIntVariable',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.IntVars.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetModbusVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetModbusVariable',
            control__msgs__pb2.ModbusVars.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetModbusVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetModbusVariable',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.ModbusVars.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetBoolVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetBoolVariable',
            control__msgs__pb2.BoolVars.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetBoolVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetBoolVariable',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.BoolVars.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetFloatVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetFloatVariable',
            control__msgs__pb2.FloatVars.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetFloatVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetFloatVariable',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.FloatVars.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetJPosVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetJPosVariable',
            control__msgs__pb2.JPosVars.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetJPosVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetJPosVariable',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.JPosVars.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetTPosVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetTPosVariable',
            control__msgs__pb2.TPosVars.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTPosVariable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetTPosVariable',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.TPosVars.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def InverseKinematics(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/InverseKinematics',
            control__msgs__pb2.InverseKinematicsReq.SerializeToString,
            control__msgs__pb2.InverseKinematicsRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CheckAproachRetractValid(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/CheckAproachRetractValid',
            control__msgs__pb2.CheckAproachRetractValidReq.SerializeToString,
            control__msgs__pb2.CheckAproachRetractValidRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetPalletPointList(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetPalletPointList',
            control__msgs__pb2.GetPalletPointListReq.SerializeToString,
            control__msgs__pb2.GetPalletPointListRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CalculateRelativePose(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/CalculateRelativePose',
            control__msgs__pb2.CalculateRelativePoseReq.SerializeToString,
            control__msgs__pb2.CalculateRelativePoseRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CalculateCurrentPoseRel(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/CalculateCurrentPoseRel',
            control__msgs__pb2.CalculateCurrentPoseRelReq.SerializeToString,
            control__msgs__pb2.CalculateCurrentPoseRelRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def PingFromConty(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/PingFromConty',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTeleOpDevice(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetTeleOpDevice',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.TeleOpDevice.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTeleOpState(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetTeleOpState',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.TeleOpState.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ConnectTeleOpDevice(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/ConnectTeleOpDevice',
            control__msgs__pb2.TeleOpDevice.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DisConnectTeleOpDevice(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/DisConnectTeleOpDevice',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ReadTeleOpInput(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/ReadTeleOpInput',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.TeleP.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StartTeleOp(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/StartTeleOp',
            control__msgs__pb2.TeleOpState.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StopTeleOp(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/StopTeleOp',
            common__msgs__pb2.Empty.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetPlayRate(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SetPlayRate',
            control__msgs__pb2.TelePlayRate.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetPlayRate(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetPlayRate',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.TelePlayRate.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTeleFileList(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/GetTeleFileList',
            common__msgs__pb2.Empty.SerializeToString,
            control__msgs__pb2.TeleOpFileList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SaveTeleMotion(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/SaveTeleMotion',
            control__msgs__pb2.TeleFileReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def LoadTeleMotion(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/LoadTeleMotion',
            control__msgs__pb2.TeleFileReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteTeleMotion(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/DeleteTeleMotion',
            control__msgs__pb2.TeleFileReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def EnableTeleKey(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/EnableTeleKey',
            common__msgs__pb2.State.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveTeleJ(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveTeleJ',
            control__msgs__pb2.MoveTeleJReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveTeleL(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveTeleL',
            control__msgs__pb2.MoveTeleLReq.SerializeToString,
            common__msgs__pb2.Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveFL(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Nrmk.IndyFramework.Control/MoveFL',
            control__msgs__pb2.MoveFLReq.SerializeToString,
            control__msgs__pb2.MoveFLRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
