IBookmarkable Class Reference

Defines an interface for bookmarking. More...

Inherited by LongDataCacheTable, DSIExtResultSet, and ETRelationalExpr.

List of all members.

Public Member Functions

virtual void GetBookmark (simba_byte *out_bookmark)=0
 Retrieve a bookmark uniquely identifying the current row.
virtual simba_uint16 GetBookmarkSize ()=0
 Retrieve the length in bytes of the bookmark on the table.
virtual bool GotoBookmark (const simba_byte *in_bookmark)=0
 Move the cursor to the row identified by the given bookmark.
virtual ~IBookmarkable ()
 Destructor.

Protected Member Functions

 IBookmarkable ()
 Constructor.

Detailed Description

Defines an interface for bookmarking.


Constructor & Destructor Documentation

virtual ~IBookmarkable (  )  [inline, virtual]

Destructor.

IBookmarkable (  )  [inline, protected]

Constructor.


Member Function Documentation

virtual void GetBookmark ( simba_byte *  out_bookmark  )  [pure virtual]

Retrieve a bookmark uniquely identifying the current row.

The size of the bookmark should always be that of returned by GetBookmarkSize().

Parameters:
out_bookmark The output buffer for the bookmark. The length of the buffer is assumed to be greater than or equal to the bookmark size. (NOT OWN)
Exceptions:
SEInvalidOperationException if bookmarks are not supported.

Implemented in LongDataCacheTable, DSIExtResultSet, ETBinaryLeftRelationalExpr< OperandT, OperandPtrT >, ETJoin, and ETUnaryRelationalExpr.

virtual simba_uint16 GetBookmarkSize (  )  [pure virtual]

Retrieve the length in bytes of the bookmark on the table.

If the class does not support bookmarks, this method should return BOOKMARK_NOT_SUPPORTED.

Returns:
The length in bytes of the bookmark if bookmarks are supported, BOOKMARK_NOT_SUPPORTED otherwise.

Implemented in LongDataCacheTable, DSIExtResultSet, ETBinaryLeftRelationalExpr< OperandT, OperandPtrT >, ETJoin, and ETUnaryRelationalExpr.

virtual bool GotoBookmark ( const simba_byte *  in_bookmark  )  [pure virtual]

Move the cursor to the row identified by the given bookmark.

NOTE: The bookmark should have been obtained through GetBookmark() and the size of the bookmark is of that returned by GetBookmarkSize().

Parameters:
in_bookmark The bookmark uniquely identifying a row in the table.
Exceptions:
SEInvalidOperationException if bookmark is not supported.
DSIException if the given bookmark is invalid.
Returns:
true if successfully moved to the bookmarked row, false otherwise.

Implemented in LongDataCacheTable, DSIExtResultSet, ETBinaryLeftRelationalExpr< OperandT, OperandPtrT >, ETJoin, and ETUnaryRelationalExpr.


The documentation for this class was generated from the following file:

Generated on Wed May 17 14:21:15 2017 for SimbaEngine 10.1.3.1011 by simba