MrSID Decode SDK for Raster Reference Manual  9.1.0.4045
TextSegment.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 TextSegment_H
13 #define TextSegment_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 class TextSegmentMetadata;
27 
28 
36 class TextSegment : public Segment
37 {
38 public:
39  // not for public use -- to get a DataSegment, use NITFReaderManager::getTextSegment
40  TextSegment(NITFReaderManager&, LTIOStreamInf&,
41  int segmentNumber,
42  lt_int64 headerOffset, lt_int64 headerLength,
43  lt_int64 dataOffset, lt_int64 dataLength);
44 
45  // not for public use
46  ~TextSegment();
47 
48  // not for public use
50 
58  lt_uint8* getTextData() const;
59 
68 
69  // not for public use
71 
72 private:
73  LT_STATUS readHeader();
74  LT_STATUS readData();
75 
76  TextSegmentMetadata* m_textMetadata;
77 
78  char* m_TXTALVL; // 3
79  char* m_TXTFMT; // 3
80 
81  lt_uint8* m_textData;
82  lt_uint32 m_textDataLen;
83 
84  // nope
86  TextSegment& operator=(const TextSegment&);
87 };
88 
89 
90 }
92 
93 #endif // TextSegment_H

LizardTech