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

cnfpriv.h

00001 /*
00002  *
00003  *  Copyright (C) 1993-2002, 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:  imagectn
00019  *
00020  *  Author:  Ralph Meyer
00021  *
00022  *  Purpose: Configuration facility
00023  *    Module Prefix: CNF_ 
00024  *
00025  *  Last Update:      $Author: wilkens $
00026  *  Update Date:      $Date: 2002/11/29 07:18:14 $
00027  *  Source File:      $Source: /share/dicom/cvs-depot/dcmtk/imagectn/apps/cnfpriv.h,v $
00028  *  CVS/RCS Revision: $Revision: 1.7 $
00029  *  Status:           $State: Exp $
00030  *
00031  *  CVS/RCS Log at end of file
00032  *
00033  */
00034 
00035 #ifndef CNF_CONFPRIV_H
00036 #define CNF_CONFPRIV_H
00037 
00038 #include "osconfig.h"    /* make sure OS specific configuration is included first */
00039 
00040 /* includes */
00041 #define INCLUDE_CSTDIO
00042 #include "ofstdinc.h"
00043 #include "ofcmdln.h"
00044 
00045 /* typedefs */
00046 typedef struct {
00047     int maxStudies;
00048     long        maxBytesPerStudy;
00049 } Quota;
00050 
00051 typedef struct {
00052     const char  *ApplicationTitle;
00053     const char  *HostName;
00054     int PortNumber;
00055 } Peer;
00056 
00057 /* Configuration Parameters (not yet complete) */
00058 
00059 struct  AEEntry {
00060     const char          *ApplicationTitle;
00061     const char          *StorageArea;
00062     const char          *Access;        
00063     Quota               *StorageQuota;
00064     int                 noOfPeers;
00065     Peer                *Peers;
00066 };
00067 
00068 /* configuration structure */
00069 struct  Configuration {
00070     /* global Configuration Parameters */
00071     const char          *ApplicationTitle;
00072     const char          *ApplicationContext;
00073     const char          *ImplementationClass;
00074     const char          *ImplementationVersion;
00075     const char          *NetworkType;
00076     int         NetworkTCPPort;
00077     OFCmdUnsignedInt MaxPDUSize;
00078     int         MaxAssociations;
00079     
00080    /* AETable Entries */
00081     int         noOfAEEntries;
00082     AEEntry     *AEEntries;
00083 };
00084 
00085 /* HostTable Entries */
00086 struct  HostEntry {
00087     const char *SymbolicName;
00088     int noOfPeers;
00089     Peer *Peers;
00090 };
00091 
00092 /* Host and Vendor Table */
00093 struct HostTable {
00094     int         noOfHostEntries;
00095     HostEntry   *HostEntries;
00096 };
00097 
00098 /*
00099  * global structures
00100  */
00101 extern struct Configuration CNF_Config;
00102 extern struct HostTable CNF_HETable;
00103 extern struct HostTable CNF_VendorTable;
00104 
00105 /* local functions */
00106 void CNF_initConfigStruct();
00107 void CNF_panic(const char *fmt, ...);
00108 int CNF_checkForComplete();
00109 int CNF_readConfigLines(FILE *cnffp);
00110 
00111 #endif
00112 
00113 /*
00114 ** CVS Log
00115 ** $Log: cnfpriv.h,v $
00116 ** Revision 1.7  2002/11/29 07:18:14  wilkens
00117 ** Adapted ti utility to command line classes and added option '-xi'.
00118 **
00119 ** Revision 1.6  2002/11/27 13:26:58  meichel
00120 ** Adapted module imagectn to use of new header file ofstdinc.h
00121 **
00122 ** Revision 1.5  2001/11/12 14:54:18  meichel
00123 ** Removed all ctndisp related code from imagectn
00124 **
00125 ** Revision 1.4  2001/06/01 15:51:16  meichel
00126 ** Updated copyright header
00127 **
00128 ** Revision 1.3  2000/03/08 16:40:57  meichel
00129 ** Updated copyright header.
00130 **
00131 ** Revision 1.2  1999/06/10 12:11:52  meichel
00132 ** Adapted imagectn to new command line option scheme.
00133 **   Added support for Patient/Study Only Q/R model and C-GET (experimental).
00134 **
00135 ** Revision 1.1.1.1  1996/03/28 19:24:59  hewett
00136 ** Oldenburg Image CTN Software ported to use the dcmdata C++ toolkit.
00137 **
00138 */


Generated on 8 Dec 2004 for OFFIS DCMTK Version 3.5.3 by Doxygen 1.3.9.1