コード例 #1
0
ファイル: FieldCursorTests.cs プロジェクト: mpvyard/Minotaur
        public static IColumnCursor <T> CreateCursor <TEntry, T>(TEntry[] chunk, ICodecFullStream codec)
            where TEntry : unmanaged, IFieldEntry <T>
        {
            var allocator    = new DummyPinnedAllocator();
            var columnStream = new ColumnStreamFullStream <ColumnMemoryStream, ICodecFullStream>(
                new ColumnMemoryStream(), codec, allocator, 1024);

            columnStream.WriteAndReset(chunk, Natives.SizeOfEntry <TEntry>());

            return(new ColumnCursor <TEntry, T, ColumnStreamFullStream <ColumnMemoryStream, ICodecFullStream> >(allocator, columnStream));
        }
コード例 #2
0
        private ColumnStreamFullStream <TemplateMemoryStream, TCodec> CreateCstb <TCodec>(TCodec codec, byte[] data)
            where TCodec : ICodecFullStream
        {
            var memory = new TemplateMemoryStream(8192);

            var stream = new ColumnStreamFullStream <TemplateMemoryStream, TCodec>(memory, codec, _allocator, 1024);

            stream.WriteAndReset(data, sizeof(byte));

            _streams.Add(stream);
            return(stream);
        }
コード例 #3
0
        public void Setup()
        {
            var data = Factory.CreateRandomBytes(WROTE);
            var ptr  = Marshal.AllocHGlobal(READ);

            _unmanagedPtr.Add(ptr);
            _rData    = (byte *)ptr;
            _readData = new byte[READ];

            _csFullClassBase = CreateCsb(new VoidCodecFullStream(), data);
            //_csTemplateCodecBase = CreateCsb(new TemplateVoidCodec(), data);
            //_csFullTemplateBase = CreateCstb(new TemplateVoidCodec(), data);
            _csFullClass   = CreateCs <byte, VoidCodec <byte> >(new VoidCodec <byte>(), data);
            _csUnsafeClass = CreateCsub <byte>(new VoidCodec <byte>(), data);
            //_csTemplateCodec1 = CreateCs(new TemplateVoidCodec(), data);
            //_csFullTemplateCodec = CreateCst(new TemplateVoidCodec(), data);
        }