public void MergeFrom(CodedInputStream input) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE input.ReadRawMessage(this); #else uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { KeyData = input.ReadBytes(); break; } case 16: { RollingStartIntervalNumber = input.ReadUInt32(); break; } case 24: { RollingPeriod = input.ReadUInt32(); break; } case 32: { TransmissionRiskLevel = input.ReadInt32(); break; } case 42: { visitedCountries_.AddEntriesFrom(input, _repeated_visitedCountries_codec); break; } case 50: { Origin = input.ReadString(); break; } case 56: { ReportType = (global::Iks.Protobuf.EfgsReportType) input.ReadEnum(); break; } case 64: { DaysSinceOnsetOfSymptoms = input.ReadSInt32(); break; } } } #endif }
// 把buffer解析成目标对象,回调 public void Decode(MessageBuffer msgBuf) { if (msgBuf == null) { return; } IMessage message = GetMessage(msgBuf); using (CodedInputStream cis = new CodedInputStream(msgBuf.Buffer)) { cis.ReadRawMessage(message); } if (message != null) { OnEvent(msgBuf.CMD, message); } }
public void MergeFrom(CodedInputStream input) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE input.ReadRawMessage(this); #else uint tag; while ((tag = input.ReadTag()) != 0) { switch (tag) { default: _unknownFields = UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { keys_.AddEntriesFrom(input, _repeated_keys_codec); break; } } } #endif }
public void MergeFrom(CodedInputStream input) { input.ReadRawMessage(this); }