edouard@3937: /*
edouard@3946:  * Generated by erpcgen 1.12.0 on Mon May 20 17:54:19 2024.
edouard@3937:  *
edouard@3937:  * AUTOGENERATED - DO NOT EDIT
edouard@3937:  */
edouard@3937: 
edouard@3937: 
edouard@3937: #include <new>
edouard@3937: #include "c_erpc_PLCObject_server.h"
edouard@3937: #include "erpc_PLCObject_server.hpp"
edouard@3937: #include "erpc_manually_constructed.hpp"
edouard@3937: 
edouard@3937: using namespace erpc;
edouard@3937: using namespace std;
edouard@3937: using namespace erpcShim;
edouard@3937: 
edouard@3937: 
edouard@3937: class BeremizPLCObjectService_server: public BeremizPLCObjectService_interface
edouard@3937: {
edouard@3937:     public:
edouard@3937:         virtual ~BeremizPLCObjectService_server() {};
edouard@3937: 
edouard@3937: 
edouard@3937:         uint32_t AppendChunkToBlob(const binary_t * data, const binary_t * blobID, binary_t * newBlobID)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::AppendChunkToBlob(data, blobID, newBlobID);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t GetLogMessage(uint8_t level, uint32_t msgID, log_message * message)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::GetLogMessage(level, msgID, message);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t GetPLCID(PSKID * plcID)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::GetPLCID(plcID);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t GetPLCstatus(PLCstatus * status)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::GetPLCstatus(status);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t GetTraceVariables(uint32_t debugToken, TraceVariables * traces)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::GetTraceVariables(debugToken, traces);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t MatchMD5(const char * MD5, bool * match)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::MatchMD5(MD5, match);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t NewPLC(const char * md5sum, const binary_t * plcObjectBlobID, const list_extra_file_1_t * extrafiles, bool * success)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::NewPLC(md5sum, plcObjectBlobID, extrafiles, success);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t PurgeBlobs(void)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::PurgeBlobs();
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t RepairPLC(void)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::RepairPLC();
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t ResetLogCount(void)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::ResetLogCount();
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t SeedBlob(const binary_t * seed, binary_t * blobID)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::SeedBlob(seed, blobID);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3941:         uint32_t SetTraceVariablesList(const list_trace_order_1_t * orders, int32_t * debugtoken)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::SetTraceVariablesList(orders, debugtoken);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t StartPLC(void)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::StartPLC();
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: 
edouard@3937:         uint32_t StopPLC(bool * success)
edouard@3937:         {
edouard@3937:             uint32_t result;
edouard@3937:             result = ::StopPLC(success);
edouard@3937: 
edouard@3937:             return result;
edouard@3937:         }
edouard@3937: };
edouard@3937: 
edouard@3937: ERPC_MANUALLY_CONSTRUCTED_STATIC(BeremizPLCObjectService_service, s_BeremizPLCObjectService_service);
edouard@3937: ERPC_MANUALLY_CONSTRUCTED_STATIC(BeremizPLCObjectService_server, s_BeremizPLCObjectService_server);
edouard@3937: 
edouard@3937: erpc_service_t create_BeremizPLCObjectService_service(void)
edouard@3937: {
edouard@3937:     erpc_service_t service;
edouard@3937: 
edouard@3937: #if ERPC_ALLOCATION_POLICY == ERPC_ALLOCATION_POLICY_DYNAMIC
edouard@3937:     service = new (nothrow) BeremizPLCObjectService_service(new (nothrow)BeremizPLCObjectService_server());
edouard@3937: #else
edouard@3937:     if (s_BeremizPLCObjectService_service.isUsed())
edouard@3937:     {
edouard@3937:         service = NULL;
edouard@3937:     }
edouard@3937:     else
edouard@3937:     {
edouard@3937:         s_BeremizPLCObjectService_server.construct();
edouard@3937:         s_BeremizPLCObjectService_service.construct(s_BeremizPLCObjectService_server.get());
edouard@3937:         service = s_BeremizPLCObjectService_service.get();
edouard@3937:     }
edouard@3937: #endif
edouard@3937: 
edouard@3937:     return service;
edouard@3937: }
edouard@3937: 
edouard@3937: void destroy_BeremizPLCObjectService_service(erpc_service_t service)
edouard@3937: {
edouard@3937: #if ERPC_ALLOCATION_POLICY == ERPC_ALLOCATION_POLICY_DYNAMIC
edouard@3937:     if (service)
edouard@3937:     {
edouard@3937:         delete (BeremizPLCObjectService_server *)(((BeremizPLCObjectService_service *)service)->getHandler());
edouard@3937:         delete (BeremizPLCObjectService_service *)service;
edouard@3937:     }
edouard@3937: #else
edouard@3937:     (void)service;
edouard@3937:     erpc_assert(service == s_BeremizPLCObjectService_service.get());
edouard@3937:     s_BeremizPLCObjectService_service.destroy();
edouard@3937:     s_BeremizPLCObjectService_server.destroy();
edouard@3937: #endif
edouard@3937: }
edouard@3937: