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

import vive_tracker_apiserver.grpc.tracker_packet_pb2 as tracker__packet__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.GetTrackerGroup = channel.unary_unary(
                '/protocol.TrackerService/GetTrackerGroup',
                request_serializer=tracker__packet__pb2.TrackerRequest.SerializeToString,
                response_deserializer=tracker__packet__pb2.TrackerGroupResponse.FromString,
                )
        self.GetTrackerGroupStream = channel.unary_stream(
                '/protocol.TrackerService/GetTrackerGroupStream',
                request_serializer=tracker__packet__pb2.TrackerRequest.SerializeToString,
                response_deserializer=tracker__packet__pb2.TrackerGroupResponse.FromString,
                )
        self.GetTrackerSingle = channel.unary_unary(
                '/protocol.TrackerService/GetTrackerSingle',
                request_serializer=tracker__packet__pb2.TrackerRequest.SerializeToString,
                response_deserializer=tracker__packet__pb2.TrackerSingleResponse.FromString,
                )
        self.GetTrackerSingleStream = channel.unary_stream(
                '/protocol.TrackerService/GetTrackerSingleStream',
                request_serializer=tracker__packet__pb2.TrackerRequest.SerializeToString,
                response_deserializer=tracker__packet__pb2.TrackerSingleResponse.FromString,
                )
        self.StartRecording = channel.unary_unary(
                '/protocol.TrackerService/StartRecording',
                request_serializer=tracker__packet__pb2.RecordingRequest.SerializeToString,
                response_deserializer=tracker__packet__pb2.RecordingResponse.FromString,
                )
        self.StopRecording = channel.unary_unary(
                '/protocol.TrackerService/StopRecording',
                request_serializer=tracker__packet__pb2.RecordingRequest.SerializeToString,
                response_deserializer=tracker__packet__pb2.RecordingResponse.FromString,
                )


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

    def GetTrackerGroup(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 GetTrackerGroupStream(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 GetTrackerSingle(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 GetTrackerSingleStream(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 StartRecording(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 StopRecording(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_TrackerServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'GetTrackerGroup': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTrackerGroup,
                    request_deserializer=tracker__packet__pb2.TrackerRequest.FromString,
                    response_serializer=tracker__packet__pb2.TrackerGroupResponse.SerializeToString,
            ),
            'GetTrackerGroupStream': grpc.unary_stream_rpc_method_handler(
                    servicer.GetTrackerGroupStream,
                    request_deserializer=tracker__packet__pb2.TrackerRequest.FromString,
                    response_serializer=tracker__packet__pb2.TrackerGroupResponse.SerializeToString,
            ),
            'GetTrackerSingle': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTrackerSingle,
                    request_deserializer=tracker__packet__pb2.TrackerRequest.FromString,
                    response_serializer=tracker__packet__pb2.TrackerSingleResponse.SerializeToString,
            ),
            'GetTrackerSingleStream': grpc.unary_stream_rpc_method_handler(
                    servicer.GetTrackerSingleStream,
                    request_deserializer=tracker__packet__pb2.TrackerRequest.FromString,
                    response_serializer=tracker__packet__pb2.TrackerSingleResponse.SerializeToString,
            ),
            'StartRecording': grpc.unary_unary_rpc_method_handler(
                    servicer.StartRecording,
                    request_deserializer=tracker__packet__pb2.RecordingRequest.FromString,
                    response_serializer=tracker__packet__pb2.RecordingResponse.SerializeToString,
            ),
            'StopRecording': grpc.unary_unary_rpc_method_handler(
                    servicer.StopRecording,
                    request_deserializer=tracker__packet__pb2.RecordingRequest.FromString,
                    response_serializer=tracker__packet__pb2.RecordingResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'protocol.TrackerService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def GetTrackerGroup(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, '/protocol.TrackerService/GetTrackerGroup',
            tracker__packet__pb2.TrackerRequest.SerializeToString,
            tracker__packet__pb2.TrackerGroupResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTrackerGroupStream(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_stream(request, target, '/protocol.TrackerService/GetTrackerGroupStream',
            tracker__packet__pb2.TrackerRequest.SerializeToString,
            tracker__packet__pb2.TrackerGroupResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTrackerSingle(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, '/protocol.TrackerService/GetTrackerSingle',
            tracker__packet__pb2.TrackerRequest.SerializeToString,
            tracker__packet__pb2.TrackerSingleResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTrackerSingleStream(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_stream(request, target, '/protocol.TrackerService/GetTrackerSingleStream',
            tracker__packet__pb2.TrackerRequest.SerializeToString,
            tracker__packet__pb2.TrackerSingleResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StartRecording(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, '/protocol.TrackerService/StartRecording',
            tracker__packet__pb2.RecordingRequest.SerializeToString,
            tracker__packet__pb2.RecordingResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StopRecording(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, '/protocol.TrackerService/StopRecording',
            tracker__packet__pb2.RecordingRequest.SerializeToString,
            tracker__packet__pb2.RecordingResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
