tif_jpeg_12.c 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #include "tiffiop.h"
  2. #if defined(JPEG_DUAL_MODE_8_12)
  3. # define TIFFInitJPEG TIFFInitJPEG_12
  4. int
  5. TIFFInitJPEG_12(TIFF* tif, int scheme);
  6. # include LIBJPEG_12_PATH
  7. # include "tif_jpeg.c"
  8. int TIFFReInitJPEG_12( TIFF *tif, int scheme, int is_encode )
  9. {
  10. JPEGState* sp;
  11. assert(scheme == COMPRESSION_JPEG);
  12. sp = JState(tif);
  13. sp->tif = tif; /* back link */
  14. /*
  15. * Override parent get/set field methods.
  16. */
  17. tif->tif_tagmethods.vgetfield = JPEGVGetField; /* hook for codec tags */
  18. tif->tif_tagmethods.vsetfield = JPEGVSetField; /* hook for codec tags */
  19. tif->tif_tagmethods.printdir = JPEGPrintDir; /* hook for codec tags */
  20. /*
  21. * Install codec methods.
  22. */
  23. tif->tif_fixuptags = JPEGFixupTags;
  24. tif->tif_setupdecode = JPEGSetupDecode;
  25. tif->tif_predecode = JPEGPreDecode;
  26. tif->tif_decoderow = JPEGDecode;
  27. tif->tif_decodestrip = JPEGDecode;
  28. tif->tif_decodetile = JPEGDecode;
  29. tif->tif_setupencode = JPEGSetupEncode;
  30. tif->tif_preencode = JPEGPreEncode;
  31. tif->tif_postencode = JPEGPostEncode;
  32. tif->tif_encoderow = JPEGEncode;
  33. tif->tif_encodestrip = JPEGEncode;
  34. tif->tif_encodetile = JPEGEncode;
  35. tif->tif_cleanup = JPEGCleanup;
  36. tif->tif_defstripsize = JPEGDefaultStripSize;
  37. tif->tif_deftilesize = JPEGDefaultTileSize;
  38. tif->tif_flags |= TIFF_NOBITREV; /* no bit reversal, please */
  39. sp->cinfo_initialized = FALSE;
  40. if( is_encode )
  41. return JPEGSetupEncode(tif);
  42. else
  43. return JPEGSetupDecode(tif);
  44. }
  45. #endif /* defined(JPEG_DUAL_MODE_8_12) */
  46. /*
  47. * Local Variables:
  48. * mode: c
  49. * c-basic-offset: 8
  50. * fill-column: 78
  51. * End:
  52. */