ReactOS 0.4.16-dev-2617-g01a0906
tif_dumpmode.c File Reference
#include "tiffiop.h"
Include dependency graph for tif_dumpmode.c:

Go to the source code of this file.

Functions

static int DumpFixupTags (TIFF *tif)
 
static int DumpModeEncode (TIFF *tif, uint8_t *pp, tmsize_t cc, uint16_t s)
 
static int DumpModeDecode (TIFF *tif, uint8_t *buf, tmsize_t cc, uint16_t s)
 
static int DumpModeSeek (TIFF *tif, uint32_t nrows)
 
int TIFFInitDumpMode (TIFF *tif, int scheme)
 

Function Documentation

◆ DumpFixupTags()

static int DumpFixupTags ( TIFF tif)
static

Definition at line 32 of file tif_dumpmode.c.

33{
34 (void)tif;
35 return (1);
36}

Referenced by TIFFInitDumpMode().

◆ DumpModeDecode()

static int DumpModeDecode ( TIFF tif,
uint8_t buf,
tmsize_t  cc,
uint16_t  s 
)
static

Definition at line 73 of file tif_dumpmode.c.

74{
75 static const char module[] = "DumpModeDecode";
76 (void)s;
77 if (tif->tif_rawcc < cc)
78 {
80 "Not enough data for scanline %" PRIu32
81 ", expected a request for at most %" TIFF_SSIZE_FORMAT
82 " bytes, got a request for %" TIFF_SSIZE_FORMAT " bytes",
83 tif->tif_row, tif->tif_rawcc, cc);
84 return (0);
85 }
86 /*
87 * Avoid copy if client has setup raw
88 * data buffer to avoid extra copy.
89 */
90 if (tif->tif_rawcp != buf)
92 tif->tif_rawcp += cc;
93 tif->tif_rawcc -= cc;
94 return (1);
95}
#define PRIu32
Definition: inttypes.h:84
GLdouble s
Definition: gl.h:2039
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
uint32_t cc
Definition: isohybrid.c:75
tmsize_t tif_rawcc
Definition: tiffiop.h:225
uint8_t * tif_rawcp
Definition: tiffiop.h:224
uint32_t tif_row
Definition: tiffiop.h:162
#define TIFF_SSIZE_FORMAT
Definition: tif_config.h:176
void TIFFErrorExtR(TIFF *tif, const char *module, const char *fmt,...)
Definition: tif_error.c:107
void _TIFFmemcpy(void *d, const void *s, tmsize_t c)
Definition: tif_unix.c:355

Referenced by TIFFInitDumpMode().

◆ DumpModeEncode()

static int DumpModeEncode ( TIFF tif,
uint8_t pp,
tmsize_t  cc,
uint16_t  s 
)
static

Definition at line 41 of file tif_dumpmode.c.

42{
43 (void)s;
44 while (cc > 0)
45 {
46 tmsize_t n;
47
48 n = cc;
49 if (tif->tif_rawcc + n > tif->tif_rawdatasize)
50 n = tif->tif_rawdatasize - tif->tif_rawcc;
51
52 assert(n > 0);
53
54 /*
55 * Avoid copy if client has setup raw
56 * data buffer to avoid extra copy.
57 */
58 if (tif->tif_rawcp != pp)
59 _TIFFmemcpy(tif->tif_rawcp, pp, n);
60 tif->tif_rawcp += n;
61 tif->tif_rawcc += n;
62 pp += n;
63 cc -= n;
64 if (tif->tif_rawcc >= tif->tif_rawdatasize && !TIFFFlushData1(tif))
65 return (0);
66 }
67 return (1);
68}
#define assert(_expr)
Definition: assert.h:32
GLdouble n
Definition: glext.h:7729
tmsize_t tif_rawdatasize
Definition: tiffiop.h:221
int TIFFFlushData1(TIFF *tif)
Definition: tif_write.c:931
TIFF_SSIZE_T tmsize_t
Definition: tiffio.h:67

Referenced by TIFFInitDumpMode().

◆ DumpModeSeek()

static int DumpModeSeek ( TIFF tif,
uint32_t  nrows 
)
static

Definition at line 100 of file tif_dumpmode.c.

101{
102 tif->tif_rawcp += nrows * tif->tif_scanlinesize;
103 tif->tif_rawcc -= nrows * tif->tif_scanlinesize;
104 return (1);
105}
tmsize_t tif_scanlinesize
Definition: tiffiop.h:218

Referenced by TIFFInitDumpMode().

◆ TIFFInitDumpMode()

int TIFFInitDumpMode ( TIFF tif,
int  scheme 
)

Definition at line 110 of file tif_dumpmode.c.

111{
112 (void)scheme;
120 tif->tif_seek = DumpModeSeek;
121 return (1);
122}
DWORD scheme
TIFFCodeMethod tif_encodestrip
Definition: tiffiop.h:208
TIFFSeekMethod tif_seek
Definition: tiffiop.h:212
TIFFCodeMethod tif_encodetile
Definition: tiffiop.h:210
TIFFBoolMethod tif_fixuptags
Definition: tiffiop.h:198
TIFFCodeMethod tif_decodestrip
Definition: tiffiop.h:207
TIFFCodeMethod tif_decoderow
Definition: tiffiop.h:205
TIFFCodeMethod tif_encoderow
Definition: tiffiop.h:206
TIFFCodeMethod tif_decodetile
Definition: tiffiop.h:209
static int DumpModeSeek(TIFF *tif, uint32_t nrows)
Definition: tif_dumpmode.c:100
static int DumpModeDecode(TIFF *tif, uint8_t *buf, tmsize_t cc, uint16_t s)
Definition: tif_dumpmode.c:73
static int DumpFixupTags(TIFF *tif)
Definition: tif_dumpmode.c:32
static int DumpModeEncode(TIFF *tif, uint8_t *pp, tmsize_t cc, uint16_t s)
Definition: tif_dumpmode.c:41