1 /* 2 * 3 * Copyright (C) 1996-2011, OFFIS e.V. 4 * All rights reserved. See COPYRIGHT file for details. 5 * 6 * This software and supporting documentation were developed by 7 * 8 * OFFIS e.V. 9 * R&D Division Health 10 * Escherweg 2 11 * D-26121 Oldenburg, Germany 12 * 13 * 14 * Module: dcmimage 15 * 16 * Author: Joerg Riesmeier 17 * 18 * Purpose: DicomPaletteImage (Header) 19 * 20 */ 21 22 23 #ifndef DIPALIMG_H 24 #define DIPALIMG_H 25 26 #include "dcmtk/config/osconfig.h" 27 28 #include "dcmtk/dcmimage/dicoimg.h" 29 30 31 /*------------------------* 32 * forward declarations * 33 *------------------------*/ 34 35 class DiLookupTable; 36 37 38 /*---------------------* 39 * class declaration * 40 *---------------------*/ 41 42 /** Class for PALETTE COLOR images 43 */ 44 class DCMTK_DCMIMAGE_EXPORT DiPaletteImage 45 : public DiColorImage 46 { 47 48 public: 49 50 /** constructor 51 * 52 ** @param docu pointer to dataset (encapsulated) 53 * @param status current image status 54 */ 55 DiPaletteImage(const DiDocument *docu, 56 const EI_Status status); 57 58 /** destructor 59 */ 60 virtual ~DiPaletteImage(); 61 62 /** process next couple of frames 63 * 64 ** @param fcount number of frames to be processed (0 = same number as before) 65 * 66 ** @return status, true if successful, false otherwise 67 */ 68 virtual int processNextFrames(const unsigned long fcount); 69 70 71 protected: 72 73 /** initialize internal data structures and member variables 74 */ 75 void Init(); 76 77 78 private: 79 80 /// three color palettes for R, G and B 81 DiLookupTable *Palette[3]; 82 83 // --- declarations to avoid compiler warnings 84 85 DiPaletteImage(const DiPaletteImage &); 86 DiPaletteImage &operator=(const DiPaletteImage &); 87 }; 88 89 90 #endif 91