public PackedOutputCircuitInfo(int objectAddress, OutputCircuitInfo oci, QualityDescriptorP qdp, CP16Time2a operatingTime, CP24Time2a timestamp) : base(objectAddress) { this.oci = oci; this.qdp = qdp; this.operatingTime = operatingTime; this.timestamp = timestamp; }
internal PackedOutputCircuitInfo(ApplicationLayerParameters parameters, byte[] msg, int startIndex, bool isSequence) : base(parameters, msg, startIndex, isSequence) { if (!isSequence) { startIndex += parameters.SizeOfIOA; /* skip IOA */ } if ((msg.Length - startIndex) < GetEncodedSize()) { throw new ASDUParsingException("Message too small"); } oci = new OutputCircuitInfo(msg [startIndex++]); qdp = new QualityDescriptorP(msg [startIndex++]); operatingTime = new CP16Time2a(msg, startIndex); startIndex += 2; /* parse CP56Time2a (time stamp) */ timestamp = new CP24Time2a(msg, startIndex); }