Snippets

HBPNeurorobotics EngineGRPCServer.cs

Created by erdisayar
using System.Collections;
using System.Collections.Generic;
using System.Threading.Tasks;
using UnityEngine;
using Grpc.Core;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.WellKnownTypes;
using TMPro;
using EngineGrpc;
using UnitySim;

using System.Threading;
using System.Threading.Tasks;

public class EngineGRPCServer : MonoBehaviour
{   
   public Unity_NRPCore_Interface unity_nrpcore_interface_instance = new Unity_NRPCore_Interface();
    void Start()
    {   
        
        var server = new Server()
        {
            Services = { EngineGrpc.EngineGrpcService.BindService(unity_nrpcore_interface_instance) },
            Ports = { new ServerPort("localhost", 50052, ServerCredentials.Insecure) }
        };
        server.Start();
    }

    void FixedUpdate()
    {   
    }
}
public class Unity_NRPCore_Interface : EngineGrpc.EngineGrpcService.EngineGrpcServiceBase
{
    public override Task<EngineGrpc.InitializeReply> initialize(EngineGrpc.InitializeRequest request, ServerCallContext context)
    {
        var response = new EngineGrpc.InitializeReply {  Json = "Initialize Reply Message" };
        request.Json = "Initialize Request Message";
        return Task.FromResult(response);
    }

    public override Task<EngineGrpc.RunLoopStepReply> runLoopStep(EngineGrpc.RunLoopStepRequest request, ServerCallContext context)
    {
        var response = new EngineGrpc.RunLoopStepReply { EngineTime = 0 };
        return Task.FromResult(response);
    }

    public override Task<EngineGrpc.ShutdownReply> shutdown(EngineGrpc.ShutdownRequest request, ServerCallContext context)
    {
        var response = new EngineGrpc.ShutdownReply { Json = "shut down reply" };
        request.Json = "shut down request";
        return Task.FromResult(response);
    }

    public override Task<EngineGrpc.SetDataPacksReply> setDataPacks(EngineGrpc.SetDataPacksRequest request, ServerCallContext context)
    {   
        var response = new EngineGrpc.SetDataPacksReply { };
        return Task.FromResult(response);
    }

    public override Task<EngineGrpc.GetDataPacksReply> getDataPacks(EngineGrpc.GetDataPacksRequest request, ServerCallContext context)
    {   
        var response = new EngineGrpc.GetDataPacksReply {};
        return Task.FromResult(response);
    }

    public override Task<EngineGrpc.ResetReply> reset(EngineGrpc.ResetRequest request, ServerCallContext context)
    {
        var response = new EngineGrpc.ResetReply { };
        return Task.FromResult(response);
    }


}

Comments (0)

HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.