public void Experiment1() { var value = new C_CS_NA_1(new CP56Time2a(2020, 11, 13, 16, 31, 42, 845, false, false)); var infoObjects = new[] { new InfoObject <C_CS_NA_1>(3, value) }; var apduLength = infoObjects.CalculateApduLength(); var bufferLength = Constants.PrefixLength + apduLength; var h = new FrameIHeader( sendSeqNo: 1, recieveSeqNo: 0, asduTypeId: AsduTypeId.C_CS_NA_1, isSequence: false, isTest: true, isNegativeConfirmation: false, causeOfTransmission: CauseOfTransmission.ACTIVATION, originatorAddress: 10, commonAddress: 2, infoObjectsCount: infoObjects.Length, apduLength: apduLength); var frame = new FrameI <C_CS_NA_1>(h, infoObjects); var buffer = new byte[bufferLength].AsSpan(); var bytesWritten = frame.TryWrite(buffer); var bytesAsHex = buffer.ToDebugString(byte2hex: true); var desc = ByteUtil.Describe(buffer, 0, length: bufferLength, annotations: FrameIHeader.Annotations); }
public void Send <T>(Guid connectionId, FrameI <T> frame) where T : IAsduValue, new() => SendImpl(connectionId, frame);