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

from grpc4bmi import bmi_pb2 as grpc4bmi_dot_bmi__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.initialize = channel.unary_unary(
                '/bmi.BmiService/initialize',
                request_serializer=grpc4bmi_dot_bmi__pb2.InitializeRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                )
        self.update = channel.unary_unary(
                '/bmi.BmiService/update',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                )
        self.updateUntil = channel.unary_unary(
                '/bmi.BmiService/updateUntil',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetTimeResponse.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                )
        self.finalize = channel.unary_unary(
                '/bmi.BmiService/finalize',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                )
        self.getComponentName = channel.unary_unary(
                '/bmi.BmiService/getComponentName',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetComponentNameResponse.FromString,
                )
        self.getInputItemCount = channel.unary_unary(
                '/bmi.BmiService/getInputItemCount',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
                )
        self.getOutputItemCount = channel.unary_unary(
                '/bmi.BmiService/getOutputItemCount',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
                )
        self.getInputVarNames = channel.unary_unary(
                '/bmi.BmiService/getInputVarNames',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetVarNamesResponse.FromString,
                )
        self.getOutputVarNames = channel.unary_unary(
                '/bmi.BmiService/getOutputVarNames',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetVarNamesResponse.FromString,
                )
        self.getTimeUnits = channel.unary_unary(
                '/bmi.BmiService/getTimeUnits',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetTimeUnitsResponse.FromString,
                )
        self.getTimeStep = channel.unary_unary(
                '/bmi.BmiService/getTimeStep',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetTimeStepResponse.FromString,
                )
        self.getCurrentTime = channel.unary_unary(
                '/bmi.BmiService/getCurrentTime',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetTimeResponse.FromString,
                )
        self.getStartTime = channel.unary_unary(
                '/bmi.BmiService/getStartTime',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetTimeResponse.FromString,
                )
        self.getEndTime = channel.unary_unary(
                '/bmi.BmiService/getEndTime',
                request_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetTimeResponse.FromString,
                )
        self.getVarGrid = channel.unary_unary(
                '/bmi.BmiService/getVarGrid',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetVarGridResponse.FromString,
                )
        self.getVarType = channel.unary_unary(
                '/bmi.BmiService/getVarType',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetVarTypeResponse.FromString,
                )
        self.getVarItemSize = channel.unary_unary(
                '/bmi.BmiService/getVarItemSize',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetVarItemSizeResponse.FromString,
                )
        self.getVarUnits = channel.unary_unary(
                '/bmi.BmiService/getVarUnits',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetVarUnitsResponse.FromString,
                )
        self.getVarNBytes = channel.unary_unary(
                '/bmi.BmiService/getVarNBytes',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetVarNBytesResponse.FromString,
                )
        self.getVarLocation = channel.unary_unary(
                '/bmi.BmiService/getVarLocation',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetVarLocationResponse.FromString,
                )
        self.getValue = channel.unary_unary(
                '/bmi.BmiService/getValue',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetValueResponse.FromString,
                )
        self.getValueAtIndices = channel.unary_unary(
                '/bmi.BmiService/getValueAtIndices',
                request_serializer=grpc4bmi_dot_bmi__pb2.GetValueAtIndicesRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetValueAtIndicesResponse.FromString,
                )
        self.setValue = channel.unary_unary(
                '/bmi.BmiService/setValue',
                request_serializer=grpc4bmi_dot_bmi__pb2.SetValueRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                )
        self.setValueAtIndices = channel.unary_unary(
                '/bmi.BmiService/setValueAtIndices',
                request_serializer=grpc4bmi_dot_bmi__pb2.SetValueAtIndicesRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                )
        self.getGridSize = channel.unary_unary(
                '/bmi.BmiService/getGridSize',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridSizeResponse.FromString,
                )
        self.getGridType = channel.unary_unary(
                '/bmi.BmiService/getGridType',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridTypeResponse.FromString,
                )
        self.getGridRank = channel.unary_unary(
                '/bmi.BmiService/getGridRank',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridRankResponse.FromString,
                )
        self.getGridShape = channel.unary_unary(
                '/bmi.BmiService/getGridShape',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridShapeResponse.FromString,
                )
        self.getGridSpacing = channel.unary_unary(
                '/bmi.BmiService/getGridSpacing',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridSpacingResponse.FromString,
                )
        self.getGridOrigin = channel.unary_unary(
                '/bmi.BmiService/getGridOrigin',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridOriginResponse.FromString,
                )
        self.getGridX = channel.unary_unary(
                '/bmi.BmiService/getGridX',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.FromString,
                )
        self.getGridY = channel.unary_unary(
                '/bmi.BmiService/getGridY',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.FromString,
                )
        self.getGridZ = channel.unary_unary(
                '/bmi.BmiService/getGridZ',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.FromString,
                )
        self.getGridNodeCount = channel.unary_unary(
                '/bmi.BmiService/getGridNodeCount',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
                )
        self.getGridEdgeCount = channel.unary_unary(
                '/bmi.BmiService/getGridEdgeCount',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
                )
        self.getGridFaceCount = channel.unary_unary(
                '/bmi.BmiService/getGridFaceCount',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
                )
        self.getGridEdgeNodes = channel.unary_unary(
                '/bmi.BmiService/getGridEdgeNodes',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridEdgeNodesResponse.FromString,
                )
        self.getGridFaceNodes = channel.unary_unary(
                '/bmi.BmiService/getGridFaceNodes',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridFaceNodesResponse.FromString,
                )
        self.getGridFaceEdges = channel.unary_unary(
                '/bmi.BmiService/getGridFaceEdges',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridFaceEdgesResponse.FromString,
                )
        self.getGridNodesPerFace = channel.unary_unary(
                '/bmi.BmiService/getGridNodesPerFace',
                request_serializer=grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
                response_deserializer=grpc4bmi_dot_bmi__pb2.GetGridNodesPerFaceResponse.FromString,
                )


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

    def initialize(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 update(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 updateUntil(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 finalize(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 getComponentName(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 getInputItemCount(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 getOutputItemCount(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 getInputVarNames(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 getOutputVarNames(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 getTimeUnits(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 getTimeStep(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 getCurrentTime(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 getStartTime(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 getEndTime(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 getVarGrid(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 getVarType(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 getVarItemSize(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 getVarUnits(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 getVarNBytes(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 getVarLocation(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 getValue(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 getValueAtIndices(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 setValue(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 setValueAtIndices(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 getGridSize(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 getGridType(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 getGridRank(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 getGridShape(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 getGridSpacing(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 getGridOrigin(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 getGridX(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 getGridY(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 getGridZ(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 getGridNodeCount(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 getGridEdgeCount(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 getGridFaceCount(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 getGridEdgeNodes(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 getGridFaceNodes(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 getGridFaceEdges(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 getGridNodesPerFace(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_BmiServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'initialize': grpc.unary_unary_rpc_method_handler(
                    servicer.initialize,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.InitializeRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            ),
            'update': grpc.unary_unary_rpc_method_handler(
                    servicer.update,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            ),
            'updateUntil': grpc.unary_unary_rpc_method_handler(
                    servicer.updateUntil,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetTimeResponse.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            ),
            'finalize': grpc.unary_unary_rpc_method_handler(
                    servicer.finalize,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            ),
            'getComponentName': grpc.unary_unary_rpc_method_handler(
                    servicer.getComponentName,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetComponentNameResponse.SerializeToString,
            ),
            'getInputItemCount': grpc.unary_unary_rpc_method_handler(
                    servicer.getInputItemCount,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.SerializeToString,
            ),
            'getOutputItemCount': grpc.unary_unary_rpc_method_handler(
                    servicer.getOutputItemCount,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.SerializeToString,
            ),
            'getInputVarNames': grpc.unary_unary_rpc_method_handler(
                    servicer.getInputVarNames,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetVarNamesResponse.SerializeToString,
            ),
            'getOutputVarNames': grpc.unary_unary_rpc_method_handler(
                    servicer.getOutputVarNames,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetVarNamesResponse.SerializeToString,
            ),
            'getTimeUnits': grpc.unary_unary_rpc_method_handler(
                    servicer.getTimeUnits,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetTimeUnitsResponse.SerializeToString,
            ),
            'getTimeStep': grpc.unary_unary_rpc_method_handler(
                    servicer.getTimeStep,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetTimeStepResponse.SerializeToString,
            ),
            'getCurrentTime': grpc.unary_unary_rpc_method_handler(
                    servicer.getCurrentTime,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetTimeResponse.SerializeToString,
            ),
            'getStartTime': grpc.unary_unary_rpc_method_handler(
                    servicer.getStartTime,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetTimeResponse.SerializeToString,
            ),
            'getEndTime': grpc.unary_unary_rpc_method_handler(
                    servicer.getEndTime,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.Empty.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetTimeResponse.SerializeToString,
            ),
            'getVarGrid': grpc.unary_unary_rpc_method_handler(
                    servicer.getVarGrid,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetVarGridResponse.SerializeToString,
            ),
            'getVarType': grpc.unary_unary_rpc_method_handler(
                    servicer.getVarType,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetVarTypeResponse.SerializeToString,
            ),
            'getVarItemSize': grpc.unary_unary_rpc_method_handler(
                    servicer.getVarItemSize,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetVarItemSizeResponse.SerializeToString,
            ),
            'getVarUnits': grpc.unary_unary_rpc_method_handler(
                    servicer.getVarUnits,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetVarUnitsResponse.SerializeToString,
            ),
            'getVarNBytes': grpc.unary_unary_rpc_method_handler(
                    servicer.getVarNBytes,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetVarNBytesResponse.SerializeToString,
            ),
            'getVarLocation': grpc.unary_unary_rpc_method_handler(
                    servicer.getVarLocation,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetVarLocationResponse.SerializeToString,
            ),
            'getValue': grpc.unary_unary_rpc_method_handler(
                    servicer.getValue,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetVarRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetValueResponse.SerializeToString,
            ),
            'getValueAtIndices': grpc.unary_unary_rpc_method_handler(
                    servicer.getValueAtIndices,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GetValueAtIndicesRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetValueAtIndicesResponse.SerializeToString,
            ),
            'setValue': grpc.unary_unary_rpc_method_handler(
                    servicer.setValue,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.SetValueRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            ),
            'setValueAtIndices': grpc.unary_unary_rpc_method_handler(
                    servicer.setValueAtIndices,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.SetValueAtIndicesRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            ),
            'getGridSize': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridSize,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridSizeResponse.SerializeToString,
            ),
            'getGridType': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridType,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridTypeResponse.SerializeToString,
            ),
            'getGridRank': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridRank,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridRankResponse.SerializeToString,
            ),
            'getGridShape': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridShape,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridShapeResponse.SerializeToString,
            ),
            'getGridSpacing': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridSpacing,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridSpacingResponse.SerializeToString,
            ),
            'getGridOrigin': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridOrigin,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridOriginResponse.SerializeToString,
            ),
            'getGridX': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridX,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.SerializeToString,
            ),
            'getGridY': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridY,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.SerializeToString,
            ),
            'getGridZ': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridZ,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.SerializeToString,
            ),
            'getGridNodeCount': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridNodeCount,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.SerializeToString,
            ),
            'getGridEdgeCount': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridEdgeCount,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.SerializeToString,
            ),
            'getGridFaceCount': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridFaceCount,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetCountResponse.SerializeToString,
            ),
            'getGridEdgeNodes': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridEdgeNodes,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridEdgeNodesResponse.SerializeToString,
            ),
            'getGridFaceNodes': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridFaceNodes,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridFaceNodesResponse.SerializeToString,
            ),
            'getGridFaceEdges': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridFaceEdges,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridFaceEdgesResponse.SerializeToString,
            ),
            'getGridNodesPerFace': grpc.unary_unary_rpc_method_handler(
                    servicer.getGridNodesPerFace,
                    request_deserializer=grpc4bmi_dot_bmi__pb2.GridRequest.FromString,
                    response_serializer=grpc4bmi_dot_bmi__pb2.GetGridNodesPerFaceResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'bmi.BmiService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def initialize(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, '/bmi.BmiService/initialize',
            grpc4bmi_dot_bmi__pb2.InitializeRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def update(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, '/bmi.BmiService/update',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def updateUntil(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, '/bmi.BmiService/updateUntil',
            grpc4bmi_dot_bmi__pb2.GetTimeResponse.SerializeToString,
            grpc4bmi_dot_bmi__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def finalize(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, '/bmi.BmiService/finalize',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getComponentName(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, '/bmi.BmiService/getComponentName',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetComponentNameResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getInputItemCount(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, '/bmi.BmiService/getInputItemCount',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getOutputItemCount(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, '/bmi.BmiService/getOutputItemCount',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getInputVarNames(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, '/bmi.BmiService/getInputVarNames',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetVarNamesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getOutputVarNames(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, '/bmi.BmiService/getOutputVarNames',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetVarNamesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getTimeUnits(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, '/bmi.BmiService/getTimeUnits',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetTimeUnitsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getTimeStep(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, '/bmi.BmiService/getTimeStep',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetTimeStepResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getCurrentTime(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, '/bmi.BmiService/getCurrentTime',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetTimeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getStartTime(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, '/bmi.BmiService/getStartTime',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetTimeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getEndTime(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, '/bmi.BmiService/getEndTime',
            grpc4bmi_dot_bmi__pb2.Empty.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetTimeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getVarGrid(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, '/bmi.BmiService/getVarGrid',
            grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetVarGridResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getVarType(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, '/bmi.BmiService/getVarType',
            grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetVarTypeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getVarItemSize(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, '/bmi.BmiService/getVarItemSize',
            grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetVarItemSizeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getVarUnits(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, '/bmi.BmiService/getVarUnits',
            grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetVarUnitsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getVarNBytes(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, '/bmi.BmiService/getVarNBytes',
            grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetVarNBytesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getVarLocation(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, '/bmi.BmiService/getVarLocation',
            grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetVarLocationResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getValue(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, '/bmi.BmiService/getValue',
            grpc4bmi_dot_bmi__pb2.GetVarRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetValueResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getValueAtIndices(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, '/bmi.BmiService/getValueAtIndices',
            grpc4bmi_dot_bmi__pb2.GetValueAtIndicesRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetValueAtIndicesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def setValue(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, '/bmi.BmiService/setValue',
            grpc4bmi_dot_bmi__pb2.SetValueRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def setValueAtIndices(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, '/bmi.BmiService/setValueAtIndices',
            grpc4bmi_dot_bmi__pb2.SetValueAtIndicesRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridSize(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, '/bmi.BmiService/getGridSize',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridSizeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridType(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, '/bmi.BmiService/getGridType',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridTypeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridRank(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, '/bmi.BmiService/getGridRank',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridRankResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridShape(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, '/bmi.BmiService/getGridShape',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridShapeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridSpacing(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, '/bmi.BmiService/getGridSpacing',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridSpacingResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridOrigin(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, '/bmi.BmiService/getGridOrigin',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridOriginResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridX(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, '/bmi.BmiService/getGridX',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridY(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, '/bmi.BmiService/getGridY',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridZ(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, '/bmi.BmiService/getGridZ',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridPointsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridNodeCount(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, '/bmi.BmiService/getGridNodeCount',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridEdgeCount(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, '/bmi.BmiService/getGridEdgeCount',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridFaceCount(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, '/bmi.BmiService/getGridFaceCount',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetCountResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridEdgeNodes(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, '/bmi.BmiService/getGridEdgeNodes',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridEdgeNodesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridFaceNodes(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, '/bmi.BmiService/getGridFaceNodes',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridFaceNodesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridFaceEdges(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, '/bmi.BmiService/getGridFaceEdges',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridFaceEdgesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def getGridNodesPerFace(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, '/bmi.BmiService/getGridNodesPerFace',
            grpc4bmi_dot_bmi__pb2.GridRequest.SerializeToString,
            grpc4bmi_dot_bmi__pb2.GetGridNodesPerFaceResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
