OFFIS DCMTK  Version 3.6.0
dvpspr.h
1 /*
2  *
3  * Copyright (C) 1998-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: DVPSPrintMessageHandler
20  *
21  * Last Update: $Author: joergr $
22  * Update Date: $Date: 2010-10-14 13:16:36 $
23  * CVS/RCS Revision: $Revision: 1.17 $
24  * Status: $State: Exp $
25  *
26  * CVS/RCS Log at end of file
27  *
28  */
29 
30 #ifndef DVPSPR_H
31 #define DVPSPR_H
32 
33 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
34 #include "dcmtk/dcmnet/dimse.h"
35 
40 {
41 public:
42 
45 
57  virtual DIC_US handleEvent(
58  T_DIMSE_N_EventReportRQ& eventMessage,
59  DcmDataset *eventInformation,
60  DcmDataset *statusDetail)=0;
61 };
62 
67 {
68 public:
71 
73  virtual ~DVPSPrintMessageHandler();
74 
90  const char *sopclassUID,
91  OFString& sopinstanceUID,
92  DcmDataset *attributeListIn,
93  Uint16& status,
94  DcmDataset* &attributeListOut);
95 
110  const char *sopclassUID,
111  const char *sopinstanceUID,
112  DcmDataset *modificationList,
113  Uint16& status,
114  DcmDataset* &attributeListOut);
115 
132  const char *sopclassUID,
133  const char *sopinstanceUID,
134  const Uint16 *attributeIdentifierList,
135  size_t numShorts,
136  Uint16& status,
137  DcmDataset* &attributeListOut);
138 
154  const char *sopclassUID,
155  const char *sopinstanceUID,
156  Uint16 actionTypeID,
157  DcmDataset *actionInformation,
158  Uint16& status,
159  DcmDataset* &actionReply);
160 
170  const char *sopclassUID,
171  const char *sopinstanceUID,
172  Uint16& status);
173 
193  DcmTransportLayer *tlayer,
194  const char *myAEtitle,
195  const char *peerAEtitle,
196  const char *peerHost,
197  int peerPort,
198  long peerMaxPDU,
199  OFBool negotiatePresentationLUT,
200  OFBool negotiateAnnotationBox,
201  OFBool implicitOnly);
202 
207 
212 
216  void setEventHandler(DVPSPrintEventHandler *handler) { eventHandler = handler; }
217 
222  void setTimeout(T_DIMSE_BlockingMode blocking, int timeOut) { blockMode=blocking; timeout=timeOut; }
223 
229 
235 
236 private:
237 
242 
259  T_ASC_PresentationContextID presId,
260  T_DIMSE_Message &request,
261  DcmDataset *rqDataSet,
262  T_DIMSE_Message &response,
263  DcmDataset* &statusDetail,
264  DcmDataset* &rspDataset);
265 
272  T_ASC_PresentationContextID findAcceptedPC(const char *sopclassuid);
273 
279  void dumpNMessage(T_DIMSE_Message &msg, DcmItem *dataset, OFBool outgoing);
280 
283 
286 
289 
291  T_DIMSE_BlockingMode blockMode;
292 
294  int timeout;
295 };
296 
297 #endif
298 
299 /*
300  * $Log: dvpspr.h,v $
301  * Revision 1.17 2010-10-14 13:16:36 joergr
302  * Updated copyright header. Added reference to COPYRIGHT file.
303  *
304  * Revision 1.16 2010-10-07 14:31:36 joergr
305  * Removed leading underscore characters from preprocessor symbols (reserved).
306  *
307  * Revision 1.15 2009-11-24 14:12:57 uli
308  * Switched to logging mechanism provided by the "new" oflog module.
309  *
310  * Revision 1.14 2009-09-30 10:42:38 uli
311  * Make dcmpstat's include headers self-sufficient by including all
312  * needed headers directly and stop using dctk.h
313  *
314  * Revision 1.13 2006-08-15 16:57:01 meichel
315  * Updated the code in module dcmpstat to correctly compile when
316  * all standard C++ classes remain in namespace std.
317  *
318  * Revision 1.12 2005/12/09 14:48:35 meichel
319  * Added missing virtual destructors
320  *
321  * Revision 1.11 2005/12/08 16:03:57 meichel
322  * Changed include path schema for all DCMTK header files
323  *
324  * Revision 1.10 2003/09/05 14:31:33 meichel
325  * Print SCU now supports TLS connections.
326  *
327  * Revision 1.9 2001/10/12 13:46:52 meichel
328  * Adapted dcmpstat to OFCondition based dcmnet module (supports strict mode).
329  *
330  * Revision 1.8 2001/06/01 15:50:19 meichel
331  * Updated copyright header
332  *
333  * Revision 1.7 2000/06/02 16:00:50 meichel
334  * Adapted all dcmpstat classes to use OFConsole for log and error output
335  *
336  * Revision 1.6 2000/03/08 16:28:55 meichel
337  * Updated copyright header.
338  *
339  * Revision 1.5 1999/10/28 08:18:56 meichel
340  * Print client does not attempt any more to negotiate Presentation LUT or
341  * Annotation Box if config file says that the printer does not support them.
342  *
343  * Revision 1.4 1999/10/13 14:10:47 meichel
344  * Now negotiation Basic Annotation Box SOP Class
345  *
346  * Revision 1.3 1999/09/24 15:23:47 meichel
347  * Print spooler (dcmprtsv) now logs diagnostic messages in log files
348  * when operating in spool mode.
349  *
350  * Revision 1.2 1999/09/17 14:33:58 meichel
351  * Completed print spool functionality including Supplement 22 support
352  *
353  * Revision 1.1 1999/07/30 13:34:49 meichel
354  * Added new classes managing Stored Print objects
355  *
356  *
357  */


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