MrSID Decode SDK for Raster Reference Manual  9.5.1.4427
lti_colorTransformer.h
Go to the documentation of this file.
1 /* $Id$ */
2 /* //////////////////////////////////////////////////////////////////////////
3 // //
4 // This code is Copyright (c) 2004 LizardTech, Inc, 1008 Western Avenue, //
5 // Suite 200, Seattle, WA 98104. Unauthorized use or distribution //
6 // prohibited. Access to and use of this code is permitted only under //
7 // license from LizardTech, Inc. Portions of the code are protected by //
8 // US and foreign patents and other filings. All Rights Reserved. //
9 // //
11 /* PUBLIC */
12 
13 #ifndef LTI_COLORTRANSFORMER_H
14 #define LTI_COLORTRANSFORMER_H
15 
16 // lt_lib_mrsid_core
17 #include "lti_imageFilter.h"
19 
20 
22 
23 
35 #ifdef SWIG
37 #else
39  <LTIOverrideBackgroundPixel
40  <LTIImageFilter> >
41 #endif
42 {
44 public:
56  const LTIPixel &dstPixel);
57 
58  static bool isSupportedTransform(const LTIPixel &srcPixel,
59  const LTIPixel &dstPixel);
60 
61  // LTIImageStage
62  virtual lt_uint32 getModifications(const LTIScene &scene) const;
63 
64 
65  static LT_STATUS push(LTIImageStage *&pipeline, const LTIPixel &pixelProps);
66 
67  static LT_STATUS transformPixel(LTIPixel &newPixel, const LTIPixel &oldPixel);
68 
69  static LT_STATUS transformBuffer(LTISceneBuffer &dstData, LTISceneBuffer &srcData);
70 
71 protected:
72  LT_STATUS decodeBegin(const LTIPixel &pixelProps,
73  const LTIScene &fullScene);
75  const LTIScene &stripScene);
76  LT_STATUS decodeEnd(void);
77 
78 private:
79  LTIPixel *m_tmpDstPixel;
80  LTIPixel *m_tmpSrcPixel;
81  bool m_isIdentity;
82 };
83 
84 
86 
87 
88 #endif // LTI_COLORTRANSFORMER_H
representation of a scene
Definition: lti_scene.h:64
static bool isSupportedTransform(const LTIPixel &srcPixel, const LTIPixel &dstPixel)
virtual lt_uint32 getModifications(const LTIScene &scene) const
get the modification bitfield for this image
#define LT_END_NAMESPACE(theNameSpace)
compiler does not support namespaces
Definition: lt_define.h:85
change the colorspace of the image
LT_STATUS decodeEnd(void)
finish strip-based read
LT_STATUS decodeBegin(const LTIPixel &pixelProps, const LTIScene &fullScene)
start strip-based read
lt_uint32 LT_STATUS
An integral status code.
Definition: lt_status.h:39
abstract class for implementing an image transform
basic properties of a pixel
Definition: lti_pixel.h:36
LT_STATUS initialize(LTIImageStage *srcImage, const LTIPixel &dstPixel)
initializer
class to hold data passed between image stages
static LT_STATUS transformBuffer(LTISceneBuffer &dstData, LTISceneBuffer &srcData)
static LT_STATUS transformPixel(LTIPixel &newPixel, const LTIPixel &oldPixel)
abstract class for decoding from an image
#define LT_BEGIN_NAMESPACE(theNameSpace)
compiler does not support namespaces
Definition: lt_define.h:84
#define LTI_REFERENCE_COUNTED_BOILERPLATE(classname)
static LT_STATUS push(LTIImageStage *&pipeline, const LTIPixel &pixelProps)
unsigned int lt_uint32
unsigned 32-bit integer
Definition: lt_types.h:54
LT_STATUS decodeStrip(LTISceneBuffer &stripBuffer, const LTIScene &stripScene)
read a strip from the image

LizardTech