Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | 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     const char          *UserName;
00077     const char          *GroupName;
00078     int         NetworkTCPPort;
00079     OFCmdUnsignedInt MaxPDUSize;
00080     int         MaxAssociations;
00081     
00082    /* AETable Entries */
00083     int         noOfAEEntries;
00084     AEEntry     *AEEntries;
00085 };
00086 
00087 /* HostTable Entries */
00088 struct  HostEntry {
00089     const char *SymbolicName;
00090     int noOfPeers;
00091     Peer *Peers;
00092 };
00093 
00094 /* Host and Vendor Table */
00095 struct HostTable {
00096     int         noOfHostEntries;
00097     HostEntry   *HostEntries;
00098 };
00099 
00100 /*
00101  * global structures
00102  */
00103 extern struct Configuration CNF_Config;
00104 extern struct HostTable CNF_HETable;
00105 extern struct HostTable CNF_VendorTable;
00106 
00107 /* local functions */
00108 void CNF_initConfigStruct();
00109 void CNF_panic(const char *fmt, ...);
00110 int CNF_checkForComplete();
00111 int CNF_readConfigLines(FILE *cnffp);
00112 
00113 #endif
00114 
00115 /*
00116 ** CVS Log
00117 ** $Log: cnfpriv.h,v $
00118 ** Revision 1.7  2002/11/29 07:18:14  wilkens
00119 ** Adapted ti utility to command line classes and added option '-xi'.
00120 **
00121 ** Revision 1.6  2002/11/27 13:26:58  meichel
00122 ** Adapted module imagectn to use of new header file ofstdinc.h
00123 **
00124 ** Revision 1.5  2001/11/12 14:54:18  meichel
00125 ** Removed all ctndisp related code from imagectn
00126 **
00127 ** Revision 1.4  2001/06/01 15:51:16  meichel
00128 ** Updated copyright header
00129 **
00130 ** Revision 1.3  2000/03/08 16:40:57  meichel
00131 ** Updated copyright header.
00132 **
00133 ** Revision 1.2  1999/06/10 12:11:52  meichel
00134 ** Adapted imagectn to new command line option scheme.
00135 **   Added support for Patient/Study Only Q/R model and C-GET (experimental).
00136 **
00137 ** Revision 1.1.1.1  1996/03/28 19:24:59  hewett
00138 ** Oldenburg Image CTN Software ported to use the dcmdata C++ toolkit.
00139 **
00140 */


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