MrSID Decode SDK for Raster Reference Manual 9.5.4.4709

- Main Page
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

GraphicSegment.h
Go to the documentation of this file.
1 /* //////////////////////////////////////////////////////////////////////////
2 // //
3 // This code is Copyright (c) 2010 LizardTech, Inc, 1008 Western Avenue, //
4 // Suite 200, Seattle, WA 98104. Unauthorized use or distribution //
5 // prohibited. Access to and use of this code is permitted only under //
6 // license from LizardTech, Inc. Portions of the code are protected by //
7 // US and foreign patents and other filings. All Rights Reserved. //
8 // //
10 /* PUBLIC */
11
12 #ifndef GraphicSegment_H
13 #define GraphicSegment_H
14
15 // lt_lib_base
16 #include "lt_base.h"
17
18 // local
19 #include "Segment.h"
20
21 LT_BEGIN_LIZARDTECH_NAMESPACE
22 class LTIOStreamInf;
23
24 namespace Nitf {
25
26
37 class GraphicSegment : public Segment
38 {
39 public:
40 // not for public use -- to get a DataSegment, use NITFReaderManager::getGraphicSegment
41 GraphicSegment(NITFReaderManager&, LTIOStreamInf&,
42 int segmentNumber,
43 lt_int64 headerOffset, lt_int64 headerLength,
44 lt_int64 dataOffset, lt_int64 dataLength);
45 ~GraphicSegment();
46
47 // not for public use
48 LT_STATUS initialize();
49
58 lt_uint8* getGraphicData(lt_uint32& graphicDataLen) const;
59
60 // not for public use
61 LT_STATUS addMetadataLocal(LTIMetadataDatabase& db) const;
62
63 private:
64 LT_STATUS readHeader();
65 LT_STATUS readData();
66
67 char* m_SID; // 10
68 char* m_SNAME; // 20
69 char* m_STYPE; // 1
70 char* m_SSTRUCT; // 13
71 int m_NLIPS;
72 int m_NPIXPL;
73 int m_NWDTH;
74 int m_NBPP;
75
76 int m_SDLVL;
77 int m_SALVL;
78 int m_SLOCr;
79 int m_SLOCc;
80 char* m_SBND1; // 10
81 char* m_SCOLOR; // 1
82 char* m_SBND2; // 10
83 char* m_SRES2; // 2
84
85 int m_SNUM;
86 int m_SROT;
87 int m_NELUT;
88 lt_uint8* m_DLUT;
89
90 lt_uint8* m_graphicData;
91 lt_uint32 m_graphicDataLen;
92
93 // nope
94 GraphicSegment(GraphicSegment&);
95 GraphicSegment& operator=(const GraphicSegment&);
96 };
97
98
99 }
100 LT_END_LIZARDTECH_NAMESPACE
101
102 #endif // GraphicSegment_H

LizardTech