MrSID Decode SDK for Raster Reference Manual  9.5.1.4427
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 
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);
46 
47  // not for public use
49 
58  lt_uint8* getGraphicData(lt_uint32& graphicDataLen) const;
59 
60  // not for public use
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
95  GraphicSegment& operator=(const GraphicSegment&);
96 };
97 
98 
99 }
101 
102 #endif // GraphicSegment_H
LT_STATUS addMetadataLocal(LTIMetadataDatabase &db) const
GraphicSegment(NITFReaderManager &, LTIOStreamInf &, int segmentNumber, lt_int64 headerOffset, lt_int64 headerLength, lt_int64 dataOffset, lt_int64 dataLength)
#define LT_BEGIN_LIZARDTECH_NAMESPACE
compiler does not support namespaces
Definition: lt_define.h:96
Include file for all LizardTech sources.
represents a graphic segment in an existing NITF file
LT_STATUS initialize()
initializer
base class for segment data in an NITF file
Definition: Segment.h:42
lt_uint32 LT_STATUS
An integral status code.
Definition: lt_status.h:39
Abstract definition of a stream.
class for storing metadata associated with an image
#define LT_END_LIZARDTECH_NAMESPACE
compiler does not support namespaces
Definition: lt_define.h:97
lt_uint8 * getGraphicData(lt_uint32 &graphicDataLen) const
returns the graphic segment contents
unsigned int lt_uint32
unsigned 32-bit integer
Definition: lt_types.h:54
unsigned char lt_uint8
unsigned 8-bit integer
Definition: lt_types.h:46

LizardTech