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);
        }