tif_predict.h
上传用户:looem2003
上传日期:2014-07-20
资源大小:13733k
文件大小:2k
源码类别:

打印编程

开发平台:

Visual C++

  1. /* $Id: tif_predict.h,v 1.3 2006/03/03 14:10:09 dron Exp $ */
  2. /*
  3.  * Copyright (c) 1995-1997 Sam Leffler
  4.  * Copyright (c) 1995-1997 Silicon Graphics, Inc.
  5.  *
  6.  * Permission to use, copy, modify, distribute, and sell this software and 
  7.  * its documentation for any purpose is hereby granted without fee, provided
  8.  * that (i) the above copyright notices and this permission notice appear in
  9.  * all copies of the software and related documentation, and (ii) the names of
  10.  * Sam Leffler and Silicon Graphics may not be used in any advertising or
  11.  * publicity relating to the software without the specific, prior written
  12.  * permission of Sam Leffler and Silicon Graphics.
  13.  * 
  14.  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
  15.  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
  16.  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  17.  * 
  18.  * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
  19.  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  20.  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  21.  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
  22.  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
  23.  * OF THIS SOFTWARE.
  24.  */
  25. #ifndef _TIFFPREDICT_
  26. #define _TIFFPREDICT_
  27. /*
  28.  * ``Library-private'' Support for the Predictor Tag
  29.  */
  30. /*
  31.  * Codecs that want to support the Predictor tag must place
  32.  * this structure first in their private state block so that
  33.  * the predictor code can cast tif_data to find its state.
  34.  */
  35. typedef struct {
  36. int predictor; /* predictor tag value */
  37. int stride; /* sample stride over data */
  38. tsize_t rowsize; /* tile/strip row size */
  39. TIFFPostMethod pfunc; /* horizontal differencer/accumulator */
  40. TIFFCodeMethod coderow; /* parent codec encode/decode row */
  41. TIFFCodeMethod codestrip; /* parent codec encode/decode strip */
  42. TIFFCodeMethod codetile; /* parent codec encode/decode tile */
  43. TIFFVGetMethod vgetparent; /* super-class method */
  44. TIFFVSetMethod vsetparent; /* super-class method */
  45. TIFFPrintMethod printdir; /* super-class method */
  46. TIFFBoolMethod setupdecode; /* super-class method */
  47. TIFFBoolMethod setupencode; /* super-class method */
  48. } TIFFPredictorState;
  49. #if defined(__cplusplus)
  50. extern "C" {
  51. #endif
  52. extern int TIFFPredictorInit(TIFF*);
  53. extern int TIFFPredictorCleanup(TIFF*);
  54. #if defined(__cplusplus)
  55. }
  56. #endif
  57. #endif /* _TIFFPREDICT_ */
  58. /* vim: set ts=8 sts=8 sw=8 noet: */