OFFIS DCMTK  Version 3.6.0
dcmqrcbs.h
1 /*
2  *
3  * Copyright (C) 1993-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: dcmqrdb
15  *
16  * Author: Marco Eichelberg
17  *
18  * Purpose: class DcmQueryRetrieveStoreContext
19  *
20  * Last Update: $Author: joergr $
21  * Update Date: $Date: 2010-10-14 13:16:41 $
22  * CVS/RCS Revision: $Revision: 1.5 $
23  * Status: $State: Exp $
24  *
25  * CVS/RCS Log at end of file
26  *
27  */
28 
29 #ifndef DCMQRCBS_H
30 #define DCMQRCBS_H
31 
32 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
33 #include "dcmtk/dcmnet/dimse.h"
34 
37 class DcmFileFormat;
38 
43 {
44 public:
54  const DcmQueryRetrieveOptions& options,
55  DIC_US s,
56  DcmFileFormat *ff,
57  OFBool correctuidpadding)
58  : dbHandle(handle)
59  , options_(options)
60  , status(s)
61  , fileName(NULL)
62  , dcmff(ff)
63  , correctUIDPadding(correctuidpadding)
64  {
65  }
66 
70  void setStatus(DIC_US s) { status = s; }
71 
73  DIC_US getStatus() const { return status; }
74 
78  void setFileName(const char *fn) { fileName = fn; }
79 
88  void callbackHandler(
89  T_DIMSE_StoreProgress *progress,
90  T_DIMSE_C_StoreRQ *req,
91  char *imageFileName,
92  DcmDataset **imageDataSet,
93  T_DIMSE_C_StoreRSP *rsp,
94  DcmDataset **stDetail);
95 
96 private:
97 
98  void updateDisplay(T_DIMSE_StoreProgress * progress);
99 
100  void saveImageToDB(
101  T_DIMSE_C_StoreRQ *req, /* original store request */
102  const char *imageFileName,
103  /* out */
104  T_DIMSE_C_StoreRSP *rsp, /* final store response */
105  DcmDataset **stDetail);
106 
107  void writeToFile(
108  DcmFileFormat *ff,
109  const char* fname,
110  T_DIMSE_C_StoreRSP *rsp);
111 
112  void checkRequestAgainstDataset(
113  T_DIMSE_C_StoreRQ *req, /* original store request */
114  const char* fname, /* filename of dataset */
115  DcmDataset *dataSet, /* dataset to check */
116  T_DIMSE_C_StoreRSP *rsp, /* final store response */
117  OFBool uidPadding); /* correct UID padding */
118 
121 
124 
126  DIC_US status;
127 
129  const char *fileName;
130 
133 
136 
137 };
138 
139 #endif
140 
141 /*
142  * CVS Log
143  * $Log: dcmqrcbs.h,v $
144  * Revision 1.5 2010-10-14 13:16:41 joergr
145  * Updated copyright header. Added reference to COPYRIGHT file.
146  *
147  * Revision 1.4 2009-08-21 09:50:07 joergr
148  * Replaced tabs by spaces and updated copyright date.
149  *
150  * Revision 1.3 2005/12/15 12:38:00 joergr
151  * Removed naming conflicts.
152  *
153  * Revision 1.2 2005/12/08 16:04:19 meichel
154  * Changed include path schema for all DCMTK header files
155  *
156  * Revision 1.1 2005/03/30 13:34:50 meichel
157  * Initial release of module dcmqrdb that will replace module imagectn.
158  * It provides a clear interface between the Q/R DICOM front-end and the
159  * database back-end. The imagectn code has been re-factored into a minimal
160  * class structure.
161  *
162  *
163  */


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