lpcmanager

Parents a70356db4612
Children cc9644b8e7e2
Backed out changeset 613633227bc2 - no need to customise eRPC interface because of using newly added ExtendedCall.
--- a/LPCExtension.py Tue Apr 23 16:55:20 2024 +0200
+++ b/LPCExtension.py Tue Oct 29 10:59:04 2024 +0100
@@ -64,11 +64,6 @@
return WAMP._WAMP_connector_factory(WampSession, *args, **kwargs)
connectors.connectors["WAMP"] = lambda:CustomWAMPFactory
-
-from connectors import ERPC
-ERPC.ReturnWrappers["CheckProductID"] = ERPC.ReturnAsLastOutput
-ERPC.ReturnWrappers["GetVersions"] = ERPC.ReturnAsLastOutput
-
# TODO
# from LPCconnector import LPC_connector_factory
# connectors.connectors["LPC"] = lambda: LPC_connector_factory
--- a/erpc_interface/__init__.py Tue Apr 23 16:55:20 2024 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,6 +0,0 @@
-#
-# Generated by erpcgen 1.11.0 on Tue Mar 5 16:08:14 2024.
-#
-# AUTOGENERATED - DO NOT EDIT
-#
-
--- a/erpc_interface/erpc_PLCObject.erpc Tue Apr 23 16:55:20 2024 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,75 +0,0 @@
-/*
- Written by Edouard TISSERANT (C) 2024
- This file is part of Beremiz runtime and IDE
- See COPYING.Runtime and COPYING file for copyrights details.
-*/
-
-program erpc_PLCObject
-
-struct PSKID {
- string ID;
- string PSK;
-};
-
-enum PLCstatus_enum {
- Empty
- Stopped,
- Started,
- Broken,
- Disconnected
-}
-
-struct PLCstatus {
- PLCstatus_enum PLCstatus;
- uint32[4] logcounts;
-};
-
-struct trace_sample {
- uint32 tick;
- binary TraceBuffer;
-};
-
-struct TraceVariables {
- PLCstatus_enum PLCstatus;
- list<trace_sample> traces;
-};
-
-struct extra_file {
- string fname;
- binary blobID;
-};
-
-struct trace_order {
- uint32 idx;
- binary force;
-};
-
-struct log_message {
- string msg;
- uint32 tick;
- uint32 sec;
- uint32 nsec;
-};
-
-
-interface BeremizPLCObjectService {
- AppendChunkToBlob(in binary data, in binary blobID, out binary newBlobID) -> uint32
- GetLogMessage(in uint8 level, in uint32 msgID, out log_message message) -> uint32
- GetPLCID(out PSKID plcID) -> uint32
- GetPLCstatus(out PLCstatus status) -> uint32
- GetTraceVariables(in uint32 debugToken, out TraceVariables traces) -> uint32
- MatchMD5(in string MD5, out bool match) -> uint32
- NewPLC(in string md5sum, in binary plcObjectBlobID, in list<extra_file> extrafiles, out bool success) -> uint32
- PurgeBlobs() -> uint32
- /* NOT TO DO : RemoteExec(in ) -> uint32 */
- RepairPLC() -> uint32
- ResetLogCount() -> uint32
- SeedBlob(in binary seed, out binary blobID) -> uint32
- SetTraceVariablesList(in list<trace_order> orders, out uint32 debugtoken) -> uint32
- StartPLC() -> uint32
- StopPLC(out bool success) -> uint32
-
- /* SMARTEH */
- CheckProductID(in string productIDtoCheck, out bool same) -> uint32
- GetVersions(out string ver) -> uint32
-}
--- a/erpc_interface/erpc_PLCObject/__init__.py Tue Apr 23 16:55:20 2024 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-#
-# Generated by erpcgen 1.11.0 on Tue Mar 5 16:08:14 2024.
-#
-# AUTOGENERATED - DO NOT EDIT
-#
-
-try:
- from erpc import erpc_version
- version = erpc_version.ERPC_VERSION
-except ImportError:
- version = "unknown"
-if version != "1.11.0":
- raise ValueError("The generated shim code version (1.11.0) is different to the rest of eRPC code (%s). \
-Install newer version by running \"python setup.py install\" in folder erpc/erpc_python/." % repr(version))
-
-from . import common
-from . import client
-from . import server
-from . import interface
--- a/erpc_interface/erpc_PLCObject/client.py Tue Apr 23 16:55:20 2024 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,334 +0,0 @@
-#
-# Generated by erpcgen 1.11.0 on Tue Mar 5 16:08:14 2024.
-#
-# AUTOGENERATED - DO NOT EDIT
-#
-
-import erpc
-from . import common, interface
-
-# Client for BeremizPLCObjectService
-class BeremizPLCObjectServiceClient(interface.IBeremizPLCObjectService):
- def __init__(self, manager):
- super(BeremizPLCObjectServiceClient, self).__init__()
- self._clientManager = manager
-
- def AppendChunkToBlob(self, data, blobID, newBlobID):
- assert type(newBlobID) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.APPENDCHUNKTOBLOB_ID,
- sequence=request.sequence))
- if data is None:
- raise ValueError("data is None")
- codec.write_binary(data)
- if blobID is None:
- raise ValueError("blobID is None")
- codec.write_binary(blobID)
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- newBlobID.value = codec.read_binary()
- _result = codec.read_uint32()
- return _result
-
- def GetLogMessage(self, level, msgID, message):
- assert type(message) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.GETLOGMESSAGE_ID,
- sequence=request.sequence))
- if level is None:
- raise ValueError("level is None")
- codec.write_uint8(level)
- if msgID is None:
- raise ValueError("msgID is None")
- codec.write_uint32(msgID)
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- message.value = common.log_message()._read(codec)
- _result = codec.read_uint32()
- return _result
-
- def GetPLCID(self, plcID):
- assert type(plcID) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.GETPLCID_ID,
- sequence=request.sequence))
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- plcID.value = common.PSKID()._read(codec)
- _result = codec.read_uint32()
- return _result
-
- def GetPLCstatus(self, status):
- assert type(status) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.GETPLCSTATUS_ID,
- sequence=request.sequence))
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- status.value = common.PLCstatus()._read(codec)
- _result = codec.read_uint32()
- return _result
-
- def GetTraceVariables(self, debugToken, traces):
- assert type(traces) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.GETTRACEVARIABLES_ID,
- sequence=request.sequence))
- if debugToken is None:
- raise ValueError("debugToken is None")
- codec.write_uint32(debugToken)
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- traces.value = common.TraceVariables()._read(codec)
- _result = codec.read_uint32()
- return _result
-
- def MatchMD5(self, MD5, match):
- assert type(match) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.MATCHMD5_ID,
- sequence=request.sequence))
- if MD5 is None:
- raise ValueError("MD5 is None")
- codec.write_string(MD5)
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- match.value = codec.read_bool()
- _result = codec.read_uint32()
- return _result
-
- def NewPLC(self, md5sum, plcObjectBlobID, extrafiles, success):
- assert type(success) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.NEWPLC_ID,
- sequence=request.sequence))
- if md5sum is None:
- raise ValueError("md5sum is None")
- codec.write_string(md5sum)
- if plcObjectBlobID is None:
- raise ValueError("plcObjectBlobID is None")
- codec.write_binary(plcObjectBlobID)
- if extrafiles is None:
- raise ValueError("extrafiles is None")
- codec.start_write_list(len(extrafiles))
- for _i0 in extrafiles:
- _i0._write(codec)
-
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- success.value = codec.read_bool()
- _result = codec.read_uint32()
- return _result
-
- def PurgeBlobs(self):
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.PURGEBLOBS_ID,
- sequence=request.sequence))
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- _result = codec.read_uint32()
- return _result
-
- def RepairPLC(self):
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.REPAIRPLC_ID,
- sequence=request.sequence))
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- _result = codec.read_uint32()
- return _result
-
- def ResetLogCount(self):
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.RESETLOGCOUNT_ID,
- sequence=request.sequence))
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- _result = codec.read_uint32()
- return _result
-
- def SeedBlob(self, seed, blobID):
- assert type(blobID) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.SEEDBLOB_ID,
- sequence=request.sequence))
- if seed is None:
- raise ValueError("seed is None")
- codec.write_binary(seed)
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- blobID.value = codec.read_binary()
- _result = codec.read_uint32()
- return _result
-
- def SetTraceVariablesList(self, orders, debugtoken):
- assert type(debugtoken) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.SETTRACEVARIABLESLIST_ID,
- sequence=request.sequence))
- if orders is None:
- raise ValueError("orders is None")
- codec.start_write_list(len(orders))
- for _i0 in orders:
- _i0._write(codec)
-
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- debugtoken.value = codec.read_uint32()
- _result = codec.read_uint32()
- return _result
-
- def StartPLC(self):
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.STARTPLC_ID,
- sequence=request.sequence))
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- _result = codec.read_uint32()
- return _result
-
- def StopPLC(self, success):
- assert type(success) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.STOPPLC_ID,
- sequence=request.sequence))
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- success.value = codec.read_bool()
- _result = codec.read_uint32()
- return _result
-
- def CheckProductID(self, productIDtoCheck, same):
- assert type(same) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.CHECKPRODUCTID_ID,
- sequence=request.sequence))
- if productIDtoCheck is None:
- raise ValueError("productIDtoCheck is None")
- codec.write_string(productIDtoCheck)
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- same.value = codec.read_bool()
- _result = codec.read_uint32()
- return _result
-
- def GetVersions(self, ver):
- assert type(ver) is erpc.Reference, "out parameter must be a Reference object"
-
- # Build remote function invocation message.
- request = self._clientManager.create_request()
- codec = request.codec
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kInvocationMessage,
- service=self.SERVICE_ID,
- request=self.GETVERSIONS_ID,
- sequence=request.sequence))
-
- # Send request and process reply.
- self._clientManager.perform_request(request)
- ver.value = codec.read_string()
- _result = codec.read_uint32()
- return _result
-
-
--- a/erpc_interface/erpc_PLCObject/common.py Tue Apr 23 16:55:20 2024 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,210 +0,0 @@
-#
-# Generated by erpcgen 1.11.0 on Tue Mar 5 16:08:14 2024.
-#
-# AUTOGENERATED - DO NOT EDIT
-#
-
-
-# Enumerators data types declarations
-class PLCstatus_enum:
- Empty = 0
- Stopped = 1
- Started = 2
- Broken = 3
- Disconnected = 4
-
-
-# Structures data types declarations
-class log_message(object):
- def __init__(self, msg=None, tick=None, sec=None, nsec=None):
- self.msg = msg # string
- self.tick = tick # uint32
- self.sec = sec # uint32
- self.nsec = nsec # uint32
-
- def _read(self, codec):
- self.msg = codec.read_string()
- self.tick = codec.read_uint32()
- self.sec = codec.read_uint32()
- self.nsec = codec.read_uint32()
- return self
-
- def _write(self, codec):
- if self.msg is None:
- raise ValueError("msg is None")
- codec.write_string(self.msg)
- if self.tick is None:
- raise ValueError("tick is None")
- codec.write_uint32(self.tick)
- if self.sec is None:
- raise ValueError("sec is None")
- codec.write_uint32(self.sec)
- if self.nsec is None:
- raise ValueError("nsec is None")
- codec.write_uint32(self.nsec)
-
- def __str__(self):
- return "<%s@%x msg=%s tick=%s sec=%s nsec=%s>" % (self.__class__.__name__, id(self), self.msg, self.tick, self.sec, self.nsec)
-
- def __repr__(self):
- return self.__str__()
-
-class PSKID(object):
- def __init__(self, ID=None, PSK=None):
- self.ID = ID # string
- self.PSK = PSK # string
-
- def _read(self, codec):
- self.ID = codec.read_string()
- self.PSK = codec.read_string()
- return self
-
- def _write(self, codec):
- if self.ID is None:
- raise ValueError("ID is None")
- codec.write_string(self.ID)
- if self.PSK is None:
- raise ValueError("PSK is None")
- codec.write_string(self.PSK)
-
- def __str__(self):
- return "<%s@%x ID=%s PSK=%s>" % (self.__class__.__name__, id(self), self.ID, self.PSK)
-
- def __repr__(self):
- return self.__str__()
-
-class PLCstatus(object):
- def __init__(self, PLCstatus=None, logcounts=None):
- self.PLCstatus = PLCstatus # PLCstatus_enum
- self.logcounts = logcounts # uint32[4]
-
-
- def _read(self, codec):
- self.PLCstatus = codec.read_int32()
- self.logcounts = []
- for _i0 in range(4):
- _v0 = codec.read_uint32()
- self.logcounts.append(_v0)
-
- return self
-
- def _write(self, codec):
- if self.PLCstatus is None:
- raise ValueError("PLCstatus is None")
- codec.write_int32(self.PLCstatus)
- if self.logcounts is None:
- raise ValueError("logcounts is None")
- for _i0 in self.logcounts:
- codec.write_uint32(_i0)
-
-
- def __str__(self):
- return "<%s@%x PLCstatus=%s logcounts=%s>" % (self.__class__.__name__, id(self), self.PLCstatus, self.logcounts)
-
- def __repr__(self):
- return self.__str__()
-
-class trace_sample(object):
- def __init__(self, tick=None, TraceBuffer=None):
- self.tick = tick # uint32
- self.TraceBuffer = TraceBuffer # binary
-
- def _read(self, codec):
- self.tick = codec.read_uint32()
- self.TraceBuffer = codec.read_binary()
- return self
-
- def _write(self, codec):
- if self.tick is None:
- raise ValueError("tick is None")
- codec.write_uint32(self.tick)
- if self.TraceBuffer is None:
- raise ValueError("TraceBuffer is None")
- codec.write_binary(self.TraceBuffer)
-
- def __str__(self):
- return "<%s@%x tick=%s TraceBuffer=%s>" % (self.__class__.__name__, id(self), self.tick, self.TraceBuffer)
-
- def __repr__(self):
- return self.__str__()
-
-class TraceVariables(object):
- def __init__(self, PLCstatus=None, traces=None):
- self.PLCstatus = PLCstatus # PLCstatus_enum
- self.traces = traces # list<trace_sample>
-
- def _read(self, codec):
- self.PLCstatus = codec.read_int32()
- _n0 = codec.start_read_list()
- self.traces = []
- for _i0 in range(_n0):
- _v0 = trace_sample()._read(codec)
- self.traces.append(_v0)
-
- return self
-
- def _write(self, codec):
- if self.PLCstatus is None:
- raise ValueError("PLCstatus is None")
- codec.write_int32(self.PLCstatus)
- if self.traces is None:
- raise ValueError("traces is None")
- codec.start_write_list(len(self.traces))
- for _i0 in self.traces:
- _i0._write(codec)
-
-
- def __str__(self):
- return "<%s@%x PLCstatus=%s traces=%s>" % (self.__class__.__name__, id(self), self.PLCstatus, self.traces)
-
- def __repr__(self):
- return self.__str__()
-
-class extra_file(object):
- def __init__(self, fname=None, blobID=None):
- self.fname = fname # string
- self.blobID = blobID # binary
-
- def _read(self, codec):
- self.fname = codec.read_string()
- self.blobID = codec.read_binary()
- return self
-
- def _write(self, codec):
- if self.fname is None:
- raise ValueError("fname is None")
- codec.write_string(self.fname)
- if self.blobID is None:
- raise ValueError("blobID is None")
- codec.write_binary(self.blobID)
-
- def __str__(self):
- return "<%s@%x fname=%s blobID=%s>" % (self.__class__.__name__, id(self), self.fname, self.blobID)
-
- def __repr__(self):
- return self.__str__()
-
-class trace_order(object):
- def __init__(self, idx=None, force=None):
- self.idx = idx # uint32
- self.force = force # binary
-
- def _read(self, codec):
- self.idx = codec.read_uint32()
- self.force = codec.read_binary()
- return self
-
- def _write(self, codec):
- if self.idx is None:
- raise ValueError("idx is None")
- codec.write_uint32(self.idx)
- if self.force is None:
- raise ValueError("force is None")
- codec.write_binary(self.force)
-
- def __str__(self):
- return "<%s@%x idx=%s force=%s>" % (self.__class__.__name__, id(self), self.idx, self.force)
-
- def __repr__(self):
- return self.__str__()
-
--- a/erpc_interface/erpc_PLCObject/interface.py Tue Apr 23 16:55:20 2024 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,75 +0,0 @@
-#
-# Generated by erpcgen 1.11.0 on Tue Mar 5 16:08:14 2024.
-#
-# AUTOGENERATED - DO NOT EDIT
-#
-
-# Abstract base class for BeremizPLCObjectService
-class IBeremizPLCObjectService(object):
- SERVICE_ID = 1
- APPENDCHUNKTOBLOB_ID = 1
- GETLOGMESSAGE_ID = 2
- GETPLCID_ID = 3
- GETPLCSTATUS_ID = 4
- GETTRACEVARIABLES_ID = 5
- MATCHMD5_ID = 6
- NEWPLC_ID = 7
- PURGEBLOBS_ID = 8
- REPAIRPLC_ID = 9
- RESETLOGCOUNT_ID = 10
- SEEDBLOB_ID = 11
- SETTRACEVARIABLESLIST_ID = 12
- STARTPLC_ID = 13
- STOPPLC_ID = 14
- CHECKPRODUCTID_ID = 15
- GETVERSIONS_ID = 16
-
- def AppendChunkToBlob(self, data, blobID, newBlobID):
- raise NotImplementedError()
-
- def GetLogMessage(self, level, msgID, message):
- raise NotImplementedError()
-
- def GetPLCID(self, plcID):
- raise NotImplementedError()
-
- def GetPLCstatus(self, status):
- raise NotImplementedError()
-
- def GetTraceVariables(self, debugToken, traces):
- raise NotImplementedError()
-
- def MatchMD5(self, MD5, match):
- raise NotImplementedError()
-
- def NewPLC(self, md5sum, plcObjectBlobID, extrafiles, success):
- raise NotImplementedError()
-
- def PurgeBlobs(self):
- raise NotImplementedError()
-
- def RepairPLC(self):
- raise NotImplementedError()
-
- def ResetLogCount(self):
- raise NotImplementedError()
-
- def SeedBlob(self, seed, blobID):
- raise NotImplementedError()
-
- def SetTraceVariablesList(self, orders, debugtoken):
- raise NotImplementedError()
-
- def StartPLC(self):
- raise NotImplementedError()
-
- def StopPLC(self, success):
- raise NotImplementedError()
-
- def CheckProductID(self, productIDtoCheck, same):
- raise NotImplementedError()
-
- def GetVersions(self, ver):
- raise NotImplementedError()
-
-
--- a/erpc_interface/erpc_PLCObject/server.py Tue Apr 23 16:55:20 2024 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,400 +0,0 @@
-#
-# Generated by erpcgen 1.11.0 on Tue Mar 5 16:08:14 2024.
-#
-# AUTOGENERATED - DO NOT EDIT
-#
-
-import erpc
-from . import common, interface
-
-# Client for BeremizPLCObjectService
-class BeremizPLCObjectServiceService(erpc.server.Service):
- def __init__(self, handler):
- super(BeremizPLCObjectServiceService, self).__init__(interface.IBeremizPLCObjectService.SERVICE_ID)
- self._handler = handler
- self._methods = {
- interface.IBeremizPLCObjectService.APPENDCHUNKTOBLOB_ID: self._handle_AppendChunkToBlob,
- interface.IBeremizPLCObjectService.GETLOGMESSAGE_ID: self._handle_GetLogMessage,
- interface.IBeremizPLCObjectService.GETPLCID_ID: self._handle_GetPLCID,
- interface.IBeremizPLCObjectService.GETPLCSTATUS_ID: self._handle_GetPLCstatus,
- interface.IBeremizPLCObjectService.GETTRACEVARIABLES_ID: self._handle_GetTraceVariables,
- interface.IBeremizPLCObjectService.MATCHMD5_ID: self._handle_MatchMD5,
- interface.IBeremizPLCObjectService.NEWPLC_ID: self._handle_NewPLC,
- interface.IBeremizPLCObjectService.PURGEBLOBS_ID: self._handle_PurgeBlobs,
- interface.IBeremizPLCObjectService.REPAIRPLC_ID: self._handle_RepairPLC,
- interface.IBeremizPLCObjectService.RESETLOGCOUNT_ID: self._handle_ResetLogCount,
- interface.IBeremizPLCObjectService.SEEDBLOB_ID: self._handle_SeedBlob,
- interface.IBeremizPLCObjectService.SETTRACEVARIABLESLIST_ID: self._handle_SetTraceVariablesList,
- interface.IBeremizPLCObjectService.STARTPLC_ID: self._handle_StartPLC,
- interface.IBeremizPLCObjectService.STOPPLC_ID: self._handle_StopPLC,
- interface.IBeremizPLCObjectService.CHECKPRODUCTID_ID: self._handle_CheckProductID,
- interface.IBeremizPLCObjectService.GETVERSIONS_ID: self._handle_GetVersions,
- }
-
- def _handle_AppendChunkToBlob(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- newBlobID = erpc.Reference()
-
- # Read incoming parameters.
- data = codec.read_binary()
- blobID = codec.read_binary()
-
- # Invoke user implementation of remote function.
- _result = self._handler.AppendChunkToBlob(data, blobID, newBlobID)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.APPENDCHUNKTOBLOB_ID,
- sequence=sequence))
- if newBlobID.value is None:
- raise ValueError("newBlobID.value is None")
- codec.write_binary(newBlobID.value)
- codec.write_uint32(_result)
-
- def _handle_GetLogMessage(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- message = erpc.Reference()
-
- # Read incoming parameters.
- level = codec.read_uint8()
- msgID = codec.read_uint32()
-
- # Invoke user implementation of remote function.
- _result = self._handler.GetLogMessage(level, msgID, message)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.GETLOGMESSAGE_ID,
- sequence=sequence))
- if message.value is None:
- raise ValueError("message.value is None")
- message.value._write(codec)
- codec.write_uint32(_result)
-
- def _handle_GetPLCID(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- plcID = erpc.Reference()
-
- # Read incoming parameters.
-
- # Invoke user implementation of remote function.
- _result = self._handler.GetPLCID(plcID)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.GETPLCID_ID,
- sequence=sequence))
- if plcID.value is None:
- raise ValueError("plcID.value is None")
- plcID.value._write(codec)
- codec.write_uint32(_result)
-
- def _handle_GetPLCstatus(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- status = erpc.Reference()
-
- # Read incoming parameters.
-
- # Invoke user implementation of remote function.
- _result = self._handler.GetPLCstatus(status)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.GETPLCSTATUS_ID,
- sequence=sequence))
- if status.value is None:
- raise ValueError("status.value is None")
- status.value._write(codec)
- codec.write_uint32(_result)
-
- def _handle_GetTraceVariables(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- traces = erpc.Reference()
-
- # Read incoming parameters.
- debugToken = codec.read_uint32()
-
- # Invoke user implementation of remote function.
- _result = self._handler.GetTraceVariables(debugToken, traces)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.GETTRACEVARIABLES_ID,
- sequence=sequence))
- if traces.value is None:
- raise ValueError("traces.value is None")
- traces.value._write(codec)
- codec.write_uint32(_result)
-
- def _handle_MatchMD5(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- match = erpc.Reference()
-
- # Read incoming parameters.
- MD5 = codec.read_string()
-
- # Invoke user implementation of remote function.
- _result = self._handler.MatchMD5(MD5, match)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.MATCHMD5_ID,
- sequence=sequence))
- if match.value is None:
- raise ValueError("match.value is None")
- codec.write_bool(match.value)
- codec.write_uint32(_result)
-
- def _handle_NewPLC(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- success = erpc.Reference()
-
- # Read incoming parameters.
- md5sum = codec.read_string()
- plcObjectBlobID = codec.read_binary()
- _n0 = codec.start_read_list()
- extrafiles = []
- for _i0 in range(_n0):
- _v0 = common.extra_file()._read(codec)
- extrafiles.append(_v0)
-
-
- # Invoke user implementation of remote function.
- _result = self._handler.NewPLC(md5sum, plcObjectBlobID, extrafiles, success)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.NEWPLC_ID,
- sequence=sequence))
- if success.value is None:
- raise ValueError("success.value is None")
- codec.write_bool(success.value)
- codec.write_uint32(_result)
-
- def _handle_PurgeBlobs(self, sequence, codec):
- # Read incoming parameters.
-
- # Invoke user implementation of remote function.
- _result = self._handler.PurgeBlobs()
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.PURGEBLOBS_ID,
- sequence=sequence))
- codec.write_uint32(_result)
-
- def _handle_RepairPLC(self, sequence, codec):
- # Read incoming parameters.
-
- # Invoke user implementation of remote function.
- _result = self._handler.RepairPLC()
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.REPAIRPLC_ID,
- sequence=sequence))
- codec.write_uint32(_result)
-
- def _handle_ResetLogCount(self, sequence, codec):
- # Read incoming parameters.
-
- # Invoke user implementation of remote function.
- _result = self._handler.ResetLogCount()
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.RESETLOGCOUNT_ID,
- sequence=sequence))
- codec.write_uint32(_result)
-
- def _handle_SeedBlob(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- blobID = erpc.Reference()
-
- # Read incoming parameters.
- seed = codec.read_binary()
-
- # Invoke user implementation of remote function.
- _result = self._handler.SeedBlob(seed, blobID)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.SEEDBLOB_ID,
- sequence=sequence))
- if blobID.value is None:
- raise ValueError("blobID.value is None")
- codec.write_binary(blobID.value)
- codec.write_uint32(_result)
-
- def _handle_SetTraceVariablesList(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- debugtoken = erpc.Reference()
-
- # Read incoming parameters.
- _n0 = codec.start_read_list()
- orders = []
- for _i0 in range(_n0):
- _v0 = common.trace_order()._read(codec)
- orders.append(_v0)
-
-
- # Invoke user implementation of remote function.
- _result = self._handler.SetTraceVariablesList(orders, debugtoken)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.SETTRACEVARIABLESLIST_ID,
- sequence=sequence))
- if debugtoken.value is None:
- raise ValueError("debugtoken.value is None")
- codec.write_uint32(debugtoken.value)
- codec.write_uint32(_result)
-
- def _handle_StartPLC(self, sequence, codec):
- # Read incoming parameters.
-
- # Invoke user implementation of remote function.
- _result = self._handler.StartPLC()
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.STARTPLC_ID,
- sequence=sequence))
- codec.write_uint32(_result)
-
- def _handle_StopPLC(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- success = erpc.Reference()
-
- # Read incoming parameters.
-
- # Invoke user implementation of remote function.
- _result = self._handler.StopPLC(success)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.STOPPLC_ID,
- sequence=sequence))
- if success.value is None:
- raise ValueError("success.value is None")
- codec.write_bool(success.value)
- codec.write_uint32(_result)
-
- def _handle_CheckProductID(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- same = erpc.Reference()
-
- # Read incoming parameters.
- productIDtoCheck = codec.read_string()
-
- # Invoke user implementation of remote function.
- _result = self._handler.CheckProductID(productIDtoCheck, same)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.CHECKPRODUCTID_ID,
- sequence=sequence))
- if same.value is None:
- raise ValueError("same.value is None")
- codec.write_bool(same.value)
- codec.write_uint32(_result)
-
- def _handle_GetVersions(self, sequence, codec):
- # Create reference objects to pass into handler for out/inout parameters.
- ver = erpc.Reference()
-
- # Read incoming parameters.
-
- # Invoke user implementation of remote function.
- _result = self._handler.GetVersions(ver)
-
- # Prepare codec for reply message.
- codec.reset()
-
- # Construct reply message.
- codec.start_write_message(erpc.codec.MessageInfo(
- type=erpc.codec.MessageType.kReplyMessage,
- service=interface.IBeremizPLCObjectService.SERVICE_ID,
- request=interface.IBeremizPLCObjectService.GETVERSIONS_ID,
- sequence=sequence))
- if ver.value is None:
- raise ValueError("ver.value is None")
- codec.write_string(ver.value)
- codec.write_uint32(_result)
-
-