Line data Source code
1 : /****************************************************************************** 2 : * 3 : * Purpose: PCIDSK PCT segment interface class. 4 : * 5 : ****************************************************************************** 6 : * Copyright (c) 2009 7 : * PCI Geomatics, 90 Allstate Parkway, Markham, Ontario, Canada. 8 : * 9 : * SPDX-License-Identifier: MIT 10 : ****************************************************************************/ 11 : #ifndef INCLUDE_PCIDSK_PCT_H 12 : #define INCLUDE_PCIDSK_PCT_H 13 : 14 : #include <string> 15 : #include <vector> 16 : 17 : namespace PCIDSK 18 : { 19 : /************************************************************************/ 20 : /* PCIDSK_PCT */ 21 : /************************************************************************/ 22 : 23 : //! Interface to PCIDSK pseudo-color segment. 24 : 25 : class PCIDSK_DLL PCIDSK_PCT 26 : { 27 : public: 28 2 : virtual ~PCIDSK_PCT() {} 29 : 30 : /** 31 : \brief Read a PCT Segment (SEG_PCT). 32 : 33 : @param pct Pseudo-Color Table buffer (768 entries) into which the 34 : pseudo-color table is read. It consists of the red gun output 35 : values (pct[0-255]), followed by the green gun output values (pct[256-511]) 36 : and ends with the blue gun output values (pct[512-767]). 37 : 38 : */ 39 : virtual void ReadPCT( unsigned char pct[768] ) = 0; 40 : 41 : /** 42 : \brief Write a PCT Segment. 43 : 44 : @param pct Pseudo-Color Table buffer (768 entries) from which the 45 : pseudo-color table is written. It consists of the red gun output 46 : values (pct[0-255]), followed by the green gun output values (pct[256-511]) 47 : and ends with the blue gun output values (pct[512-767]). 48 : 49 : */ 50 : virtual void WritePCT( unsigned char pct[768] ) = 0; 51 : }; 52 : } // end namespace PCIDSK 53 : 54 : #endif // INCLUDE_PCIDSK_PCT_H