MrSID Decode SDK for Raster Reference Manual 9.5.4.4709

- Main Page
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

J2KImageReader.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 J2KIMAGEREADER_H
14 #define J2KIMAGEREADER_H
15
16 // lt_lib_mrsid_core
17 #include "lti_imageFilter.h"
18
19 // lt_lib_mrsid_j2k
20 #include "j2k_types.h"
21
22 #if defined(LT_COMPILER_MS)
23 #pragma warning(push,4)
24 #endif
25
26
27 LT_BEGIN_NAMESPACE(LizardTech)
28
29 class LTFileSpec;
30 class LTIOStreamInf;
31 class Jpeg2000ReaderManager;
32 class Jpeg2000ReaderSource;
33 class Jpeg2000ReaderStreamSource;
34 class JPCReader;
35
36 /***!!! ONLY FOR BACKWARDS COMPAT !!!***/
37
38
47 class J2KImageReader : public LTIImageFilter
48 {
49 LTI_REFERENCE_COUNTED_BOILERPLATE(J2KImageReader);
50 public:
82 LT_STATUS initialize(const LTFileSpec& fileSpec,
83 bool isPersistent = true,
84 float maxBpp = -1.0f,
85 bool useWorldFile = true);
86
101 LT_STATUS initialize(LTIOStreamInf &stream,
102 bool isPersistent = true,
103 float maxBpp = -1.0f,
104 bool useWorldFile = true);
109
122 LT_STATUS setParameter_Precision(lt_uint32 precision);
123 lt_uint32 getParameter_Precision() const;
124 lt_uint32 getParameter_MinPrecision() const;
125 lt_uint32 getParameter_MaxPrecision() const;
126 lt_uint32 getParameter_DefaultPrecision() const;
133
144 LT_STATUS setParameter_Layers(lt_uint32 numLayers);
145 lt_uint32 getParameter_Layers() const;
146 lt_uint32 getParameter_MinLayers() const;
147 lt_uint32 getParameter_MaxLayers() const;
148 lt_uint32 getParameter_DefaultLayers() const;
161 void getParameter_TileSize(int& width, int& height) const;
162
174 void getParameter_Precincts(const int*& widths,
175 const int*& heights,
176 int& numPrecincts) const;
177
185 J2KProgressionOrder getParameter_ProgressionOrder() const;
186
195 void getParameter_CodeblockSize(int& width, int& height) const;
196
207 bool getParameter_Wavelet97() const;
208
217 bool getParameter_UsingYCbCr() const;
218
228 lt_uint8 getNumLevels() const;
229
241 LT_STATUS readMetadataBox(const lt_uint8* uuid, LTIOStreamInf& stream);
242
243 // for LizardTech internal use only
244 LT_STATUS writeProfile(const LTFileSpec& file) const;
245
246 // for LizardTech internal use only
247 Jpeg2000ReaderSource& getReaderSouce() const;
248
249 // LTIImageStage
250 virtual lt_int64 getEncodingCost(const LTIScene& scene) const;
251 virtual lt_uint32 getModifications(const LTIScene &scene) const;
252
253 protected:
254
255 private:
256 LT_STATUS privateInit(bool isPersistent,
257 float maxBpp,
258 bool useWorldFile);
259
260 Jpeg2000ReaderManager* m_manager;
261 Jpeg2000ReaderStreamSource* m_source;
262 JPCReader* m_reader;
263 };
264
265
266 LT_END_NAMESPACE(LizardTech)
267
268 #if defined(LT_COMPILER_MS)
269 #pragma warning(pop)
270 #endif
271
272 #endif // J2KIMAGEREADER_H

LizardTech