Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | Related Pages

wldsfs.h

00001 /*
00002  *
00003  *  Copyright (C) 1996-2004, OFFIS
00004  *
00005  *  This software and supporting documentation were developed by
00006  *
00007  *    Kuratorium OFFIS e.V.
00008  *    Healthcare Information and Communication Systems
00009  *    Escherweg 2
00010  *    D-26121 Oldenburg, Germany
00011  *
00012  *  THIS SOFTWARE IS MADE AVAILABLE,  AS IS,  AND OFFIS MAKES NO  WARRANTY
00013  *  REGARDING  THE  SOFTWARE,  ITS  PERFORMANCE,  ITS  MERCHANTABILITY  OR
00014  *  FITNESS FOR ANY PARTICULAR USE, FREEDOM FROM ANY COMPUTER DISEASES  OR
00015  *  ITS CONFORMITY TO ANY SPECIFICATION. THE ENTIRE RISK AS TO QUALITY AND
00016  *  PERFORMANCE OF THE SOFTWARE IS WITH THE USER.
00017  *
00018  *  Module:  dcmwlm
00019  *
00020  *  Author:  Thomas Wilkens
00021  *
00022  *  Purpose: Class for connecting to a file-based data source.
00023  *
00024  *  Last Update:      $Author: meichel $
00025  *  Update Date:      $Date: 2004/05/26 10:36:53 $
00026  *  Source File:      $Source: /share/dicom/cvs-depot/dcmtk/dcmwlm/include/wldsfs.h,v $
00027  *  CVS/RCS Revision: $Revision: 1.13 $
00028  *  Status:           $State: Exp $
00029  *
00030  *  CVS/RCS Log at end of file
00031  *
00032  */
00033 
00034 #ifndef WlmDataSourceFileSystem_h
00035 #define WlmDataSourceFileSystem_h
00036 
00037 #include "osconfig.h"
00038 #include "wlds.h"
00039 
00040 class WlmFileSystemInteractionManager;
00041 class DcmDataset;
00042 class OFCondition;
00043 class DcmElement;
00044 
00048 class WlmDataSourceFileSystem : public WlmDataSource
00049 {
00050   protected:
00052     WlmFileSystemInteractionManager *fileSystemInteractionManager;
00054     char *dfPath;
00056     int handleToReadLockFile;
00057 
00062     OFBool SetReadlock();
00063 
00067     OFBool ReleaseReadlock();
00068 
00078     void HandleNonSequenceElementInResultDataset( DcmElement *element, unsigned long idx );
00079 
00089     void HandleSequenceElementInResultDataset( DcmElement *element, unsigned long idx );
00090 
00094     WlmDataSourceFileSystem( const WlmDataSourceFileSystem &Src );
00095 
00100     WlmDataSourceFileSystem &operator=( const WlmDataSourceFileSystem &Src );
00101 
00102 
00103   public:
00106     WlmDataSourceFileSystem();
00107 
00110     ~WlmDataSourceFileSystem();
00111 
00115     OFCondition ConnectToDataSource();
00116 
00120     OFCondition DisconnectFromDataSource();
00121 
00125     void SetDfPath( const char *value );
00126 
00134     OFBool IsCalledApplicationEntityTitleSupported();
00135 
00148     WlmDataSourceStatusType StartFindRequest( DcmDataset &findRequestIdentifiers );
00149 
00160     DcmDataset *NextFindResponse( WlmDataSourceStatusType &rStatus );
00161 };
00162 
00163 #endif
00164 
00165 /*
00166 ** CVS Log
00167 ** $Log: wldsfs.h,v $
00168 ** Revision 1.13  2004/05/26 10:36:53  meichel
00169 ** Fixed minor bug in worklist server regarding failed read locks.
00170 **
00171 ** Revision 1.12  2004/01/07 08:32:28  wilkens
00172 ** Added new sequence type return key attributes to wlmscpfs. Fixed bug that for
00173 ** equally named attributes in sequences always the same value will be returned.
00174 ** Added functionality that also more than one item will be returned in sequence
00175 ** type return key attributes.
00176 **
00177 ** Revision 1.11  2003/08/21 13:38:55  wilkens
00178 ** Moved declaration and initialization of member variables matchingDatasets and
00179 ** NumOfMatchingDatasets to base class.
00180 **
00181 ** Revision 1.10  2003/07/02 09:17:55  wilkens
00182 ** Updated documentation to get rid of doxygen warnings.
00183 **
00184 ** Revision 1.9  2002/12/16 11:08:34  wilkens
00185 ** Added missing #include "osconfig.h" to certain files.
00186 **
00187 ** Revision 1.8  2002/12/09 13:40:49  joergr
00188 ** Renamed parameter to avoid name clash with global function index().
00189 **
00190 ** Revision 1.7  2002/08/12 10:56:08  wilkens
00191 ** Made some modifications in in order to be able to create a new application
00192 ** which contains both wlmscpdb and ppsscpdb and another application which
00193 ** contains both wlmscpfs and ppsscpfs.
00194 **
00195 ** Revision 1.6  2002/08/05 09:09:57  wilkens
00196 ** Modfified the project's structure in order to be able to create a new
00197 ** application which contains both wlmscpdb and ppsscpdb.
00198 **
00199 ** Revision 1.4  2002/07/17 13:10:17  wilkens
00200 ** Corrected some minor logical errors in the wlmscpdb sources and completely
00201 ** updated the wlmscpfs so that it does not use the original wlistctn sources
00202 ** any more but standard wlm sources which are now used by all three variants
00203 ** of wlmscps.
00204 **
00205 ** Revision 1.3  2002/06/10 11:24:54  wilkens
00206 ** Made some corrections to keep gcc 2.95.3 quiet.
00207 **
00208 ** Revision 1.2  2002/04/18 14:19:53  wilkens
00209 ** Modified Makefiles. Updated latest changes again. These are the latest
00210 ** sources. Added configure file.
00211 **
00212 ** Revision 1.3  2002/01/08 17:45:34  joergr
00213 ** Reformatted source files (replaced Windows newlines by Unix ones, replaced
00214 ** tabulator characters by spaces, etc.)
00215 **
00216 ** Revision 1.2  2002/01/08 16:47:53  joergr
00217 ** Added preliminary database support using OTL interface library (modified by
00218 ** MC/JR on 2001-12-21).
00219 **
00220 ** Revision 1.1  2002/01/08 16:30:59  joergr
00221 ** Added new module "dcmwlm" developed by Thomas Wilkens (initial release for
00222 ** Windows, dated 2001-12-20).
00223 **
00224 **
00225 */


Generated on 29 Apr 2005 for OFFIS DCMTK Version 3.5.3 by Doxygen 1.4.2