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  */
void callbackHandler(T_DIMSE_StoreProgress *progress, T_DIMSE_C_StoreRQ *req, char *imageFileName, DcmDataset **imageDataSet, T_DIMSE_C_StoreRSP *rsp, DcmDataset **stDetail)
callback handler called by the DIMSE_storeProvider callback function.
void setStatus(DIC_US s)
set DIMSE status param s new status
Definition: dcmqrcbs.h:70
DcmQueryRetrieveDatabaseHandle & dbHandle
reference to database handle
Definition: dcmqrcbs.h:120
OFBool correctUIDPadding
flag indicating whether space padded UIDs should be silently corrected
Definition: dcmqrcbs.h:135
a class handling the DICOM file format (with meta header)
Definition: dcfilefo.h:48
DcmQueryRetrieveStoreContext(DcmQueryRetrieveDatabaseHandle &handle, const DcmQueryRetrieveOptions &options, DIC_US s, DcmFileFormat *ff, OFBool correctuidpadding)
constructor
Definition: dcmqrcbs.h:52
this class encapsulates all the various options that affect the operation of the SCP, in addition to those defined in the config file
Definition: dcmqropt.h:48
DIC_US getStatus() const
return current DIMSE status
Definition: dcmqrcbs.h:73
DIC_US status
current DIMSE status
Definition: dcmqrcbs.h:126
void setFileName(const char *fn)
set file name under which the image should be stored
Definition: dcmqrcbs.h:78
this class maintains the context information that is passed to the callback function called by DIMSE_...
Definition: dcmqrcbs.h:42
const DcmQueryRetrieveOptions & options_
reference to Q/R service options
Definition: dcmqrcbs.h:123
abstract base class for database handles.
Definition: dcmqrdba.h:51
DcmFileFormat * dcmff
DICOM file format into which the image is received.
Definition: dcmqrcbs.h:132
a class handling the DICOM dataset format (files without meta header)
Definition: dcdatset.h:46
const char * fileName
file name under which the incoming image should be stored
Definition: dcmqrcbs.h:129


Generated on Wed Dec 14 2016 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.8.11