The ITLargeObject interface
Base class: ITEssential
Manipulates a large object returned by a query. Client value objects that are, in the server, based on large objects, expose an ITLargeObject interface; users creating such client value objects can use the ITLargeObjectManager class, which implements much of the functionality for accessing large objects.
This interface provides the following methods.
Method | Description |
---|---|
const MI_LO_HANDLE *Handle() | Returns the handle of the currently managed large object. |
int Read(char *buf, int cnt) | Reads bytes from the large object at the current position. |
int Write(const char *buf, int cnt) | Writes bytes to the large object at the current position. |
ITInt8 Seek(ITInt8 off, int cntl = 0) | Sets the current position of the large object; cntl is a position like UNIX lseek (0 is absolute position, 1 is relative to current position, and 2 is relative to end of the large object). |
ITBool SetHandle(const MI_LO_HANDLE *handle, int flags=MI_LO_RDWR) | Sets the specified DataBlade
API large
object handle to this large object. The flags parameter is a bit mask
argument with the following values:
|
ITInt8 Size() | Returns the total size of the large object. |
ITBool SetSize(ITInt8) | Sets the total size of the large object. |