Exemplo n.º 1
0
        public virtual BitMap4 ReadBitMap(int bitCount)
        {
            BitMap4 map = new BitMap4(_current._buffer, _current._offset, bitCount);

            _current.Seek(_current.Offset() + map.MarshalledLength());
            return(map);
        }
Exemplo n.º 2
0
        public virtual BitMap4 ReadBitMap(int bitCount)
        {
            BitMap4 map = new BitMap4(_buffer, _offset, bitCount);

            _offset += map.MarshalledLength();
            return(map);
        }
        public BitMap4 ReadBitMap(int bitCount)
        {
            BitMap4 value = _source.ReadBitMap(bitCount);

            _target.IncrementOffset(value.MarshalledLength());
            return(value);
        }
Exemplo n.º 4
0
        protected override void WriteElements(IWriteContext context, object obj, ArrayInfo
                                              info)
        {
            IEnumerator objects = AllElements(Container(context), obj);

            if (HasNullBitmap(info))
            {
                BitMap4         nullBitMap       = new BitMap4(info.ElementCount());
                IReservedBuffer nullBitMapBuffer = context.Reserve(nullBitMap.MarshalledLength());
                int             currentElement   = 0;
                while (objects.MoveNext())
                {
                    object current = objects.Current;
                    if (current == null)
                    {
                        nullBitMap.SetTrue(currentElement);
                    }
                    else
                    {
                        context.WriteObject(DelegateTypeHandler(), current);
                    }
                    currentElement++;
                }
                nullBitMapBuffer.WriteBytes(nullBitMap.Bytes());
            }
            else
            {
                while (objects.MoveNext())
                {
                    context.WriteObject(DelegateTypeHandler(), objects.Current);
                }
            }
        }
Exemplo n.º 5
0
 public void WriteBitMap(BitMap4 nullBitMap)
 {
     nullBitMap.WriteTo(_buffer, _offset);
     _offset += nullBitMap.MarshalledLength();
 }
 private int WriteBufferOffset()
 {
     return(HeaderLength + _nullBitMap.MarshalledLength());
 }