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

from . import niswitch_pb2 as niswitch__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.Init = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/Init',
                request_serializer=niswitch__pb2.InitRequest.SerializeToString,
                response_deserializer=niswitch__pb2.InitResponse.FromString,
                )
        self.InitWithOptions = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/InitWithOptions',
                request_serializer=niswitch__pb2.InitWithOptionsRequest.SerializeToString,
                response_deserializer=niswitch__pb2.InitWithOptionsResponse.FromString,
                )
        self.InitWithTopology = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/InitWithTopology',
                request_serializer=niswitch__pb2.InitWithTopologyRequest.SerializeToString,
                response_deserializer=niswitch__pb2.InitWithTopologyResponse.FromString,
                )
        self.Close = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/Close',
                request_serializer=niswitch__pb2.CloseRequest.SerializeToString,
                response_deserializer=niswitch__pb2.CloseResponse.FromString,
                )
        self.Connect = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/Connect',
                request_serializer=niswitch__pb2.ConnectRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ConnectResponse.FromString,
                )
        self.ConnectMultiple = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ConnectMultiple',
                request_serializer=niswitch__pb2.ConnectMultipleRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ConnectMultipleResponse.FromString,
                )
        self.Disconnect = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/Disconnect',
                request_serializer=niswitch__pb2.DisconnectRequest.SerializeToString,
                response_deserializer=niswitch__pb2.DisconnectResponse.FromString,
                )
        self.DisconnectMultiple = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/DisconnectMultiple',
                request_serializer=niswitch__pb2.DisconnectMultipleRequest.SerializeToString,
                response_deserializer=niswitch__pb2.DisconnectMultipleResponse.FromString,
                )
        self.DisconnectAll = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/DisconnectAll',
                request_serializer=niswitch__pb2.DisconnectAllRequest.SerializeToString,
                response_deserializer=niswitch__pb2.DisconnectAllResponse.FromString,
                )
        self.GetPath = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetPath',
                request_serializer=niswitch__pb2.GetPathRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetPathResponse.FromString,
                )
        self.SetPath = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SetPath',
                request_serializer=niswitch__pb2.SetPathRequest.SerializeToString,
                response_deserializer=niswitch__pb2.SetPathResponse.FromString,
                )
        self.CanConnect = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/CanConnect',
                request_serializer=niswitch__pb2.CanConnectRequest.SerializeToString,
                response_deserializer=niswitch__pb2.CanConnectResponse.FromString,
                )
        self.IsDebounced = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/IsDebounced',
                request_serializer=niswitch__pb2.IsDebouncedRequest.SerializeToString,
                response_deserializer=niswitch__pb2.IsDebouncedResponse.FromString,
                )
        self.WaitForDebounce = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/WaitForDebounce',
                request_serializer=niswitch__pb2.WaitForDebounceRequest.SerializeToString,
                response_deserializer=niswitch__pb2.WaitForDebounceResponse.FromString,
                )
        self.Scan = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/Scan',
                request_serializer=niswitch__pb2.ScanRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ScanResponse.FromString,
                )
        self.InitiateScan = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/InitiateScan',
                request_serializer=niswitch__pb2.InitiateScanRequest.SerializeToString,
                response_deserializer=niswitch__pb2.InitiateScanResponse.FromString,
                )
        self.AbortScan = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/AbortScan',
                request_serializer=niswitch__pb2.AbortScanRequest.SerializeToString,
                response_deserializer=niswitch__pb2.AbortScanResponse.FromString,
                )
        self.IsScanning = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/IsScanning',
                request_serializer=niswitch__pb2.IsScanningRequest.SerializeToString,
                response_deserializer=niswitch__pb2.IsScanningResponse.FromString,
                )
        self.WaitForScanComplete = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/WaitForScanComplete',
                request_serializer=niswitch__pb2.WaitForScanCompleteRequest.SerializeToString,
                response_deserializer=niswitch__pb2.WaitForScanCompleteResponse.FromString,
                )
        self.SendSoftwareTrigger = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SendSoftwareTrigger',
                request_serializer=niswitch__pb2.SendSoftwareTriggerRequest.SerializeToString,
                response_deserializer=niswitch__pb2.SendSoftwareTriggerResponse.FromString,
                )
        self.ConfigureScanList = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ConfigureScanList',
                request_serializer=niswitch__pb2.ConfigureScanListRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ConfigureScanListResponse.FromString,
                )
        self.ConfigureScanTrigger = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ConfigureScanTrigger',
                request_serializer=niswitch__pb2.ConfigureScanTriggerRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ConfigureScanTriggerResponse.FromString,
                )
        self.SetContinuousScan = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SetContinuousScan',
                request_serializer=niswitch__pb2.SetContinuousScanRequest.SerializeToString,
                response_deserializer=niswitch__pb2.SetContinuousScanResponse.FromString,
                )
        self.RouteTriggerInput = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/RouteTriggerInput',
                request_serializer=niswitch__pb2.RouteTriggerInputRequest.SerializeToString,
                response_deserializer=niswitch__pb2.RouteTriggerInputResponse.FromString,
                )
        self.RouteScanAdvancedOutput = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/RouteScanAdvancedOutput',
                request_serializer=niswitch__pb2.RouteScanAdvancedOutputRequest.SerializeToString,
                response_deserializer=niswitch__pb2.RouteScanAdvancedOutputResponse.FromString,
                )
        self.ErrorQuery = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ErrorQuery',
                request_serializer=niswitch__pb2.ErrorQueryRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ErrorQueryResponse.FromString,
                )
        self.GetError = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetError',
                request_serializer=niswitch__pb2.GetErrorRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetErrorResponse.FromString,
                )
        self.ClearError = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ClearError',
                request_serializer=niswitch__pb2.ClearErrorRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ClearErrorResponse.FromString,
                )
        self.ErrorMessage = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ErrorMessage',
                request_serializer=niswitch__pb2.ErrorMessageRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ErrorMessageResponse.FromString,
                )
        self.GetChannelName = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetChannelName',
                request_serializer=niswitch__pb2.GetChannelNameRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetChannelNameResponse.FromString,
                )
        self.GetRelayName = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetRelayName',
                request_serializer=niswitch__pb2.GetRelayNameRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetRelayNameResponse.FromString,
                )
        self.GetRelayCount = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetRelayCount',
                request_serializer=niswitch__pb2.GetRelayCountRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetRelayCountResponse.FromString,
                )
        self.GetRelayPosition = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetRelayPosition',
                request_serializer=niswitch__pb2.GetRelayPositionRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetRelayPositionResponse.FromString,
                )
        self.RelayControl = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/RelayControl',
                request_serializer=niswitch__pb2.RelayControlRequest.SerializeToString,
                response_deserializer=niswitch__pb2.RelayControlResponse.FromString,
                )
        self.ResetInterchangeCheck = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ResetInterchangeCheck',
                request_serializer=niswitch__pb2.ResetInterchangeCheckRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ResetInterchangeCheckResponse.FromString,
                )
        self.ClearInterchangeWarnings = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ClearInterchangeWarnings',
                request_serializer=niswitch__pb2.ClearInterchangeWarningsRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ClearInterchangeWarningsResponse.FromString,
                )
        self.Commit = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/Commit',
                request_serializer=niswitch__pb2.CommitRequest.SerializeToString,
                response_deserializer=niswitch__pb2.CommitResponse.FromString,
                )
        self.ResetWithDefaults = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/ResetWithDefaults',
                request_serializer=niswitch__pb2.ResetWithDefaultsRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ResetWithDefaultsResponse.FromString,
                )
        self.Disable = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/Disable',
                request_serializer=niswitch__pb2.DisableRequest.SerializeToString,
                response_deserializer=niswitch__pb2.DisableResponse.FromString,
                )
        self.Reset = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/Reset',
                request_serializer=niswitch__pb2.ResetRequest.SerializeToString,
                response_deserializer=niswitch__pb2.ResetResponse.FromString,
                )
        self.SelfTest = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SelfTest',
                request_serializer=niswitch__pb2.SelfTestRequest.SerializeToString,
                response_deserializer=niswitch__pb2.SelfTestResponse.FromString,
                )
        self.RevisionQuery = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/RevisionQuery',
                request_serializer=niswitch__pb2.RevisionQueryRequest.SerializeToString,
                response_deserializer=niswitch__pb2.RevisionQueryResponse.FromString,
                )
        self.GetAttributeViInt32 = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetAttributeViInt32',
                request_serializer=niswitch__pb2.GetAttributeViInt32Request.SerializeToString,
                response_deserializer=niswitch__pb2.GetAttributeViInt32Response.FromString,
                )
        self.GetAttributeViReal64 = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetAttributeViReal64',
                request_serializer=niswitch__pb2.GetAttributeViReal64Request.SerializeToString,
                response_deserializer=niswitch__pb2.GetAttributeViReal64Response.FromString,
                )
        self.GetAttributeViString = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetAttributeViString',
                request_serializer=niswitch__pb2.GetAttributeViStringRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetAttributeViStringResponse.FromString,
                )
        self.GetAttributeViSession = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetAttributeViSession',
                request_serializer=niswitch__pb2.GetAttributeViSessionRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetAttributeViSessionResponse.FromString,
                )
        self.GetAttributeViBoolean = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/GetAttributeViBoolean',
                request_serializer=niswitch__pb2.GetAttributeViBooleanRequest.SerializeToString,
                response_deserializer=niswitch__pb2.GetAttributeViBooleanResponse.FromString,
                )
        self.SetAttributeViInt32 = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SetAttributeViInt32',
                request_serializer=niswitch__pb2.SetAttributeViInt32Request.SerializeToString,
                response_deserializer=niswitch__pb2.SetAttributeViInt32Response.FromString,
                )
        self.SetAttributeViReal64 = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SetAttributeViReal64',
                request_serializer=niswitch__pb2.SetAttributeViReal64Request.SerializeToString,
                response_deserializer=niswitch__pb2.SetAttributeViReal64Response.FromString,
                )
        self.SetAttributeViString = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SetAttributeViString',
                request_serializer=niswitch__pb2.SetAttributeViStringRequest.SerializeToString,
                response_deserializer=niswitch__pb2.SetAttributeViStringResponse.FromString,
                )
        self.SetAttributeViSession = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SetAttributeViSession',
                request_serializer=niswitch__pb2.SetAttributeViSessionRequest.SerializeToString,
                response_deserializer=niswitch__pb2.SetAttributeViSessionResponse.FromString,
                )
        self.SetAttributeViBoolean = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/SetAttributeViBoolean',
                request_serializer=niswitch__pb2.SetAttributeViBooleanRequest.SerializeToString,
                response_deserializer=niswitch__pb2.SetAttributeViBooleanResponse.FromString,
                )
        self.CheckAttributeViInt32 = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/CheckAttributeViInt32',
                request_serializer=niswitch__pb2.CheckAttributeViInt32Request.SerializeToString,
                response_deserializer=niswitch__pb2.CheckAttributeViInt32Response.FromString,
                )
        self.CheckAttributeViReal64 = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/CheckAttributeViReal64',
                request_serializer=niswitch__pb2.CheckAttributeViReal64Request.SerializeToString,
                response_deserializer=niswitch__pb2.CheckAttributeViReal64Response.FromString,
                )
        self.CheckAttributeViString = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/CheckAttributeViString',
                request_serializer=niswitch__pb2.CheckAttributeViStringRequest.SerializeToString,
                response_deserializer=niswitch__pb2.CheckAttributeViStringResponse.FromString,
                )
        self.CheckAttributeViSession = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/CheckAttributeViSession',
                request_serializer=niswitch__pb2.CheckAttributeViSessionRequest.SerializeToString,
                response_deserializer=niswitch__pb2.CheckAttributeViSessionResponse.FromString,
                )
        self.CheckAttributeViBoolean = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/CheckAttributeViBoolean',
                request_serializer=niswitch__pb2.CheckAttributeViBooleanRequest.SerializeToString,
                response_deserializer=niswitch__pb2.CheckAttributeViBooleanResponse.FromString,
                )
        self.InvalidateAllAttributes = channel.unary_unary(
                '/niswitch_grpc.NiSwitch/InvalidateAllAttributes',
                request_serializer=niswitch__pb2.InvalidateAllAttributesRequest.SerializeToString,
                response_deserializer=niswitch__pb2.InvalidateAllAttributesResponse.FromString,
                )


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

    def Init(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 InitWithOptions(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 InitWithTopology(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 Close(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 Connect(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 ConnectMultiple(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 Disconnect(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 DisconnectMultiple(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 DisconnectAll(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 GetPath(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 SetPath(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 CanConnect(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 IsDebounced(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 WaitForDebounce(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 Scan(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 InitiateScan(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 AbortScan(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 IsScanning(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 WaitForScanComplete(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 SendSoftwareTrigger(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 ConfigureScanList(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 ConfigureScanTrigger(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 SetContinuousScan(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 RouteTriggerInput(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 RouteScanAdvancedOutput(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 ErrorQuery(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 GetError(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 ClearError(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 ErrorMessage(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 GetChannelName(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 GetRelayName(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 GetRelayCount(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 GetRelayPosition(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 RelayControl(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 ResetInterchangeCheck(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 ClearInterchangeWarnings(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 Commit(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 ResetWithDefaults(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 Disable(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 Reset(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 SelfTest(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 RevisionQuery(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 GetAttributeViInt32(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 GetAttributeViReal64(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 GetAttributeViString(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 GetAttributeViSession(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 GetAttributeViBoolean(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 SetAttributeViInt32(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 SetAttributeViReal64(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 SetAttributeViString(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 SetAttributeViSession(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 SetAttributeViBoolean(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 CheckAttributeViInt32(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 CheckAttributeViReal64(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 CheckAttributeViString(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 CheckAttributeViSession(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 CheckAttributeViBoolean(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 InvalidateAllAttributes(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 add_NiSwitchServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'Init': grpc.unary_unary_rpc_method_handler(
                    servicer.Init,
                    request_deserializer=niswitch__pb2.InitRequest.FromString,
                    response_serializer=niswitch__pb2.InitResponse.SerializeToString,
            ),
            'InitWithOptions': grpc.unary_unary_rpc_method_handler(
                    servicer.InitWithOptions,
                    request_deserializer=niswitch__pb2.InitWithOptionsRequest.FromString,
                    response_serializer=niswitch__pb2.InitWithOptionsResponse.SerializeToString,
            ),
            'InitWithTopology': grpc.unary_unary_rpc_method_handler(
                    servicer.InitWithTopology,
                    request_deserializer=niswitch__pb2.InitWithTopologyRequest.FromString,
                    response_serializer=niswitch__pb2.InitWithTopologyResponse.SerializeToString,
            ),
            'Close': grpc.unary_unary_rpc_method_handler(
                    servicer.Close,
                    request_deserializer=niswitch__pb2.CloseRequest.FromString,
                    response_serializer=niswitch__pb2.CloseResponse.SerializeToString,
            ),
            'Connect': grpc.unary_unary_rpc_method_handler(
                    servicer.Connect,
                    request_deserializer=niswitch__pb2.ConnectRequest.FromString,
                    response_serializer=niswitch__pb2.ConnectResponse.SerializeToString,
            ),
            'ConnectMultiple': grpc.unary_unary_rpc_method_handler(
                    servicer.ConnectMultiple,
                    request_deserializer=niswitch__pb2.ConnectMultipleRequest.FromString,
                    response_serializer=niswitch__pb2.ConnectMultipleResponse.SerializeToString,
            ),
            'Disconnect': grpc.unary_unary_rpc_method_handler(
                    servicer.Disconnect,
                    request_deserializer=niswitch__pb2.DisconnectRequest.FromString,
                    response_serializer=niswitch__pb2.DisconnectResponse.SerializeToString,
            ),
            'DisconnectMultiple': grpc.unary_unary_rpc_method_handler(
                    servicer.DisconnectMultiple,
                    request_deserializer=niswitch__pb2.DisconnectMultipleRequest.FromString,
                    response_serializer=niswitch__pb2.DisconnectMultipleResponse.SerializeToString,
            ),
            'DisconnectAll': grpc.unary_unary_rpc_method_handler(
                    servicer.DisconnectAll,
                    request_deserializer=niswitch__pb2.DisconnectAllRequest.FromString,
                    response_serializer=niswitch__pb2.DisconnectAllResponse.SerializeToString,
            ),
            'GetPath': grpc.unary_unary_rpc_method_handler(
                    servicer.GetPath,
                    request_deserializer=niswitch__pb2.GetPathRequest.FromString,
                    response_serializer=niswitch__pb2.GetPathResponse.SerializeToString,
            ),
            'SetPath': grpc.unary_unary_rpc_method_handler(
                    servicer.SetPath,
                    request_deserializer=niswitch__pb2.SetPathRequest.FromString,
                    response_serializer=niswitch__pb2.SetPathResponse.SerializeToString,
            ),
            'CanConnect': grpc.unary_unary_rpc_method_handler(
                    servicer.CanConnect,
                    request_deserializer=niswitch__pb2.CanConnectRequest.FromString,
                    response_serializer=niswitch__pb2.CanConnectResponse.SerializeToString,
            ),
            'IsDebounced': grpc.unary_unary_rpc_method_handler(
                    servicer.IsDebounced,
                    request_deserializer=niswitch__pb2.IsDebouncedRequest.FromString,
                    response_serializer=niswitch__pb2.IsDebouncedResponse.SerializeToString,
            ),
            'WaitForDebounce': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitForDebounce,
                    request_deserializer=niswitch__pb2.WaitForDebounceRequest.FromString,
                    response_serializer=niswitch__pb2.WaitForDebounceResponse.SerializeToString,
            ),
            'Scan': grpc.unary_unary_rpc_method_handler(
                    servicer.Scan,
                    request_deserializer=niswitch__pb2.ScanRequest.FromString,
                    response_serializer=niswitch__pb2.ScanResponse.SerializeToString,
            ),
            'InitiateScan': grpc.unary_unary_rpc_method_handler(
                    servicer.InitiateScan,
                    request_deserializer=niswitch__pb2.InitiateScanRequest.FromString,
                    response_serializer=niswitch__pb2.InitiateScanResponse.SerializeToString,
            ),
            'AbortScan': grpc.unary_unary_rpc_method_handler(
                    servicer.AbortScan,
                    request_deserializer=niswitch__pb2.AbortScanRequest.FromString,
                    response_serializer=niswitch__pb2.AbortScanResponse.SerializeToString,
            ),
            'IsScanning': grpc.unary_unary_rpc_method_handler(
                    servicer.IsScanning,
                    request_deserializer=niswitch__pb2.IsScanningRequest.FromString,
                    response_serializer=niswitch__pb2.IsScanningResponse.SerializeToString,
            ),
            'WaitForScanComplete': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitForScanComplete,
                    request_deserializer=niswitch__pb2.WaitForScanCompleteRequest.FromString,
                    response_serializer=niswitch__pb2.WaitForScanCompleteResponse.SerializeToString,
            ),
            'SendSoftwareTrigger': grpc.unary_unary_rpc_method_handler(
                    servicer.SendSoftwareTrigger,
                    request_deserializer=niswitch__pb2.SendSoftwareTriggerRequest.FromString,
                    response_serializer=niswitch__pb2.SendSoftwareTriggerResponse.SerializeToString,
            ),
            'ConfigureScanList': grpc.unary_unary_rpc_method_handler(
                    servicer.ConfigureScanList,
                    request_deserializer=niswitch__pb2.ConfigureScanListRequest.FromString,
                    response_serializer=niswitch__pb2.ConfigureScanListResponse.SerializeToString,
            ),
            'ConfigureScanTrigger': grpc.unary_unary_rpc_method_handler(
                    servicer.ConfigureScanTrigger,
                    request_deserializer=niswitch__pb2.ConfigureScanTriggerRequest.FromString,
                    response_serializer=niswitch__pb2.ConfigureScanTriggerResponse.SerializeToString,
            ),
            'SetContinuousScan': grpc.unary_unary_rpc_method_handler(
                    servicer.SetContinuousScan,
                    request_deserializer=niswitch__pb2.SetContinuousScanRequest.FromString,
                    response_serializer=niswitch__pb2.SetContinuousScanResponse.SerializeToString,
            ),
            'RouteTriggerInput': grpc.unary_unary_rpc_method_handler(
                    servicer.RouteTriggerInput,
                    request_deserializer=niswitch__pb2.RouteTriggerInputRequest.FromString,
                    response_serializer=niswitch__pb2.RouteTriggerInputResponse.SerializeToString,
            ),
            'RouteScanAdvancedOutput': grpc.unary_unary_rpc_method_handler(
                    servicer.RouteScanAdvancedOutput,
                    request_deserializer=niswitch__pb2.RouteScanAdvancedOutputRequest.FromString,
                    response_serializer=niswitch__pb2.RouteScanAdvancedOutputResponse.SerializeToString,
            ),
            'ErrorQuery': grpc.unary_unary_rpc_method_handler(
                    servicer.ErrorQuery,
                    request_deserializer=niswitch__pb2.ErrorQueryRequest.FromString,
                    response_serializer=niswitch__pb2.ErrorQueryResponse.SerializeToString,
            ),
            'GetError': grpc.unary_unary_rpc_method_handler(
                    servicer.GetError,
                    request_deserializer=niswitch__pb2.GetErrorRequest.FromString,
                    response_serializer=niswitch__pb2.GetErrorResponse.SerializeToString,
            ),
            'ClearError': grpc.unary_unary_rpc_method_handler(
                    servicer.ClearError,
                    request_deserializer=niswitch__pb2.ClearErrorRequest.FromString,
                    response_serializer=niswitch__pb2.ClearErrorResponse.SerializeToString,
            ),
            'ErrorMessage': grpc.unary_unary_rpc_method_handler(
                    servicer.ErrorMessage,
                    request_deserializer=niswitch__pb2.ErrorMessageRequest.FromString,
                    response_serializer=niswitch__pb2.ErrorMessageResponse.SerializeToString,
            ),
            'GetChannelName': grpc.unary_unary_rpc_method_handler(
                    servicer.GetChannelName,
                    request_deserializer=niswitch__pb2.GetChannelNameRequest.FromString,
                    response_serializer=niswitch__pb2.GetChannelNameResponse.SerializeToString,
            ),
            'GetRelayName': grpc.unary_unary_rpc_method_handler(
                    servicer.GetRelayName,
                    request_deserializer=niswitch__pb2.GetRelayNameRequest.FromString,
                    response_serializer=niswitch__pb2.GetRelayNameResponse.SerializeToString,
            ),
            'GetRelayCount': grpc.unary_unary_rpc_method_handler(
                    servicer.GetRelayCount,
                    request_deserializer=niswitch__pb2.GetRelayCountRequest.FromString,
                    response_serializer=niswitch__pb2.GetRelayCountResponse.SerializeToString,
            ),
            'GetRelayPosition': grpc.unary_unary_rpc_method_handler(
                    servicer.GetRelayPosition,
                    request_deserializer=niswitch__pb2.GetRelayPositionRequest.FromString,
                    response_serializer=niswitch__pb2.GetRelayPositionResponse.SerializeToString,
            ),
            'RelayControl': grpc.unary_unary_rpc_method_handler(
                    servicer.RelayControl,
                    request_deserializer=niswitch__pb2.RelayControlRequest.FromString,
                    response_serializer=niswitch__pb2.RelayControlResponse.SerializeToString,
            ),
            'ResetInterchangeCheck': grpc.unary_unary_rpc_method_handler(
                    servicer.ResetInterchangeCheck,
                    request_deserializer=niswitch__pb2.ResetInterchangeCheckRequest.FromString,
                    response_serializer=niswitch__pb2.ResetInterchangeCheckResponse.SerializeToString,
            ),
            'ClearInterchangeWarnings': grpc.unary_unary_rpc_method_handler(
                    servicer.ClearInterchangeWarnings,
                    request_deserializer=niswitch__pb2.ClearInterchangeWarningsRequest.FromString,
                    response_serializer=niswitch__pb2.ClearInterchangeWarningsResponse.SerializeToString,
            ),
            'Commit': grpc.unary_unary_rpc_method_handler(
                    servicer.Commit,
                    request_deserializer=niswitch__pb2.CommitRequest.FromString,
                    response_serializer=niswitch__pb2.CommitResponse.SerializeToString,
            ),
            'ResetWithDefaults': grpc.unary_unary_rpc_method_handler(
                    servicer.ResetWithDefaults,
                    request_deserializer=niswitch__pb2.ResetWithDefaultsRequest.FromString,
                    response_serializer=niswitch__pb2.ResetWithDefaultsResponse.SerializeToString,
            ),
            'Disable': grpc.unary_unary_rpc_method_handler(
                    servicer.Disable,
                    request_deserializer=niswitch__pb2.DisableRequest.FromString,
                    response_serializer=niswitch__pb2.DisableResponse.SerializeToString,
            ),
            'Reset': grpc.unary_unary_rpc_method_handler(
                    servicer.Reset,
                    request_deserializer=niswitch__pb2.ResetRequest.FromString,
                    response_serializer=niswitch__pb2.ResetResponse.SerializeToString,
            ),
            'SelfTest': grpc.unary_unary_rpc_method_handler(
                    servicer.SelfTest,
                    request_deserializer=niswitch__pb2.SelfTestRequest.FromString,
                    response_serializer=niswitch__pb2.SelfTestResponse.SerializeToString,
            ),
            'RevisionQuery': grpc.unary_unary_rpc_method_handler(
                    servicer.RevisionQuery,
                    request_deserializer=niswitch__pb2.RevisionQueryRequest.FromString,
                    response_serializer=niswitch__pb2.RevisionQueryResponse.SerializeToString,
            ),
            'GetAttributeViInt32': grpc.unary_unary_rpc_method_handler(
                    servicer.GetAttributeViInt32,
                    request_deserializer=niswitch__pb2.GetAttributeViInt32Request.FromString,
                    response_serializer=niswitch__pb2.GetAttributeViInt32Response.SerializeToString,
            ),
            'GetAttributeViReal64': grpc.unary_unary_rpc_method_handler(
                    servicer.GetAttributeViReal64,
                    request_deserializer=niswitch__pb2.GetAttributeViReal64Request.FromString,
                    response_serializer=niswitch__pb2.GetAttributeViReal64Response.SerializeToString,
            ),
            'GetAttributeViString': grpc.unary_unary_rpc_method_handler(
                    servicer.GetAttributeViString,
                    request_deserializer=niswitch__pb2.GetAttributeViStringRequest.FromString,
                    response_serializer=niswitch__pb2.GetAttributeViStringResponse.SerializeToString,
            ),
            'GetAttributeViSession': grpc.unary_unary_rpc_method_handler(
                    servicer.GetAttributeViSession,
                    request_deserializer=niswitch__pb2.GetAttributeViSessionRequest.FromString,
                    response_serializer=niswitch__pb2.GetAttributeViSessionResponse.SerializeToString,
            ),
            'GetAttributeViBoolean': grpc.unary_unary_rpc_method_handler(
                    servicer.GetAttributeViBoolean,
                    request_deserializer=niswitch__pb2.GetAttributeViBooleanRequest.FromString,
                    response_serializer=niswitch__pb2.GetAttributeViBooleanResponse.SerializeToString,
            ),
            'SetAttributeViInt32': grpc.unary_unary_rpc_method_handler(
                    servicer.SetAttributeViInt32,
                    request_deserializer=niswitch__pb2.SetAttributeViInt32Request.FromString,
                    response_serializer=niswitch__pb2.SetAttributeViInt32Response.SerializeToString,
            ),
            'SetAttributeViReal64': grpc.unary_unary_rpc_method_handler(
                    servicer.SetAttributeViReal64,
                    request_deserializer=niswitch__pb2.SetAttributeViReal64Request.FromString,
                    response_serializer=niswitch__pb2.SetAttributeViReal64Response.SerializeToString,
            ),
            'SetAttributeViString': grpc.unary_unary_rpc_method_handler(
                    servicer.SetAttributeViString,
                    request_deserializer=niswitch__pb2.SetAttributeViStringRequest.FromString,
                    response_serializer=niswitch__pb2.SetAttributeViStringResponse.SerializeToString,
            ),
            'SetAttributeViSession': grpc.unary_unary_rpc_method_handler(
                    servicer.SetAttributeViSession,
                    request_deserializer=niswitch__pb2.SetAttributeViSessionRequest.FromString,
                    response_serializer=niswitch__pb2.SetAttributeViSessionResponse.SerializeToString,
            ),
            'SetAttributeViBoolean': grpc.unary_unary_rpc_method_handler(
                    servicer.SetAttributeViBoolean,
                    request_deserializer=niswitch__pb2.SetAttributeViBooleanRequest.FromString,
                    response_serializer=niswitch__pb2.SetAttributeViBooleanResponse.SerializeToString,
            ),
            'CheckAttributeViInt32': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckAttributeViInt32,
                    request_deserializer=niswitch__pb2.CheckAttributeViInt32Request.FromString,
                    response_serializer=niswitch__pb2.CheckAttributeViInt32Response.SerializeToString,
            ),
            'CheckAttributeViReal64': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckAttributeViReal64,
                    request_deserializer=niswitch__pb2.CheckAttributeViReal64Request.FromString,
                    response_serializer=niswitch__pb2.CheckAttributeViReal64Response.SerializeToString,
            ),
            'CheckAttributeViString': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckAttributeViString,
                    request_deserializer=niswitch__pb2.CheckAttributeViStringRequest.FromString,
                    response_serializer=niswitch__pb2.CheckAttributeViStringResponse.SerializeToString,
            ),
            'CheckAttributeViSession': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckAttributeViSession,
                    request_deserializer=niswitch__pb2.CheckAttributeViSessionRequest.FromString,
                    response_serializer=niswitch__pb2.CheckAttributeViSessionResponse.SerializeToString,
            ),
            'CheckAttributeViBoolean': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckAttributeViBoolean,
                    request_deserializer=niswitch__pb2.CheckAttributeViBooleanRequest.FromString,
                    response_serializer=niswitch__pb2.CheckAttributeViBooleanResponse.SerializeToString,
            ),
            'InvalidateAllAttributes': grpc.unary_unary_rpc_method_handler(
                    servicer.InvalidateAllAttributes,
                    request_deserializer=niswitch__pb2.InvalidateAllAttributesRequest.FromString,
                    response_serializer=niswitch__pb2.InvalidateAllAttributesResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'niswitch_grpc.NiSwitch', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def Init(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, '/niswitch_grpc.NiSwitch/Init',
            niswitch__pb2.InitRequest.SerializeToString,
            niswitch__pb2.InitResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def InitWithOptions(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, '/niswitch_grpc.NiSwitch/InitWithOptions',
            niswitch__pb2.InitWithOptionsRequest.SerializeToString,
            niswitch__pb2.InitWithOptionsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def InitWithTopology(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, '/niswitch_grpc.NiSwitch/InitWithTopology',
            niswitch__pb2.InitWithTopologyRequest.SerializeToString,
            niswitch__pb2.InitWithTopologyResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Close(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, '/niswitch_grpc.NiSwitch/Close',
            niswitch__pb2.CloseRequest.SerializeToString,
            niswitch__pb2.CloseResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Connect(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, '/niswitch_grpc.NiSwitch/Connect',
            niswitch__pb2.ConnectRequest.SerializeToString,
            niswitch__pb2.ConnectResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ConnectMultiple(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, '/niswitch_grpc.NiSwitch/ConnectMultiple',
            niswitch__pb2.ConnectMultipleRequest.SerializeToString,
            niswitch__pb2.ConnectMultipleResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Disconnect(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, '/niswitch_grpc.NiSwitch/Disconnect',
            niswitch__pb2.DisconnectRequest.SerializeToString,
            niswitch__pb2.DisconnectResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DisconnectMultiple(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, '/niswitch_grpc.NiSwitch/DisconnectMultiple',
            niswitch__pb2.DisconnectMultipleRequest.SerializeToString,
            niswitch__pb2.DisconnectMultipleResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DisconnectAll(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, '/niswitch_grpc.NiSwitch/DisconnectAll',
            niswitch__pb2.DisconnectAllRequest.SerializeToString,
            niswitch__pb2.DisconnectAllResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetPath(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, '/niswitch_grpc.NiSwitch/GetPath',
            niswitch__pb2.GetPathRequest.SerializeToString,
            niswitch__pb2.GetPathResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetPath(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, '/niswitch_grpc.NiSwitch/SetPath',
            niswitch__pb2.SetPathRequest.SerializeToString,
            niswitch__pb2.SetPathResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CanConnect(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, '/niswitch_grpc.NiSwitch/CanConnect',
            niswitch__pb2.CanConnectRequest.SerializeToString,
            niswitch__pb2.CanConnectResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def IsDebounced(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, '/niswitch_grpc.NiSwitch/IsDebounced',
            niswitch__pb2.IsDebouncedRequest.SerializeToString,
            niswitch__pb2.IsDebouncedResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WaitForDebounce(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, '/niswitch_grpc.NiSwitch/WaitForDebounce',
            niswitch__pb2.WaitForDebounceRequest.SerializeToString,
            niswitch__pb2.WaitForDebounceResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Scan(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, '/niswitch_grpc.NiSwitch/Scan',
            niswitch__pb2.ScanRequest.SerializeToString,
            niswitch__pb2.ScanResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def InitiateScan(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, '/niswitch_grpc.NiSwitch/InitiateScan',
            niswitch__pb2.InitiateScanRequest.SerializeToString,
            niswitch__pb2.InitiateScanResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AbortScan(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, '/niswitch_grpc.NiSwitch/AbortScan',
            niswitch__pb2.AbortScanRequest.SerializeToString,
            niswitch__pb2.AbortScanResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def IsScanning(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, '/niswitch_grpc.NiSwitch/IsScanning',
            niswitch__pb2.IsScanningRequest.SerializeToString,
            niswitch__pb2.IsScanningResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WaitForScanComplete(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, '/niswitch_grpc.NiSwitch/WaitForScanComplete',
            niswitch__pb2.WaitForScanCompleteRequest.SerializeToString,
            niswitch__pb2.WaitForScanCompleteResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SendSoftwareTrigger(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, '/niswitch_grpc.NiSwitch/SendSoftwareTrigger',
            niswitch__pb2.SendSoftwareTriggerRequest.SerializeToString,
            niswitch__pb2.SendSoftwareTriggerResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ConfigureScanList(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, '/niswitch_grpc.NiSwitch/ConfigureScanList',
            niswitch__pb2.ConfigureScanListRequest.SerializeToString,
            niswitch__pb2.ConfigureScanListResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ConfigureScanTrigger(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, '/niswitch_grpc.NiSwitch/ConfigureScanTrigger',
            niswitch__pb2.ConfigureScanTriggerRequest.SerializeToString,
            niswitch__pb2.ConfigureScanTriggerResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetContinuousScan(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, '/niswitch_grpc.NiSwitch/SetContinuousScan',
            niswitch__pb2.SetContinuousScanRequest.SerializeToString,
            niswitch__pb2.SetContinuousScanResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RouteTriggerInput(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, '/niswitch_grpc.NiSwitch/RouteTriggerInput',
            niswitch__pb2.RouteTriggerInputRequest.SerializeToString,
            niswitch__pb2.RouteTriggerInputResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RouteScanAdvancedOutput(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, '/niswitch_grpc.NiSwitch/RouteScanAdvancedOutput',
            niswitch__pb2.RouteScanAdvancedOutputRequest.SerializeToString,
            niswitch__pb2.RouteScanAdvancedOutputResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ErrorQuery(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, '/niswitch_grpc.NiSwitch/ErrorQuery',
            niswitch__pb2.ErrorQueryRequest.SerializeToString,
            niswitch__pb2.ErrorQueryResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetError(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, '/niswitch_grpc.NiSwitch/GetError',
            niswitch__pb2.GetErrorRequest.SerializeToString,
            niswitch__pb2.GetErrorResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ClearError(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, '/niswitch_grpc.NiSwitch/ClearError',
            niswitch__pb2.ClearErrorRequest.SerializeToString,
            niswitch__pb2.ClearErrorResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ErrorMessage(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, '/niswitch_grpc.NiSwitch/ErrorMessage',
            niswitch__pb2.ErrorMessageRequest.SerializeToString,
            niswitch__pb2.ErrorMessageResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetChannelName(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, '/niswitch_grpc.NiSwitch/GetChannelName',
            niswitch__pb2.GetChannelNameRequest.SerializeToString,
            niswitch__pb2.GetChannelNameResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetRelayName(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, '/niswitch_grpc.NiSwitch/GetRelayName',
            niswitch__pb2.GetRelayNameRequest.SerializeToString,
            niswitch__pb2.GetRelayNameResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetRelayCount(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, '/niswitch_grpc.NiSwitch/GetRelayCount',
            niswitch__pb2.GetRelayCountRequest.SerializeToString,
            niswitch__pb2.GetRelayCountResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetRelayPosition(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, '/niswitch_grpc.NiSwitch/GetRelayPosition',
            niswitch__pb2.GetRelayPositionRequest.SerializeToString,
            niswitch__pb2.GetRelayPositionResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RelayControl(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, '/niswitch_grpc.NiSwitch/RelayControl',
            niswitch__pb2.RelayControlRequest.SerializeToString,
            niswitch__pb2.RelayControlResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ResetInterchangeCheck(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, '/niswitch_grpc.NiSwitch/ResetInterchangeCheck',
            niswitch__pb2.ResetInterchangeCheckRequest.SerializeToString,
            niswitch__pb2.ResetInterchangeCheckResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ClearInterchangeWarnings(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, '/niswitch_grpc.NiSwitch/ClearInterchangeWarnings',
            niswitch__pb2.ClearInterchangeWarningsRequest.SerializeToString,
            niswitch__pb2.ClearInterchangeWarningsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Commit(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, '/niswitch_grpc.NiSwitch/Commit',
            niswitch__pb2.CommitRequest.SerializeToString,
            niswitch__pb2.CommitResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ResetWithDefaults(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, '/niswitch_grpc.NiSwitch/ResetWithDefaults',
            niswitch__pb2.ResetWithDefaultsRequest.SerializeToString,
            niswitch__pb2.ResetWithDefaultsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Disable(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, '/niswitch_grpc.NiSwitch/Disable',
            niswitch__pb2.DisableRequest.SerializeToString,
            niswitch__pb2.DisableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Reset(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, '/niswitch_grpc.NiSwitch/Reset',
            niswitch__pb2.ResetRequest.SerializeToString,
            niswitch__pb2.ResetResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SelfTest(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, '/niswitch_grpc.NiSwitch/SelfTest',
            niswitch__pb2.SelfTestRequest.SerializeToString,
            niswitch__pb2.SelfTestResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RevisionQuery(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, '/niswitch_grpc.NiSwitch/RevisionQuery',
            niswitch__pb2.RevisionQueryRequest.SerializeToString,
            niswitch__pb2.RevisionQueryResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetAttributeViInt32(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, '/niswitch_grpc.NiSwitch/GetAttributeViInt32',
            niswitch__pb2.GetAttributeViInt32Request.SerializeToString,
            niswitch__pb2.GetAttributeViInt32Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetAttributeViReal64(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, '/niswitch_grpc.NiSwitch/GetAttributeViReal64',
            niswitch__pb2.GetAttributeViReal64Request.SerializeToString,
            niswitch__pb2.GetAttributeViReal64Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetAttributeViString(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, '/niswitch_grpc.NiSwitch/GetAttributeViString',
            niswitch__pb2.GetAttributeViStringRequest.SerializeToString,
            niswitch__pb2.GetAttributeViStringResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetAttributeViSession(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, '/niswitch_grpc.NiSwitch/GetAttributeViSession',
            niswitch__pb2.GetAttributeViSessionRequest.SerializeToString,
            niswitch__pb2.GetAttributeViSessionResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetAttributeViBoolean(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, '/niswitch_grpc.NiSwitch/GetAttributeViBoolean',
            niswitch__pb2.GetAttributeViBooleanRequest.SerializeToString,
            niswitch__pb2.GetAttributeViBooleanResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetAttributeViInt32(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, '/niswitch_grpc.NiSwitch/SetAttributeViInt32',
            niswitch__pb2.SetAttributeViInt32Request.SerializeToString,
            niswitch__pb2.SetAttributeViInt32Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetAttributeViReal64(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, '/niswitch_grpc.NiSwitch/SetAttributeViReal64',
            niswitch__pb2.SetAttributeViReal64Request.SerializeToString,
            niswitch__pb2.SetAttributeViReal64Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetAttributeViString(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, '/niswitch_grpc.NiSwitch/SetAttributeViString',
            niswitch__pb2.SetAttributeViStringRequest.SerializeToString,
            niswitch__pb2.SetAttributeViStringResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetAttributeViSession(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, '/niswitch_grpc.NiSwitch/SetAttributeViSession',
            niswitch__pb2.SetAttributeViSessionRequest.SerializeToString,
            niswitch__pb2.SetAttributeViSessionResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetAttributeViBoolean(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, '/niswitch_grpc.NiSwitch/SetAttributeViBoolean',
            niswitch__pb2.SetAttributeViBooleanRequest.SerializeToString,
            niswitch__pb2.SetAttributeViBooleanResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CheckAttributeViInt32(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, '/niswitch_grpc.NiSwitch/CheckAttributeViInt32',
            niswitch__pb2.CheckAttributeViInt32Request.SerializeToString,
            niswitch__pb2.CheckAttributeViInt32Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CheckAttributeViReal64(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, '/niswitch_grpc.NiSwitch/CheckAttributeViReal64',
            niswitch__pb2.CheckAttributeViReal64Request.SerializeToString,
            niswitch__pb2.CheckAttributeViReal64Response.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CheckAttributeViString(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, '/niswitch_grpc.NiSwitch/CheckAttributeViString',
            niswitch__pb2.CheckAttributeViStringRequest.SerializeToString,
            niswitch__pb2.CheckAttributeViStringResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CheckAttributeViSession(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, '/niswitch_grpc.NiSwitch/CheckAttributeViSession',
            niswitch__pb2.CheckAttributeViSessionRequest.SerializeToString,
            niswitch__pb2.CheckAttributeViSessionResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CheckAttributeViBoolean(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, '/niswitch_grpc.NiSwitch/CheckAttributeViBoolean',
            niswitch__pb2.CheckAttributeViBooleanRequest.SerializeToString,
            niswitch__pb2.CheckAttributeViBooleanResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def InvalidateAllAttributes(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, '/niswitch_grpc.NiSwitch/InvalidateAllAttributes',
            niswitch__pb2.InvalidateAllAttributesRequest.SerializeToString,
            niswitch__pb2.InvalidateAllAttributesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
