#include #include "PMR/CalculateRequest.pb.h" #include "PMR/CalculateResponse.pb.h" #pragma once #define EXPORT_API __declspec(dllexport) using namespace std; using namespace Tango::PMR::Stubs; namespace Tango { namespace ProtoTest { class ProtoTester { public: ProtoTester(); ~ProtoTester(); }; } } extern "C" EXPORT_API int __cdecl Calculate(unsigned char* data, int size, unsigned char* *output) { CalculateRequest request; request.ParseFromArray(data, size); CalculateResponse* response = new CalculateResponse(); response->set_sum(request.a() + request.b()); unsigned char* stream = (unsigned char*)malloc(response->ByteSize()); response->SerializeToArray(stream, response->ByteSize()); *output = stream; return response->ByteSize(); }