BitSharp.Esent.EsentBlockTxesStorage.TryGetBlockIndex C# (CSharp) Method

TryGetBlockIndex() private method

private TryGetBlockIndex ( BitSharp.Esent.EsentBlockTxesCursor cursor, UInt256 blockHash, int &blockIndex ) : bool
cursor BitSharp.Esent.EsentBlockTxesCursor
blockHash UInt256
blockIndex int
return bool
        private bool TryGetBlockIndex(EsentBlockTxesCursor cursor, UInt256 blockHash, out int blockIndex)
        {
            Api.JetSetCurrentIndex(cursor.jetSession, cursor.blockIndexTableId, "IX_BlockHash");
            Api.MakeKey(cursor.jetSession, cursor.blockIndexTableId, DbEncoder.EncodeUInt256(blockHash), MakeKeyGrbit.NewKey);

            if (Api.TrySeek(cursor.jetSession, cursor.blockIndexTableId, SeekGrbit.SeekEQ))
            {
                blockIndex = Api.RetrieveColumnAsInt32(cursor.jetSession, cursor.blockIndexTableId, cursor.blockIndexBlockIndexColumnId).Value;
                return true;
            }
            else
            {
                blockIndex = -1;
                return false;
            }
        }