Home | History | Annotate | Download | only in include
      1 // Copyright 2014 PDFium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
      6 
      7 #ifndef _FPDFSDK_DEFINE_H
      8 #define _FPDFSDK_DEFINE_H
      9 
     10 #ifdef _WIN32
     11 #include <tchar.h>
     12 #include <math.h>
     13 #endif
     14 
     15 //#define API5
     16 #define API6
     17 #define  _FPDFAPI_ASYNC_PARSING_
     18 #define _FXSDK_OPENSOURCE_
     19 
     20 #ifdef _FPDFEMB_WCE_
     21 	#include "../../core/include/fpdfapi/fpdfapi.h"
     22 	#include "../../core/include/fpdfapi/fpdf_parser.h"
     23 	#include "../../core/include/fpdfapi/fpdf_module.h"
     24 	#include "../../core/include/fpdfapi/fpdf_render.h"
     25 	#include "../../core/include/fpdfapi/fpdf_pageobj.h"
     26 	#include "../../core/include/fpdfapi/fpdf_serial.h"
     27 
     28 	#include "../../core/include/fpdftext/fpdf_text.h"
     29 
     30 	#include "../../core/include/fxge/fx_ge_win32.h"
     31 	#include "../../core/include/fxge/fx_ge.h"
     32 
     33 	#include "../../core/include/fxcodec/fx_codec.h"
     34 
     35 	#include "../../core/include/fpdfdoc/fpdf_doc.h"
     36 	#include "../../core/include/fpdfdoc/fpdf_vt.h"
     37 
     38 	#include "../../core/include/fxcrt/fx_xml.h"
     39 	#include "../../core/include/fxcrt/fx_crypt.h"
     40 
     41 #else
     42 	#ifdef API6
     43 		#include "../../core/include/fpdfapi/fpdf_parser.h"
     44 		#include "../../core/include/fpdfapi/fpdfapi.h"
     45 		#include "../../core/include/fpdfapi/fpdf_parser.h"
     46 		#include "../../core/include/fpdfapi/fpdf_module.h"
     47 		#include "../../core/include/fpdfapi/fpdf_render.h"
     48 		#include "../../core/include/fpdfapi/fpdf_pageobj.h"
     49 		#include "../../core/include/fpdfapi/fpdf_serial.h"
     50 
     51 		#include "../../core/include/fpdftext/fpdf_text.h"
     52 
     53 		#include "../../core/include/fxge/fx_ge_win32.h"
     54 		#include "../../core/include/fxge/fx_ge.h"
     55 
     56 		#include "../../core/include/fxcodec/fx_codec.h"
     57 
     58 		#include "../../core/include/fpdfdoc/fpdf_doc.h"
     59 		#include "../../core/include/fpdfdoc/fpdf_vt.h"
     60 
     61 		#include "../../core/include/fxcrt/fx_xml.h"
     62 	//	#include "../../core/include/fdrm/fx_crypt.h"
     63 		#ifdef _LICENSED_BUILD_
     64 			#include "../../cryptopp/Cryptlib.h"
     65 		#endif
     66 	#endif
     67 #endif
     68 
     69 
     70 #ifndef FX_GetAValue
     71 /** @brief It retrieves an intensity value for the alpha component of a #FX_ARGB value. */
     72 #define FX_GetAValue(argb)			((argb & 0xFF000000) >> 24)
     73 #endif
     74 
     75 #ifndef FX_GetRValue
     76 /** @brief It retrieves an intensity value for the red component of a #FX_ARGB value. */
     77 #define FX_GetRValue(argb)			((argb & 0x00FF0000) >> 16)
     78 #endif
     79 
     80 #ifndef FX_GetGValue
     81 /** @brief It retrieves an intensity value for the green component of a #FX_ARGB value. */
     82 #define FX_GetGValue(argb)			((argb & 0x0000FF00) >> 8)
     83 #endif
     84 
     85 #ifndef FX_GetBValue
     86 /** @brief It retrieves an intensity value for the blue component of a #FX_ARGB value. */
     87 #define FX_GetBValue(argb)			(argb & 0x000000FF)
     88 #endif
     89 
     90 #ifndef FX_ARGBTOCOLORREF
     91 /** @brief Convert a #FX_ARGB to a #FX_COLORREF. */
     92 #define FX_ARGBTOCOLORREF(argb)		((((FX_DWORD)argb & 0x00FF0000) >> 16)|((FX_DWORD)argb & 0x0000FF00)|(((FX_DWORD)argb & 0x000000FF) << 16))
     93 #endif
     94 
     95 #ifndef FX_COLORREFTOARGB
     96 /** @brief Convert a #FX_COLORREF to a #FX_ARGB. */
     97 #define FX_COLORREFTOARGB(rgb)		((FX_DWORD)0xFF000000|(((FX_DWORD)rgb & 0x000000FF) << 16)|((FX_DWORD)rgb & 0x0000FF00)|(((FX_DWORD)rgb & 0x00FF0000) >> 16))
     98 #endif
     99 
    100 typedef unsigned int FX_UINT;
    101 
    102 #include "fpdfview.h"
    103 
    104 class CPDF_CustomAccess : public IFX_FileRead, public CFX_Object
    105 {
    106 public:
    107 	CPDF_CustomAccess(FPDF_FILEACCESS* pFileAccess);
    108 	~CPDF_CustomAccess() {}
    109 
    110 	virtual CFX_ByteString GetFullPath() { return ""; }
    111 	virtual FX_FILESIZE	GetSize() { return m_FileAccess.m_FileLen; }
    112 
    113 	virtual FX_BOOL		GetByte(FX_DWORD pos, FX_BYTE& ch);
    114 	virtual FX_BOOL		GetBlock(FX_DWORD pos, FX_LPBYTE pBuf, FX_DWORD size);
    115 	virtual void		Release() { delete this; }
    116 
    117 	virtual FX_BOOL		ReadBlock(void* buffer, FX_FILESIZE offset, size_t size);
    118 
    119 	FPDF_FILEACCESS		m_FileAccess;
    120 	FX_BYTE				m_Buffer[512];
    121 	FX_DWORD			m_BufferOffset;
    122 };
    123 
    124 void		FSDK_SetSandBoxPolicy(FPDF_DWORD policy, FPDF_BOOL enable);
    125 FPDF_BOOL	FSDK_IsSandBoxPolicyEnabled(FPDF_DWORD policy);
    126 
    127 
    128 #endif//_FPDFSDK_DEFINE_H
    129