fpdfavail.h
Go to the documentation of this file.
00001 
00020 #ifndef _FPDFAVAIL_H_
00021 #define _FPDFAVAIL_H_
00022 #include "fpdfview.h"
00023 
00024 
00025 #ifdef _WIN32
00026 
00027 #define DLLEXPORT __declspec( dllexport )
00028 #define STDCALL __stdcall
00029 #define CDECL   _cdecl
00030 #else
00031 #define DLLEXPORT
00032 #define STDCALL
00033 #define CDECL
00034 #endif
00035 
00036 #ifdef __cplusplus
00037 extern "C" {
00038 #endif
00039 
00040 
00046 #define FSDK_IS_LINEARIZED              1
00047 
00048 #define FSDK_NOT_LINEARIZED             0
00049 
00050 #define FSDK_UNKNOW_LINEARIZED  -1  
00051 
00055 typedef struct _FX_FILEAVAIL {
00056 
00060         int version;
00061 
00070         bool (CDECL *IsDataAvail)(struct _FX_FILEAVAIL* pThis, size_t offset, size_t size);
00071 } FX_FILEAVAIL;
00072 
00073 typedef void* FPDF_AVAIL;
00074 
00082 DLLEXPORT FPDF_AVAIL STDCALL FPDFAvail_Create(FX_FILEAVAIL* file_avail, FPDF_FILEACCESS* file);
00083 
00089 DLLEXPORT void STDCALL FPDFAvail_Destroy(FPDF_AVAIL avail);
00090 
00094 typedef struct _FX_DOWNLOADHINTS {
00095 
00099         int version;
00100         
00111         void (CDECL *AddSegment)(struct _FX_DOWNLOADHINTS* pThis, size_t offset, size_t size);
00112 } FX_DOWNLOADHINTS;
00113 
00123 DLLEXPORT int STDCALL FPDFAvail_IsDocAvail(FPDF_AVAIL avail, FX_DOWNLOADHINTS* hints);
00124 
00132 DLLEXPORT FPDF_DOCUMENT STDCALL FPDFAvail_GetDocument(FPDF_AVAIL avail);
00133 
00134 
00143 DLLEXPORT int STDCALL FPDFAvail_GetFirstPageNum(FPDF_DOCUMENT document);
00144         
00156 DLLEXPORT int STDCALL FPDFAvail_IsPageAvail(FPDF_AVAIL avail, int page_index, FX_DOWNLOADHINTS* hints);
00157 
00158 
00174 DLLEXPORT int STDCALL FPDFAvail_IsFormAvail(FPDF_AVAIL avail, FX_DOWNLOADHINTS* hints);
00175 
00186 DLLEXPORT FPDF_BOOL STDCALL FPDFAvail_IsLinearized(FPDF_AVAIL avail);
00187 
00188 #ifdef __cplusplus
00189 };
00190 #endif
00191 
00192 
00193 #endif
00194 
00195