コード例 #1
0
            public EntriesEncoder Next()
            {
                if (_index + 1 >= _count)
                {
                    throw new IndexOutOfRangeException();
                }

                _offset = _parentMessage.Limit();
                _parentMessage.Limit(_offset + SbeBlockLength());
                ++_index;

                return(this);
            }
コード例 #2
0
            public void Wrap(
                RecordingLogEncoder parentMessage, IMutableDirectBuffer buffer, int count)
            {
                if (count < 0 || count > 65534)
                {
                    throw new ArgumentException("count outside allowed range: count=" + count);
                }

                this._parentMessage = parentMessage;
                this._buffer        = buffer;
                _dimensions.Wrap(buffer, parentMessage.Limit());
                _dimensions.BlockLength((ushort)64);
                _dimensions.NumInGroup((ushort)count);
                _index      = -1;
                this._count = count;
                parentMessage.Limit(parentMessage.Limit() + HEADER_SIZE);
            }