diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2014-06-18 11:37:05 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2014-06-18 11:37:05 +0000 |
commit | b1882a1ef3ebf5ab4a1dc8010655c8d5def03b61 (patch) | |
tree | cb9161a5ae062e1fb48641a2a71f8dff00337ecb /Build/source/libs/xpdf/xpdf-3.04/fofi/FoFiBase.h | |
parent | 384d961843d060a692d21c4ea38f266171650f91 (diff) |
xpdf 3.04
git-svn-id: svn://tug.org/texlive/trunk@34281 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/xpdf/xpdf-3.04/fofi/FoFiBase.h')
-rw-r--r-- | Build/source/libs/xpdf/xpdf-3.04/fofi/FoFiBase.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/Build/source/libs/xpdf/xpdf-3.04/fofi/FoFiBase.h b/Build/source/libs/xpdf/xpdf-3.04/fofi/FoFiBase.h new file mode 100644 index 00000000000..c9f93ebacda --- /dev/null +++ b/Build/source/libs/xpdf/xpdf-3.04/fofi/FoFiBase.h @@ -0,0 +1,58 @@ +//======================================================================== +// +// FoFiBase.h +// +// Copyright 1999-2003 Glyph & Cog, LLC +// +//======================================================================== + +#ifndef FOFIBASE_H +#define FOFIBASE_H + +#include <aconf.h> + +#ifdef USE_GCC_PRAGMAS +#pragma interface +#endif + +#include "gtypes.h" + +//------------------------------------------------------------------------ + +typedef void (*FoFiOutputFunc)(void *stream, const char *data, int len); + +//------------------------------------------------------------------------ +// FoFiBase +//------------------------------------------------------------------------ + +class FoFiBase { +public: + + virtual ~FoFiBase(); + +protected: + + FoFiBase(char *fileA, int lenA, GBool freeFileDataA); + static char *readFile(char *fileName, int *fileLen); + + // S = signed / U = unsigned + // 8/16/32/Var = word length, in bytes + // BE = big endian + int getS8(int pos, GBool *ok); + int getU8(int pos, GBool *ok); + int getS16BE(int pos, GBool *ok); + int getU16BE(int pos, GBool *ok); + int getS32BE(int pos, GBool *ok); + Guint getU32BE(int pos, GBool *ok); + Guint getU32LE(int pos, GBool *ok); + Guint getUVarBE(int pos, int size, GBool *ok); + + GBool checkRegion(int pos, int size); + + Guchar *fileData; + Guchar *file; + int len; + GBool freeFileData; +}; + +#endif |