MrSID Decode SDK for Raster Reference Manual 9.5.4.4709

- Main Page
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

lti_imageReader.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_READER_H
14 #define LTI_IMAGE_READER_H
15
16 // lt_lib_mrsid_core
17 #include "lti_imageStage.h"
18 #include "lti_imageStageOverrides.h"
19
20
21 LT_BEGIN_NAMESPACE(LizardTech)
22
23
30 #ifdef SWIG
31 class LTIImageReader : public LTIImageStage
32 #else
33 class LTIImageReader : public LTIOverrideDimensions
34 <LTIOverridePixelProps
35 <LTIOverrideBackgroundPixel
36 <LTIOverrideGeoCoord
37 <LTIOverrideMagnification
38 <LTIOverrideIsSelective
39 <LTIOverrideStripHeight
40 <LTIOverrideDelegates
41 <LTIOverridePixelLookupTables
42 <LTIOverrideMetadata
43 <LTIImageStage> > > > > > > > > >
44 #endif
45 {
46 LT_DISALLOW_COPY_CONSTRUCTOR(LTIImageReader);
47 public:
48 // LTIImage
49 LT_STATUS getDimsAtMag(double mag,
50 lt_uint32& width,
51 lt_uint32& height) const;
52
53 lt_uint32 getModifications(const LTIScene &scene) const;
54 LT_STATUS getMetadataBlob(const char *type, LTIOStreamInf *&stream) const;
55
56
57 // LTIImageStage
58 LTIMaskSource *getMask() const;
59 bool getPipelineInfo(LTIPipelineInfo info) const;
60
61 lt_int64 getEncodingCost(const LTIScene& scene) const;
62 bool getReaderScene(const LTIScene &decodeScene,
63 LTIScene &readerScene) const;
64
65 // override too support ImageReaders that don't support band selection
66 LT_STATUS readBegin(const LTIPixel &pixelProps, const LTIScene &fullScene);
67 LT_STATUS readStrip(LTISceneBuffer &buffer, const LTIScene &stripScene);
68 LT_STATUS readEnd(void);
69
70 protected:
71 LTIImageReader(bool supportBandSelection);
72
73 LT_STATUS init(const LTIImage *image = NULL);
74
75
76 LT_STATUS loadMetadataIntoObjects(const LTIMetadataDatabase &fileMetadata,
77 LTIPixel &pixelProps,
78 bool updatePixelProps,
79 bool updateGeoCoord);
80 virtual const char *getSourceName(void) const = 0;
81
82 protected:
83 const bool m_supportBandSelection;
84 };
85
86
87 LT_END_NAMESPACE(LizardTech)
88
89
90 #endif // LTI_IMAGE_READER_H

LizardTech