OFFIS DCMTK  Version 3.6.0
dicoopx.h
1 /*
2  *
3  * Copyright (C) 1996-2010, 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: dcmimgle
15  *
16  * Author: Joerg Riesmeier
17  *
18  * Purpose: DicomColorOutputPixel (Header)
19  *
20  * Last Update: $Author: joergr $
21  * Update Date: $Date: 2010-10-14 13:16:29 $
22  * CVS/RCS Revision: $Revision: 1.21 $
23  * Status: $State: Exp $
24  *
25  * CVS/RCS Log at end of file
26  *
27  */
28 
29 
30 #ifndef DICOOPX_H
31 #define DICOOPX_H
32 
33 #include "dcmtk/config/osconfig.h"
34 #include "dcmtk/dcmimgle/diutils.h"
35 #include "dcmtk/ofstd/ofstream.h"
36 
37 #define INCLUDE_CSTDLIB
38 #define INCLUDE_CSTDIO
39 #include "dcmtk/ofstd/ofstdinc.h"
40 
41 
42 /*------------------------*
43  * forward declarations *
44  *------------------------*/
45 
46 class DiPixel;
47 
48 
49 /*---------------------*
50  * class declaration *
51  *---------------------*/
52 
56 {
57 
58  public:
59 
66  DiColorOutputPixel(const DiPixel *pixel,
67  const unsigned long size,
68  const unsigned long frame);
69 
72  virtual ~DiColorOutputPixel();
73 
78  virtual EP_Representation getRepresentation() const = 0;
79 
84  virtual const void *getData() const = 0;
85 
90  virtual void *getDataPtr() = 0;
91 
98  virtual const void *getPlane(const int plane) const = 0;
99 
104  virtual size_t getItemSize() const = 0;
105 
112  virtual int writePPM(STD_NAMESPACE ostream& stream) const = 0;
113 
120  virtual int writePPM(FILE *stream) const = 0;
121 
126  inline unsigned long getCount() const
127  {
128  return FrameSize;
129  }
130 
131 
132  protected:
133 
135  /*const*/ unsigned long Count;
137  const unsigned long FrameSize;
138 };
139 
140 
141 #endif
142 
143 
144 /*
145  *
146  * CVS/RCS Log:
147  * $Log: dicoopx.h,v $
148  * Revision 1.21 2010-10-14 13:16:29 joergr
149  * Updated copyright header. Added reference to COPYRIGHT file.
150  *
151  * Revision 1.20 2006/08/15 16:35:01 meichel
152  * Updated the code in module dcmimage to correctly compile when
153  * all standard C++ classes remain in namespace std.
154  *
155  * Revision 1.19 2005/12/08 16:01:32 meichel
156  * Changed include path schema for all DCMTK header files
157  *
158  * Revision 1.18 2004/02/06 11:18:18 joergr
159  * Distinguish more clearly between const and non-const access to pixel data.
160  *
161  * Revision 1.17 2003/12/23 11:23:30 joergr
162  * Added missing API documentation.
163  *
164  * Revision 1.16 2003/12/17 18:13:41 joergr
165  * Removed leading underscore characters from preprocessor symbols (reserved
166  * symbols).
167  *
168  * Revision 1.15 2002/11/27 14:16:56 meichel
169  * Adapted module dcmimage to use of new header file ofstdinc.h
170  *
171  * Revision 1.14 2002/04/16 13:54:42 joergr
172  * Added configurable support for C++ ANSI standard includes (e.g. streams).
173  *
174  * Revision 1.13 2001/06/01 15:49:28 meichel
175  * Updated copyright header
176  *
177  * Revision 1.12 2000/03/08 16:21:50 meichel
178  * Updated copyright header.
179  *
180  * Revision 1.11 2000/02/23 15:09:39 meichel
181  * Corrected macro for Borland C++ Builder 4 workaround.
182  *
183  * Revision 1.10 2000/02/01 11:02:19 meichel
184  * Avoiding to include <stdlib.h> as extern "C" on Borland C++ Builder 4,
185  * workaround for bug in compiler header files.
186  *
187  * Revision 1.9 1999/07/23 13:20:44 joergr
188  * Enhanced handling of corrupted pixel data (wrong length).
189  *
190  * Revision 1.8 1999/04/29 09:31:12 joergr
191  * Moved color related image files back to non-public part.
192  *
193  * Revision 1.1 1999/04/28 14:57:31 joergr
194  * Moved files from dcmimage module to dcmimgle to support new pastel color
195  * output format.
196  *
197  * Revision 1.6 1999/02/03 16:53:42 joergr
198  * Added BEGIN_EXTERN_C and END_EXTERN_C to some C includes.
199  *
200  * Revision 1.5 1999/01/20 14:42:06 joergr
201  * Replaced invocation of getCount() by member variable Count where possible.
202  *
203  * Revision 1.4 1998/11/27 13:44:29 joergr
204  * Added copyright message.
205  *
206  * Revision 1.3 1998/05/11 14:53:12 joergr
207  * Added CVS/RCS header to each file.
208  *
209  *
210  */


Generated on Thu Dec 20 2012 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.8.2