private static extern IntPtr ManagedRandomAccessFile_Create(
     ReadDelegate read,
     CloseDelegate close,
     GetSizeDelegate getSize,
     TellDelegate tell,
     SeekDelegate seek,
     ClosedDelegate closed,
     out IntPtr randomAccessFile);
        public QueryLogBuffer(LibraryHandle libraryHandle)
            : base(true)
        {
            _newBuffder = libraryHandle.GetUnmanagedDelegate<NewBufferDelegate>();
            _delete = libraryHandle.GetUnmanagedDelegate<DeleteBufferDelegate>();
            _size = libraryHandle.GetUnmanagedDelegate<GetSizeDelegate>();
            _toString = libraryHandle.GetUnmanagedDelegate<ToStringDelegate>();

            handle = _newBuffder();
        }
 private static ParquetHandle Create(
     ReadDelegate read,
     CloseDelegate close,
     GetSizeDelegate getSize,
     TellDelegate tell,
     SeekDelegate seek,
     ClosedDelegate closed)
 {
     ExceptionInfo.Check(ManagedRandomAccessFile_Create(read, close, getSize, tell, seek, closed, out var handle));
     return(new ParquetHandle(handle, RandomAccessFile_Free));
 }
Beispiel #4
0
        public unsafe QueryFunctions(LibraryHandle handle)
        {
            Create = handle.GetUnmanagedDelegate <CreateQueryDelegate>();

            Delete = handle.GetUnmanagedDelegate <DeleteQueryDelegate>();

            Execute      = handle.GetUnmanagedDelegate <ExecuteQueryDelegate>();
            DeleteCursor = handle.GetUnmanagedDelegate <DeleteCursorDelegate>();

            SetHints = handle.GetUnmanagedDelegate <SetHintsDelegate>();
            AddOr    = handle.GetUnmanagedDelegate <AddOrDelegate>();

            CursorResult = handle.GetUnmanagedDelegate <CursorResultDelegate>();

            NewBuffer      = handle.GetUnmanagedDelegate <QueryFunctions.NewBufferDelegate>();
            DeleteBuffer   = handle.GetUnmanagedDelegate <QueryFunctions.DeleteBufferDelegate>();
            BufferSize     = handle.GetUnmanagedDelegate <GetSizeDelegate>();
            BufferToString = handle.GetUnmanagedDelegate <ToStringDelegate>();
        }