diff options
author | Tom Sepez <tsepez@chromium.org> | 2015-05-11 15:25:39 -0700 |
---|---|---|
committer | Tom Sepez <tsepez@chromium.org> | 2015-05-11 15:25:39 -0700 |
commit | 1ed8a21d5c26a9d78240d7d56850a1a4738d3f9c (patch) | |
tree | 6dc3c6d9007b5be6843c4e9dbf602a99238080b3 /fpdfsdk/include/fpdf_dataavail.h | |
parent | ea7b333c73ea3e1847e79cabdd85853af67d6d6c (diff) | |
download | pdfium-1ed8a21d5c26a9d78240d7d56850a1a4738d3f9c.tar.xz |
Merge to XFA: Create top-level public/ header directory.
Original Review URL: https://codereview.chromium.org/1135913002
BUG=pdfium:154
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1136703003
Diffstat (limited to 'fpdfsdk/include/fpdf_dataavail.h')
-rw-r--r-- | fpdfsdk/include/fpdf_dataavail.h | 223 |
1 files changed, 0 insertions, 223 deletions
diff --git a/fpdfsdk/include/fpdf_dataavail.h b/fpdfsdk/include/fpdf_dataavail.h deleted file mode 100644 index de6cb23bd5..0000000000 --- a/fpdfsdk/include/fpdf_dataavail.h +++ /dev/null @@ -1,223 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef _FPDF_DATAAVAIL_H_ -#define _FPDF_DATAAVAIL_H_ - -#include <stddef.h> // For size_t. - -#include "fpdfview.h" - -/** The result of the process which check linearized PDF. */ -#define FSDK_IS_LINEARIZED 1 -#define FSDK_NOT_LINEARIZED 0 -#define FSDK_UNKNOW_LINEARIZED -1 - - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Interface: FX_FILEAVAIL - * Interface for checking whether the section of the file is available. - */ -typedef struct _FX_FILEAVAIL { - /** - * Version number of the interface. Currently must be 1. - */ - int version; - - /** - * Method: IsDataAvail - * Report whether the specified data section is available. A section is available only if all bytes in the section is available. - * Interface Version: - * 1 - * Implementation Required: - * Yes - * Parameters: - * pThis - Pointer to the interface structure itself. - * offset - The offset of the data section in the file. - * size - The size of the data section - * Return Value: - * true means the specified data section is available. - * Comments: - * Called by Foxit SDK to check whether the data section is ready. - */ - bool (*IsDataAvail)(struct _FX_FILEAVAIL* pThis, size_t offset, size_t size); -} FX_FILEAVAIL; - -typedef void* FPDF_AVAIL; - -/** -* Function: FPDFAvail_Create -* Create a document availability provider. -* -* Parameters: -* file_avail - Pointer to file availability interface to check availability of file data. -* file - Pointer to a file access interface for reading data from file. -* Return value: -* A handle to the document availability provider. NULL for error. -* Comments: -* Application must call FPDFAvail_Destroy when done with the availability provider. -* Notes: -* The method can not support to load a document which consists of dynamic XFA fields now. -*/ -DLLEXPORT FPDF_AVAIL STDCALL FPDFAvail_Create(FX_FILEAVAIL* file_avail, FPDF_FILEACCESS* file); - -/** -* Function: FPDFAvail_Destroy -* Destroy a document availibity provider. -* -* Parameters: -* avail - Handle to document availability provider returned by FPDFAvail_Create -* Return Value: -* None. -*/ -DLLEXPORT void STDCALL FPDFAvail_Destroy(FPDF_AVAIL avail); - -/** - * Interface: FX_DOWNLOADHINTS - * Download hints interface. Used to receive hints for further downloading. - */ -typedef struct _FX_DOWNLOADHINTS { - /** - * Version number of the interface. Currently must be 1. - */ - int version; - - /** - * Method: AddSegment - * Add a section to be downloaded. - * Interface Version: - * 1 - * Implementation Required: - * Yes - * Parameters: - * pThis - Pointer to the interface structure itself. - * offset - The offset of the hint reported to be downloaded. - * size - The size of the hint reported to be downloaded. - * Return Value: - * None. - * Comments: - * Called by Foxit SDK to report some downloading hints for download manager. - * The position and size of section may be not accurate, part of the section might be already available. - * The download manager must deal with that to maximize download efficiency. - */ - void (*AddSegment)(struct _FX_DOWNLOADHINTS* pThis, size_t offset, size_t size); -} FX_DOWNLOADHINTS; - -/** -* Function: FPDFAvail_IsDocAvail -* Check whether the document is ready for loading, if not, get download hints. -* -* Parameters: -* avail - Handle to document availability provider returned by FPDFAvail_Create -* hints - Pointer to a download hints interface, receiving generated hints -* Return value: -* Non-zero for page is fully available, 0 for page not yet available. -* Comments: -* The application should call this function whenever new data arrived, and process all the -* generated download hints if any, until the function returns non-zero value. Then the -* application can call FPDFAvail_GetDocument() to get a document handle. -*/ -DLLEXPORT int STDCALL FPDFAvail_IsDocAvail(FPDF_AVAIL avail, FX_DOWNLOADHINTS* hints); - -/** -* Function: FPDFAvail_GetDocument -* Get document from the availability provider. -* -* Parameters: -* avail - Handle to document availability provider returned by FPDFAvail_Create -* password - Optional password for decrypting the PDF file. -* Return value: -* Handle to the document. -* Comments: -* After FPDFAvail_IsDocAvail() returns TRUE, the application should call this function to -* get the document handle. To close the document, use FPDF_CloseDocument function. -*/ -DLLEXPORT FPDF_DOCUMENT STDCALL FPDFAvail_GetDocument(FPDF_AVAIL avail, - FPDF_BYTESTRING password); - -/** -* Function: FPDFAvail_GetFirstPageNum -* Get page number for the first available page in a linearized PDF -* -* Parameters: -* doc - A document handle returned by FPDFAvail_GetDocument -* Return Value: -* Zero-based index for the first available page. -* Comments: -* For most linearized PDFs, the first available page would be just the first page, however, -* some PDFs might make other page to be the first available page. -* For non-linearized PDF, this function will always return zero. -*/ -DLLEXPORT int STDCALL FPDFAvail_GetFirstPageNum(FPDF_DOCUMENT doc); - -/** -* Function: FPDFAvail_IsPageAvail -* Check whether a page is ready for loading, if not, get download hints. -* -* Parameters: -* avail - Handle to document availability provider returned by FPDFAvail_Create -* page_index - Index number of the page. 0 for the first page. -* hints - Pointer to a download hints interface, receiving generated hints -* Return value: -* Non-zero for page is fully available, 0 for page not yet available. -* Comments: -* This function call be called only after FPDFAvail_GetDocument if called. -* The application should call this function whenever new data arrived, and process all the -* generated download hints if any, until the function returns non-zero value. Then the -* application can perform page loading. -*/ -DLLEXPORT int STDCALL FPDFAvail_IsPageAvail(FPDF_AVAIL avail, int page_index, FX_DOWNLOADHINTS* hints); - -/** -* Function: FPDFAvail_ISFormAvail -* Check whether Form data is ready for init, if not, get download hints. -* -* Parameters: -* avail - Handle to document availability provider returned by FPDFAvail_Create -* hints - Pointer to a download hints interface, receiving generated hints -* Return value: -* Non-zero for Form data is fully available, 0 for Form data not yet available. -* Details: -1 - error, the input parameter not correct, such as hints is null. -* 0 - data not available -* 1 - data available -* 2 - no form data. -* Comments: -* This function call be called only after FPDFAvail_GetDocument if called. -* The application should call this function whenever new data arrived, and process all the -* generated download hints if any, until the function returns non-zero value. Then the -* application can perform page loading. Recommend to call FPDFDOC_InitFormFillEnvironment -* after the function returns non-zero value. -*/ -DLLEXPORT int STDCALL FPDFAvail_IsFormAvail(FPDF_AVAIL avail, FX_DOWNLOADHINTS* hints); - -/** -* Function: FPDFAvail_IsLinearized -* To check whether a document is Linearized PDF file. -* -* Parameters: -* avail - Handle to document availability provider returned by FPDFAvail_Create -* Return value: -* return TRUE means the document is linearized PDF else not. -* FSDK_IS_LINEARIZED is a linearize file. -* FSDK_NOT_LINEARIZED is not a linearize file. -* FSDK_UNKNOW_LINEARIZED don't know whether the file is a linearize file. -* Comments: -* It return TRUE/FALSE as soon as we have first 1K data. If the file's size less than -* 1K,we don't known whether the PDF is a linearized file. -* -*/ -DLLEXPORT FPDF_BOOL STDCALL FPDFAvail_IsLinearized(FPDF_AVAIL avail); - -#ifdef __cplusplus -}; -#endif - -#endif - |