示例#1
0
        public static void WriteUnprepared(BitStream stream, object[] parameters)
        {
            int count = parameters.Length;

            if (count == 0)
            {
                return;
            }

            if (typeof(BitStream).TypeHandle.Equals(Type.GetTypeHandle(parameters[count - 1])))
            {
                count--;
                int i = 0;

                for (; i < count; i++)
                {
                    WriteParameter(stream, parameters[i]);
                }

                stream.AppendBitStream(parameters[i] as BitStream);
            }
            else
            {
                for (int i = 0; i < count; i++)
                {
                    WriteParameter(stream, parameters[i]);
                }
            }
        }
示例#2
0
        public void WritePrepared(BitStream stream, object[] parameters)
        {
            int i = 0;

            for (; i < _codecs.Length; i++)
            {
                object param = parameters[i];
                stream._WriteObject(_codecs[i], param);
            }

            if (_appendStream)
            {
                stream.AppendBitStream(parameters[i] as BitStream);
            }
        }