Changeset 100

Show
Ignore:
Timestamp:
01/22/99 12:39:26 (9 years ago)
Author:
warmerda
Message:

Added HFABand, and other stuff

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/frmts/hfa/hfa_p.h

    r65 r100  
    22 * $Id$ 
    33 * 
    4  * Name:     hfa_p.h 
    54 * Project:  Erdas Imagine (.img) Translator 
    65 * Purpose:  Private class declarations for the HFA classes used to read 
     
    3231 * 
    3332 * $Log$ 
     33 * Revision 1.3  1999/01/22 17:39:26  warmerda 
     34 * Added HFABand, and other stuff 
     35 * 
    3436 * Revision 1.2  1999/01/04 22:52:47  warmerda 
    3537 * field access working 
     
    5456class HFAType; 
    5557class HFADictionary; 
     58class HFABand; 
    5659 
    5760/************************************************************************/ 
     
    7780    int         nXSize; 
    7881    int         nYSize; 
     82 
    7983    int         nBands; 
    80  
    81     int         nDataType;      /* one of Eimg_Layer pixelType values, EPT_* */ 
     84    HFABand     **papoBand; 
     85 
     86    void        *pMapInfo; 
     87    void        *pDatum; 
     88    void        *pProParameters; 
    8289 
    8390} HFAInfo_t; 
     
    8693 
    8794#include "hfa.h" 
     95 
     96/************************************************************************/ 
     97/*                               HFABand                                */ 
     98/************************************************************************/ 
     99 
     100class HFABand 
     101{ 
     102    int         nBlocks; 
     103    int         *panBlockStart; 
     104    int         *panBlockSize; 
     105    int         *panBlockFlag; 
     106 
     107#define BFLG_VALID      0x01     
     108#define BFLG_COMPRESSED 0x02 
     109 
     110    int         nPCTColors; 
     111    double      *apadfPCT[3]; 
     112 
     113    CPLErr      LoadBlockInfo(); 
     114     
     115  public: 
     116                HFABand( HFAInfo_t *, HFAEntry * ); 
     117                ~HFABand(); 
     118                 
     119    HFAInfo_t   *psInfo; 
     120                          
     121    int         nDataType; 
     122    HFAEntry    *poNode; 
     123     
     124    int         nBlockXSize; 
     125    int         nBlockYSize; 
     126 
     127    int         nWidth; 
     128    int         nHeight; 
     129 
     130    int         nBlocksPerRow; 
     131    int         nBlocksPerColumn; 
     132 
     133    CPLErr      GetRasterBlock( int nXBlock, int nYBlock, void * pData ); 
     134 
     135    CPLErr      GetPCT( int *, double **, double **, double ** ); 
     136}; 
     137 
    88138 
    89139/************************************************************************/ 
     
    213263    void        Dump( FILE * ); 
    214264 
     265    int         GetInstBytes( GByte * pabyData ); 
    215266    void        *ExtractInstValue( const char * pszField, 
    216267                               GByte *pabyData, int nDataOffset, int nDataSize,