OFFIS DCMTK  Version 3.6.0
dcmqrdba.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: Andrew Hewett, Marco Eichelberg
17  *
18  * Purpose: class DcmQueryRetrieveDatabaseHandle
19  *
20  * Last Update: $Author: joergr $
21  * Update Date: $Date: 2010-10-14 13:16:41 $
22  * CVS/RCS Revision: $Revision: 1.7 $
23  * Status: $State: Exp $
24  *
25  * CVS/RCS Log at end of file
26  *
27  */
28 
29 #ifndef DCMQRDBA_H
30 #define DCMQRDBA_H
31 
32 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
33 
34 #define INCLUDE_CSTDLIB
35 #define INCLUDE_CSTDIO
36 #define INCLUDE_UNISTD
37 #include "dcmtk/ofstd/ofstdinc.h"
38 #include "dcmtk/ofstd/ofcond.h"
39 
40 class DcmDataset;
42 
43 #ifndef MAXPATHLEN
44 #define MAXPATHLEN 1024
45 #endif
46 
52 {
53 public:
54 
57 
63 
74  const char *SOPClassUID,
75  const char *SOPInstanceUID,
76  char *newImageFileName) = 0;
77 
89  virtual OFCondition storeRequest(
90  const char *SOPClassUID,
91  const char *SOPInstanceUID,
92  const char *imageFileName,
94  OFBool isNew = OFTrue ) = 0;
95 
110  const char *SOPClassUID,
111  DcmDataset *findRequestIdentifiers,
112  DcmQueryRetrieveDatabaseStatus *status) = 0;
113 
126  DcmDataset **findResponseIdentifiers,
127  DcmQueryRetrieveDatabaseStatus *status) = 0;
128 
136 
151  const char *SOPClassUID,
152  DcmDataset *moveRequestIdentifiers,
153  DcmQueryRetrieveDatabaseStatus *status) = 0;
154 
175  char *SOPClassUID,
176  char *SOPInstanceUID,
177  char *imageFileName,
178  unsigned short *numberOfRemainingSubOperations,
179  DcmQueryRetrieveDatabaseStatus *status) = 0;
180 
188 
192  virtual OFCondition pruneInvalidRecords() = 0;
193 
199  virtual void setIdentifierChecking(OFBool checkFind, OFBool checkMove) = 0;
200 
201 };
202 
203 
208 {
209 public:
219  const char *callingAETitle,
220  const char *calledAETitle,
221  OFCondition& result) const = 0;
222 
226 
227 };
228 
229 #endif
230 
231 /*
232  * CVS Log
233  * $Log: dcmqrdba.h,v $
234  * Revision 1.7 2010-10-14 13:16:41 joergr
235  * Updated copyright header. Added reference to COPYRIGHT file.
236  *
237  * Revision 1.6 2009-11-24 10:10:42 uli
238  * Switched to logging mechanism provided by the "new" oflog module.
239  *
240  * Revision 1.5 2009-08-21 09:50:07 joergr
241  * Replaced tabs by spaces and updated copyright date.
242  *
243  * Revision 1.4 2005/12/16 09:12:33 onken
244  * - Added virtual (dummy) destructor to avoid compiler warnings
245  *
246  * Revision 1.3 2005/12/08 16:04:21 meichel
247  * Changed include path schema for all DCMTK header files
248  *
249  * Revision 1.2 2005/04/22 15:36:34 meichel
250  * Passing calling aetitle to DcmQueryRetrieveDatabaseHandleFactory::createDBHandle
251  * to allow configuration retrieval based on calling aetitle.
252  *
253  * Revision 1.1 2005/03/30 13:34:50 meichel
254  * Initial release of module dcmqrdb that will replace module imagectn.
255  * It provides a clear interface between the Q/R DICOM front-end and the
256  * database back-end. The imagectn code has been re-factored into a minimal
257  * class structure.
258  *
259  *
260  */
DcmQueryRetrieveDatabaseHandle()
default constructor
Definition: dcmqrdba.h:56
virtual DcmQueryRetrieveDatabaseHandle * createDBHandle(const char *callingAETitle, const char *calledAETitle, OFCondition &result) const =0
this method creates a new database handle instance on the heap and returns a pointer to it...
virtual ~DcmQueryRetrieveDatabaseHandle()
Destructor.
virtual ~DcmQueryRetrieveDatabaseHandleFactory()
Virtual Destructor.
Definition: dcmqrdba.h:225
virtual OFCondition cancelMoveRequest(DcmQueryRetrieveDatabaseStatus *status)=0
cancel the ongoing MOVE request, stop and reset every running operation associated with this request...
virtual OFCondition pruneInvalidRecords()=0
Prune invalid records from the database.
virtual OFCondition startMoveRequest(const char *SOPClassUID, DcmDataset *moveRequestIdentifiers, DcmQueryRetrieveDatabaseStatus *status)=0
initiate MOVE operation using the given SOP class UID (which identifies the retrieve model) and DICOM...
virtual OFCondition nextMoveResponse(char *SOPClassUID, char *SOPInstanceUID, char *imageFileName, unsigned short *numberOfRemainingSubOperations, DcmQueryRetrieveDatabaseStatus *status)=0
Constructs the information required for the next available C-MOVE sub-operation (the image SOP class ...
virtual OFCondition storeRequest(const char *SOPClassUID, const char *SOPInstanceUID, const char *imageFileName, DcmQueryRetrieveDatabaseStatus *status, OFBool isNew=OFTrue)=0
register the given DICOM object, which has been received through a C-STORE operation and stored in a ...
virtual OFCondition startFindRequest(const char *SOPClassUID, DcmDataset *findRequestIdentifiers, DcmQueryRetrieveDatabaseStatus *status)=0
initiate FIND operation using the given SOP class UID (which identifies the query model) and DICOM da...
abstract base class for database handles.
Definition: dcmqrdba.h:51
virtual OFCondition cancelFindRequest(DcmQueryRetrieveDatabaseStatus *status)=0
cancel the ongoing FIND request, stop and reset every running operation associated with this request...
abstract factory class.
Definition: dcmqrdba.h:207
virtual OFCondition nextFindResponse(DcmDataset **findResponseIdentifiers, DcmQueryRetrieveDatabaseStatus *status)=0
return the next available FIND response as a new DICOM dataset.
a class handling the DICOM dataset format (files without meta header)
Definition: dcdatset.h:46
virtual OFCondition makeNewStoreFileName(const char *SOPClassUID, const char *SOPInstanceUID, char *newImageFileName)=0
create a filename under which a DICOM object that is currently being received through a C-STORE opera...
virtual void setIdentifierChecking(OFBool checkFind, OFBool checkMove)=0
Configure the DB module to perform (or not perform) checking of FIND and MOVE request identifiers...
this class describes the result of a database operation (for an incoming C-FIND, C-MOVE, C-GET or C-STORE request) in a format that can directly be communicated to the remote SCU in a DIMSE RSP message.
Definition: dcmqrdbs.h:43
General purpose class for condition codes.
Definition: ofcond.h:305


Generated on Thu Aug 27 2015 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.8.9.1