Recurity.Swf.TagHandler.PlaceObject2.Write C# (CSharp) Method

Write() public method

public Write ( Stream output ) : void
output Stream
return void
        public override void Write(Stream output)
        {
            this.WriteTagHeader(output);

            long pos = output.Position;

            BitStream bits = new BitStream(output);
            bits.WriteBits(1, (_PlaceFlagHasClipActions ? 1 : 0));
            bits.WriteBits(1, (_PlaceFlagHasClipDepth ? 1 : 0));
            bits.WriteBits(1, (_PlaceFlagHasName ? 1 : 0));
            bits.WriteBits(1, (_PlaceFlagHasRatio ? 1 : 0));
            bits.WriteBits(1, (_PlaceFlagHasColorTransform ? 1 : 0));
            bits.WriteBits(1, (_PlaceFlagHasMatrix ? 1 : 0));
            bits.WriteBits(1, (_PlaceFlagHasCharacter ? 1 : 0));
            bits.WriteBits(1, (_PlaceFlagMove ? 1 : 0));
            bits.WriteFlush();

            BinaryWriter bw = new BinaryWriter(output);
            bw.Write(_Depth);

            if (_PlaceFlagHasCharacter)
                bw.Write(_CharacterID);

            if (_PlaceFlagHasMatrix)
                base._TransformMatrix.Write(output);

            if (_PlaceFlagHasColorTransform)
                _CxFormWithAlpha.Write(output);

            if (_PlaceFlagHasRatio)
                bw.Write(_Ratio);

            if (_PlaceFlagHasName)
                Helper.SwfStrings.SwfWriteString(this.Version, bw, _Name);

            if (_PlaceFlagHasClipDepth)
                bw.Write(_ClipDepth);

            if (this.Version >= 5)
            {
                if (_PlaceFlagHasClipActions)
                    _ClipActions.Write(output);
            }
        }