MrSID Decode SDK for Raster Reference Manual  9.0.0.3864
lti_image.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_IMAGE_H
14 #define LTI_IMAGE_H
15 
16 // lt_lib_mrsid_core
17 #include "lti_types.h"
19 
20 
21 LT_BEGIN_NAMESPACE(LizardTech)
22 
23 
33 {
35 public:
43  virtual lt_uint32 getWidth() const = 0;
44 
52  virtual lt_uint32 getHeight() const = 0;
53 
65  virtual LT_STATUS getDimsAtMag(double mag,
66  lt_uint32 &width,
67  lt_uint32 &height) const = 0;
68 
79  lt_uint16 getNumBands() const;
80 
90  LTIColorSpace getColorSpace() const;
91 
102  LTIDataType getDataType() const;
103 
112  virtual const LTIPixel& getPixelProps() const = 0;
113 
123  virtual const LTIPixel* getBackgroundPixel() const = 0;
124 
134  virtual const LTIPixel* getNoDataPixel() const = 0;
135 
145  virtual const LTIPixelLookupTable* getPixelLookupTable() const = 0;
146 
155  virtual const LTIPixel &getMinDynamicRange() const = 0;
156 
165  virtual const LTIPixel &getMaxDynamicRange() const = 0;
166 
175  bool isNaturalDynamicRange() const;
187  virtual const LTIGeoCoord& getGeoCoord() const = 0;
188 
197  virtual bool isGeoCoordImplicit() const = 0;
198 
207  virtual const LTIMetadataDatabase &getMetadata() const = 0;
208 
219  virtual double getMinMagnification() const = 0;
220 
231  virtual double getMaxMagnification() const = 0;
232 
244  virtual bool isSelective() const = 0;
245 
255  virtual lt_uint32 getModifications(const LTIScene &scene) const = 0;
256 
272  lt_int64 getNominalImageSizeWithoutAlpha() const;
273 
289  lt_int64 getNominalImageSizeWithAlpha() const;
290 
300  void getGeoPoint(LTIPosition position, double& x, double& y) const;
301 
314  LTIPixel* createBackgroundPixel() const;
315 };
316 
317 LT_END_NAMESPACE(LizardTech)
318 
319 #endif // LTI_IMAGE_H
representation of a scene
Definition: lti_scene.h:64
LTIReferenceCountedObject is a base class for implementing reference counting.
LTIDataType
datatypes
Definition: lti_types.h:105
#define LT_END_NAMESPACE(theNameSpace)
compiler does not support namespaces
Definition: lt_define.h:85
#define LTI_REFERENCE_COUNTED_BOILERPLATE_BASE(classname)
Macros for defining boilerplate parts of derived LTIReferenceCountedObject classes.
represents a geographic coordinate
Definition: lti_geoCoord.h:32
color lookup table
lt_uint32 LT_STATUS
An integral status code.
Definition: lt_status.h:39
class for storing metadata associated with an image
basic properties of a pixel
Definition: lti_pixel.h:36
unsigned short lt_uint16
unsigned 16-bit integer
Definition: lt_types.h:50
LTIColorSpace
colorspaces
Definition: lti_types.h:38
abstract class representing an image
Definition: lti_image.h:32
This file contains a number of enums, typedefs, etc, that are used throughout the MrSID SDK...
#define LT_BEGIN_NAMESPACE(theNameSpace)
compiler does not support namespaces
Definition: lt_define.h:84
LTIPosition
well-known points
Definition: lti_types.h:132
unsigned int lt_uint32
unsigned 32-bit integer
Definition: lt_types.h:54

LizardTech