00001 /* 00002 * 00003 * Copyright (C) 1998-2005, 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: dcmnet 00019 * 00020 * Author: Marco Eichelberg 00021 * 00022 * Purpose: 00023 * classes: DcmTransportLayer 00024 * 00025 * Last Update: $Author: meichel $ 00026 * Update Date: $Date: 2005/12/08 16:02:16 $ 00027 * CVS/RCS Revision: $Revision: 1.7 $ 00028 * Status: $State: Exp $ 00029 * 00030 * CVS/RCS Log at end of file 00031 * 00032 */ 00033 00034 #ifndef DCMLAYER_H 00035 #define DCMLAYER_H 00036 00037 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */ 00038 #include "dcmtk/ofstd/oftypes.h" 00039 #include "dcmtk/ofstd/ofstring.h" 00040 00041 #define INCLUDE_UNISTD 00042 #include "dcmtk/ofstd/ofstdinc.h" 00043 00047 enum DcmTransportLayerStatus 00048 { 00051 TCS_ok, 00052 00056 TCS_noConnection, 00057 00060 TCS_tlsError, 00061 00064 TCS_illegalCall, 00065 00068 TCS_unspecifiedError 00069 }; 00070 00071 class DcmTransportConnection; 00072 00078 class DcmTransportLayer 00079 { 00080 public: 00081 00086 DcmTransportLayer(int /* networkRole */ ) { /* empty */ } 00087 00089 virtual ~DcmTransportLayer(); 00090 00102 virtual DcmTransportConnection *createConnection(int openSocket, OFBool useSecureLayer); 00103 00104 private: 00105 00107 DcmTransportLayer(const DcmTransportLayer&); 00108 00110 DcmTransportLayer& operator=(const DcmTransportLayer&); 00111 00112 }; 00113 00114 00115 #endif 00116 00117 /* 00118 * $Log: dcmlayer.h,v $ 00119 * Revision 1.7 2005/12/08 16:02:16 meichel 00120 * Changed include path schema for all DCMTK header files 00121 * 00122 * Revision 1.6 2004/08/03 11:42:43 meichel 00123 * Headers libc.h and unistd.h are now included via ofstdinc.h 00124 * 00125 * Revision 1.5 2003/12/05 10:39:45 joergr 00126 * Removed leading underscore characters from preprocessor symbols (reserved 00127 * symbols). 00128 * 00129 * Revision 1.4 2003/06/12 15:16:10 joergr 00130 * Fixed inconsistent API documentation reported by Doxygen. 00131 * 00132 * Revision 1.3 2001/06/01 15:50:04 meichel 00133 * Updated copyright header 00134 * 00135 * Revision 1.2 2000/10/10 12:06:53 meichel 00136 * Updated transport layer error codes and routines for printing 00137 * connection parameters. 00138 * 00139 * Revision 1.1 2000/08/10 14:50:52 meichel 00140 * Added initial OpenSSL support. 00141 * 00142 * 00143 */ 00144