public virtual void Marshal(DataOutputStream dos) { if (dos != null) { try { dos.WriteUnsignedByte((byte)this._systemDataLength); dos.WriteUnsignedByte((byte)this._beamDataRecords.Count); dos.WriteUnsignedShort((ushort)this._emissionsPadding2); this._emitterSystem.Marshal(dos); this._location.Marshal(dos); for (int idx = 0; idx < this._beamDataRecords.Count; idx++) { ElectronicEmissionBeamData aElectronicEmissionBeamData = (ElectronicEmissionBeamData)this._beamDataRecords[idx]; aElectronicEmissionBeamData.Marshal(dos); } } catch (Exception e) { #if DEBUG Trace.WriteLine(e); Trace.Flush(); #endif this.OnException(e); } } }