public override int GetMarshalledSize() { int marshalSize = 0; marshalSize = base.GetMarshalledSize(); marshalSize += this._munitionType.GetMarshalledSize(); // this._munitionType marshalSize += this._shotStartTime.GetMarshalledSize(); // this._shotStartTime marshalSize += 4; // this._commulativeShotTime marshalSize += this._ApertureEmitterLocation.GetMarshalledSize(); // this._ApertureEmitterLocation marshalSize += 4; // this._apertureDiameter marshalSize += 4; // this._wavelength marshalSize += 4; // this._peakIrradiance marshalSize += 4; // this._pulseRepetitionFrequency marshalSize += 4; // this._pulseWidth marshalSize += 4; // this._flags marshalSize += 1; // this._pulseShape marshalSize += 1; // this._padding1 marshalSize += 4; // this._padding2 marshalSize += 2; // this._padding3 marshalSize += 2; // this._numberOfDERecords for (int idx = 0; idx < this._dERecords.Count; idx++) { StandardVariableSpecification listElement = (StandardVariableSpecification)this._dERecords[idx]; marshalSize += listElement.GetMarshalledSize(); } return(marshalSize); }