MrSID Decode SDK for Raster Reference Manual  9.5.1.4427
ReservedSegment.h
Go to the documentation of this file.
00001 /* //////////////////////////////////////////////////////////////////////////
00002 //                                                                         //
00003 // This code is Copyright (c) 2010 LizardTech, Inc, 1008 Western Avenue,   //
00004 // Suite 200, Seattle, WA 98104.  Unauthorized use or distribution         //
00005 // prohibited.  Access to and use of this code is permitted only under     //
00006 // license from LizardTech, Inc.  Portions of the code are protected by    //
00007 // US and foreign patents and other filings. All Rights Reserved.          //
00008 //                                                                         //
00010 /* PUBLIC */
00011 
00012 #ifndef ReservedSegment_H
00013 #define ReservedSegment_H
00014 
00015 // lt_lib_base
00016 #include "lt_base.h"
00017 
00018 // local
00019 #include "Segment.h"
00020 
00021 LT_BEGIN_LIZARDTECH_NAMESPACE
00022 class LTIOStreamInf;
00023 
00024 namespace Nitf {
00025 
00026 
00034 class ReservedSegment : public Segment
00035 {
00036 public:
00037    // not for public use -- to get a DataSegment, use NITFReaderManager::getResSegment
00038    ReservedSegment(NITFReaderManager&, LTIOStreamInf&,
00039               int segmentNumber,
00040               lt_int64 headerOffset, lt_int64 headerLength,
00041               lt_int64 dataOffset, lt_int64 dataLength);
00042 
00043    // not for public use
00044    ~ReservedSegment();
00045 
00046    // not for public use
00047    LT_STATUS initialize();
00048 
00049    // not for public use
00050    LT_STATUS addMetadataLocal(LTIMetadataDatabase& db) const;
00051 
00052 private:
00053    LT_STATUS readHeader();
00054    LT_STATUS readData();
00055 
00056    char* m_RESID;    // 25
00057    char* m_RESVER;   // 2
00058    int m_RESSHL;
00059    lt_uint8* m_RESSHF;
00060 
00061    // nope
00062    ReservedSegment(ReservedSegment&);
00063    ReservedSegment& operator=(const ReservedSegment&);
00064 };
00065 
00066 
00067 }
00068 LT_END_LIZARDTECH_NAMESPACE
00069 
00070 #endif // ReservedSegment_H