KVInputStream
This structure defines an input stream for filtering. The structure is defined in kvstream.h
.
typedef struct tag_InputStream { void *pInputStreamPrivateData; long lcbFilesize; BOOL (pascal *fpOpen) (struct tag_InputStream *); UINT (pascal *fpRead) (struct tag_InputStream *, BYTE *, UINT); BOOL (pascal *fpSeek) (struct tag_InputStream *, long, int); long (pascal *fpTell) (struct tag_InputStream *); BOOL (pascal *fpClose)(struct tag_InputStream *); } KVInputStream;
Member Descriptions
-
All member functions are equivalent to their counterparts in the ANSI standard library, except
fpOpen()
, which returnsFALSE
on failure. -
If the size of the stream is known, assign that value to
lcbFilesize
. Otherwise, setlcbFilesize
to0
.When the file size is known, KeyView can reduce the number of times it needs to read or seek the underlying stream. This optimization can improve performance for some file types or operations.
NOTE: If the file size is not set to zero or the correct file size, the behavior is undefined.