OFFIS DCMTK
Version 3.6.0
Main Page
Related Pages
Classes
Files
File List
File Members
dcmpstat
include
dcmtk
dcmpstat
dvsighdl.h
1
/*
2
*
3
* Copyright (C) 2001-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: dcmpstat
15
*
16
* Author: Marco Eichelberg
17
*
18
* Purpose:
19
* classes: DVSignatureHandler
20
*
21
* Last Update: $Author: joergr $
22
* Update Date: $Date: 2010-10-14 13:16:37 $
23
* CVS/RCS Revision: $Revision: 1.11 $
24
* Status: $State: Exp $
25
*
26
* CVS/RCS Log at end of file
27
*
28
*/
29
30
#ifndef DVSIGHDL_H
31
#define DVSIGHDL_H
32
33
#include "dcmtk/config/osconfig.h"
/* make sure OS specific configuration is included first */
34
#include "dcmtk/ofstd/ofstream.h"
35
#include "dcmtk/dcmpstat/dvpstyp.h"
36
#include "dcmtk/ofstd/ofstring.h"
37
#include "dcmtk/dcmsign/sicertvf.h"
38
#include "dcmtk/dcmdata/dcerror.h"
39
40
41
42
class
DcmAttributeTag
;
43
class
DcmItem
;
44
class
DcmStack
;
45
class
DVConfiguration
;
46
class
DcmAttributeTag
;
47
class
DcmTagKey
;
48
51
class
DVSignatureHandler
52
{
53
public
:
57
DVSignatureHandler
(
DVConfiguration
& cfg);
58
60
virtual
~DVSignatureHandler
();
61
68
const
char
*
getCurrentSignatureValidationHTML
(DVPSObjectType objtype)
const
;
69
74
const
char
*
getCurrentSignatureValidationOverview
()
const
;
75
83
void
updateDigitalSignatureInformation
(
DcmItem
& dataset, DVPSObjectType objtype, OFBool onRead);
84
88
void
disableDigitalSignatureInformation
(DVPSObjectType objtype);
89
94
DVPSSignatureStatus
getCurrentSignatureStatus
(DVPSObjectType objtype)
const
;
95
100
unsigned
long
getNumberOfCorrectSignatures
(DVPSObjectType objtype)
const
;
101
106
unsigned
long
getNumberOfUntrustworthySignatures
(DVPSObjectType objtype)
const
;
107
112
unsigned
long
getNumberOfCorruptSignatures
(DVPSObjectType objtype)
const
;
113
117
DVPSSignatureStatus
getCombinedImagePStateSignatureStatus
()
const
;
118
123
void
disableImageAndPState
();
124
136
OFBool
attributesSigned
(
DcmItem
& item,
DcmAttributeTag
& tagList)
const
;
137
149
OFCondition
createSignature
(
150
DcmItem
& mainDataset,
151
const
DcmStack
& itemStack,
152
DcmAttributeTag
& attributesNotToSignInMainDataset,
153
const
char
*userID,
154
const
char
*passwd);
155
156
private
:
157
159
DVSignatureHandler
(
const
DVSignatureHandler
& copy);
160
162
DVSignatureHandler
&
operator=
(
const
DVSignatureHandler
&);
163
164
/* print the location stack into the given stream.
165
* It is assumed that the stack top is a DigitalSignatureSequence which is not printed
166
* and that the stack bottom is the main dataset, which is also not printed.
167
* @param stack search stack, as returned by DcmSignature::findFirstSignatureItem() etc.
168
* @param os output stream
169
*/
170
static
void
printSignatureItemPosition(
DcmStack
& stack, STD_NAMESPACE ostream& os);
171
176
void
replaceString
(DVPSObjectType objtype,
const
char
*str);
177
180
void
updateSignatureValidationOverview
();
181
183
OFString
htmlSR
;
184
186
OFString
htmlImage
;
187
189
OFString
htmlPState
;
190
192
OFString
htmlOverview
;
193
195
unsigned
long
correctSignaturesSR
;
196
198
unsigned
long
corruptSignaturesSR
;
199
201
unsigned
long
untrustSignaturesSR
;
202
204
unsigned
long
correctSignaturesImage
;
205
207
unsigned
long
corruptSignaturesImage
;
208
210
unsigned
long
untrustSignaturesImage
;
211
213
unsigned
long
correctSignaturesPState
;
214
216
unsigned
long
corruptSignaturesPState
;
217
219
unsigned
long
untrustSignaturesPState
;
220
221
#ifdef WITH_OPENSSL
222
223
SiCertificateVerifier
certVerifier
;
224
#endif
225
227
DVConfiguration
&
config
;
228
229
};
230
231
#endif
232
233
/*
234
* $Log: dvsighdl.h,v $
235
* Revision 1.11 2010-10-14 13:16:37 joergr
236
* Updated copyright header. Added reference to COPYRIGHT file.
237
*
238
* Revision 1.10 2006/08/15 16:57:01 meichel
239
* Updated the code in module dcmpstat to correctly compile when
240
* all standard C++ classes remain in namespace std.
241
*
242
* Revision 1.9 2005/12/08 16:04:15 meichel
243
* Changed include path schema for all DCMTK header files
244
*
245
* Revision 1.8 2004/02/04 15:49:09 joergr
246
* Removed acknowledgements with e-mail addresses from CVS log. Removed leading
247
* underscore characters from preprocessor symbols (reserved symbols).
248
*
249
* Revision 1.7 2002/04/16 14:02:04 joergr
250
* Added configurable support for C++ ANSI standard includes (e.g. streams).
251
*
252
* Revision 1.6 2001/09/26 15:36:19 meichel
253
* Adapted dcmpstat to class OFCondition
254
*
255
* Revision 1.5 2001/06/01 15:50:26 meichel
256
* Updated copyright header
257
*
258
* Revision 1.4 2001/05/25 10:07:34 meichel
259
* Modified dcmpstat signature handler to also compile without OpenSSL
260
*
261
* Revision 1.3 2001/01/29 14:55:43 meichel
262
* Added new methods for creating signatures and checking the signature
263
* status in module dcmpstat.
264
*
265
* Revision 1.2 2001/01/25 17:37:43 meichel
266
* Fixed problem with undefined copy constructor
267
*
268
* Revision 1.1 2001/01/25 15:18:05 meichel
269
* Added initial support for verification of digital signatures
270
* in presentation states, images and structured reports to module dcmpstat.
271
*
272
*
273
*/
Generated on Thu Dec 20 2012 for
OFFIS DCMTK
Version 3.6.0 by
Doxygen
1.8.2