OFFIS DCMTK
Version 3.6.0
Main Page
Related Pages
Classes
Files
File List
File Members
dcmdata
include
dcmtk
dcmdata
dcpxitem.h
1
/*
2
*
3
* Copyright (C) 1994-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: dcmdata
15
*
16
* Author: Gerd Ehlers, Andreas Barth
17
*
18
* Purpose: Interface of class DcmPixelItem
19
*
20
* Last Update: $Author: joergr $
21
* Update Date: $Date: 2010-10-14 13:15:41 $
22
* CVS/RCS Revision: $Revision: 1.30 $
23
* Status: $State: Exp $
24
*
25
* CVS/RCS Log at end of file
26
*
27
*/
28
29
30
#ifndef DCPXITEM_H
31
#define DCPXITEM_H
32
33
#include "dcmtk/config/osconfig.h"
/* make sure OS specific configuration is included first */
34
#include "dcmtk/dcmdata/dcvrobow.h"
35
#include "dcmtk/dcmdata/dcofsetl.h"
/* for class DcmOffsetList */
36
37
45
class
DcmPixelItem
:
public
DcmOtherByteOtherWord
46
{
47
public
:
48
53
DcmPixelItem
(
const
DcmTag
&tag,
const
Uint32 len = 0);
54
58
DcmPixelItem
(
const
DcmPixelItem
&old);
59
61
virtual
~DcmPixelItem
();
62
66
DcmPixelItem
&
operator=
(
const
DcmPixelItem
&obj) {
DcmOtherByteOtherWord::operator=
(obj);
return
*
this
; }
67
71
virtual
DcmObject
*
clone
()
const
72
{
73
return
new
DcmPixelItem
(*
this
);
74
}
75
79
virtual
DcmEVR
ident
(
void
)
const
{
return
EVR_pixelItem; }
80
93
virtual
OFCondition
copyFrom
(
const
DcmObject
&rhs);
94
102
virtual
void
print
(STD_NAMESPACE ostream &out,
103
const
size_t
flags = 0,
104
const
int
level = 0,
105
const
char
*pixelFileName = NULL,
106
size_t
*pixelCounter = NULL);
107
114
virtual
OFCondition
createOffsetTable
(
const
DcmOffsetList
&offsetList);
115
121
virtual
OFCondition
writeXML
(STD_NAMESPACE ostream &out,
122
const
size_t
flags = 0);
123
131
virtual
OFCondition
writeSignatureFormat
(
DcmOutputStream
&outStream,
132
const
E_TransferSyntax oxfer,
133
const
E_EncodingType enctype,
134
DcmWriteCache
*wcache);
135
136
protected
:
137
144
virtual
OFCondition
writeTagAndLength
(
DcmOutputStream
&outStream,
145
const
E_TransferSyntax oxfer,
146
Uint32 &writtenBytes)
const
;
147
148
};
149
150
151
#endif // DCPXITEM_H
152
153
/*
154
** CVS/RCS Log:
155
** $Log: dcpxitem.h,v $
156
** Revision 1.30 2010-10-14 13:15:41 joergr
157
** Updated copyright header. Added reference to COPYRIGHT file.
158
**
159
** Revision 1.29 2010-03-01 09:08:44 uli
160
** Removed some unnecessary include directives in the headers.
161
**
162
** Revision 1.28 2010-02-22 11:39:54 uli
163
** Remove some unneeded includes.
164
**
165
** Revision 1.27 2009-02-04 17:54:31 joergr
166
** Fixed various layout and formatting issues.
167
**
168
** Revision 1.26 2009-02-04 10:18:19 joergr
169
** Fixed issue with compressed frames of odd length (possibly wrong values in
170
** basic offset table).
171
**
172
** Revision 1.25 2008-07-17 11:19:49 onken
173
** Updated copyFrom() documentation.
174
**
175
** Revision 1.24 2008-07-17 10:30:23 onken
176
** Implemented copyFrom() method for complete DcmObject class hierarchy, which
177
** permits setting an instance's value from an existing object. Implemented
178
** assignment operator where necessary.
179
**
180
** Revision 1.23 2007-11-29 14:30:19 meichel
181
** Write methods now handle large raw data elements (such as pixel data)
182
** without loading everything into memory. This allows very large images to
183
** be sent over a network connection, or to be copied without ever being
184
** fully in memory.
185
**
186
** Revision 1.22 2006/08/15 15:49:56 meichel
187
** Updated all code in module dcmdata to correctly compile when
188
** all standard C++ classes remain in namespace std.
189
**
190
** Revision 1.21 2005/12/08 16:28:32 meichel
191
** Changed include path schema for all DCMTK header files
192
**
193
** Revision 1.20 2005/11/24 12:50:57 meichel
194
** Fixed bug in code that prepares a byte stream that is fed into the MAC
195
** algorithm when creating or verifying a digital signature. The previous
196
** implementation was non-conformant when signatures included compressed
197
** (encapsulated) pixel data because the item length was included in the byte
198
** stream, while it should not. The global variable dcmEnableOldSignatureFormat
199
** and a corresponding command line option in dcmsign allow to re-enable the old
200
** implementation.
201
**
202
** Revision 1.19 2004/07/01 12:28:25 meichel
203
** Introduced virtual clone method for DcmObject and derived classes.
204
**
205
** Revision 1.18 2002/12/06 12:49:12 joergr
206
** Enhanced "print()" function by re-working the implementation and replacing
207
** the boolean "showFullData" parameter by a more general integer flag.
208
** Added doc++ documentation.
209
** Made source code formatting more consistent with other modules/files.
210
**
211
** Revision 1.17 2002/08/27 16:55:38 meichel
212
** Initial release of new DICOM I/O stream classes that add support for stream
213
** compression (deflated little endian explicit VR transfer syntax)
214
**
215
** Revision 1.16 2002/05/24 14:51:42 meichel
216
** Moved helper methods that are useful for different compression techniques
217
** from module dcmjpeg to module dcmdata
218
**
219
** Revision 1.15 2002/04/25 09:41:46 joergr
220
** Added support for XML output of DICOM objects.
221
**
222
** Revision 1.14 2001/11/16 15:54:39 meichel
223
** Adapted digital signature code to final text of supplement 41.
224
**
225
** Revision 1.13 2001/09/25 17:19:28 meichel
226
** Adapted dcmdata to class OFCondition
227
**
228
** Revision 1.12 2001/06/01 15:48:43 meichel
229
** Updated copyright header
230
**
231
** Revision 1.11 2000/04/14 15:31:33 meichel
232
** Removed default value from output stream passed to print() method.
233
** Required for use in multi-thread environments.
234
**
235
** Revision 1.10 2000/03/08 16:26:17 meichel
236
** Updated copyright header.
237
**
238
** Revision 1.9 2000/03/03 14:05:25 meichel
239
** Implemented library support for redirecting error messages into memory
240
** instead of printing them to stdout/stderr for GUI applications.
241
**
242
** Revision 1.8 2000/02/10 10:50:53 joergr
243
** Added new feature to dcmdump (enhanced print method of dcmdata): write
244
** pixel data/item value fields to raw files.
245
**
246
** Revision 1.7 1999/03/31 09:24:45 meichel
247
** Updated copyright header in module dcmdata
248
**
249
** Revision 1.6 1998/11/12 16:47:43 meichel
250
** Implemented operator= for all classes derived from DcmObject.
251
**
252
** Revision 1.5 1997/05/22 16:57:10 andreas
253
** - Corrected errors for writing of pixel sequences for encapsulated
254
** transfer syntaxes.
255
**
256
** Revision 1.4 1996/01/29 13:38:13 andreas
257
** - new put method for every VR to put value as a string
258
** - better and unique print methods
259
**
260
** Revision 1.3 1996/01/05 13:22:58 andreas
261
** - changed to support new streaming facilities
262
** - more cleanups
263
** - merged read / write methods for block and file transfer
264
**
265
*/
Generated on Thu Dec 20 2012 for
OFFIS DCMTK
Version 3.6.0 by
Doxygen
1.8.2