KVExtractInterface
The members of this structure are pointers to the file extraction functions described in File Extraction API Functions. When you call the KVGetExtractInterface() function, this structure assigns pointers to the functions. The structure is defined in kvxtract.h
.
typedef struct tag_KVExtractInterface { KVStructHeader; int (pascal *fpOpenFile) (void *pContext,KVOpenFileArg openArg, void **pFileHandle); int (pascal *fpCloseFile) (void *pFileHandle); int (pascal *fpGetMainFileInfo) (void *pFile, KVMainFileInfo *MainFileInfo); int (pascal *fpGetSubFileInfo) (void *pFile, int index, KVSubFileInfo *subFileInfo); int (pascal *fpGetSubFileMetaData) (void *pFile, KVGetSubFileMetaArg metaArg, KVSubFileMetaData *metaData); int (pascal *fpExtractSubFile) (void *pFile, KVExtractSubFileArg extractArg, KVSubFileExtractInfo *extractInfo); int (pascal *fpFreeStruct) (void *pFile, void *obj); int (pascal *fpOpenSubFile) (void *pFile, KVExtractSubFileArg extractArg, KVInputStream **stream); int (pascal *fpGetExtractInfo)(KVInputStream* stream, KVSubFileExtractInfo* extractInfo); int (pascal *fpGetExtractStatus)(KVInputStream* stream); int (pascal *fpCloseSubFile) (KVInputStream *stream); } KVExtractInterfaceRec, *KVExtractInterface;
Member Descriptions
The member functions are described in File Extraction API Functions.
Discussion
Before you initialize a File Extraction structure, use the KVStructInit
macro to initialize the KVStructHead
structure. This process sets the revision number of the File Extraction API and supports binary compatibility with future releases.