Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

StDbDefs.hh

Go to the documentation of this file.
00001 /*************************************************************************** 00002 * 00003 * $Id: StDbDefs.hh,v 1.21 2004/08/11 02:09:35 deph Exp $ 00004 * 00005 * Author: R. Jeff Porter 00006 *************************************************************************** 00007 * 00008 * Description: enum definitions for DataBase Type & Domain. 00009 * This allows compile-time checks for standard DB accesses. 00010 * The StDbManager _does_ support access by names (strings) for 00011 * greater flexibility - though poorer compile-time safegaurds 00012 * 00013 *************************************************************************** 00014 * 00015 * $Log: StDbDefs.hh,v $ 00016 * Revision 1.21 2004/08/11 02:09:35 deph 00017 * added zdc domain 00018 * 00019 * Revision 1.20 2004/02/02 00:41:24 deph 00020 * Added bbc and tracker domains 00021 * 00022 * Revision 1.19 2002/11/24 01:39:16 porter 00023 * added Pmd domain 00024 * 00025 * Revision 1.18 2002/11/14 17:43:00 porter 00026 * added dbEemc to enumerated domain list 00027 * 00028 * Revision 1.17 2002/10/29 21:40:39 porter 00029 * Added dbScalers as a dbType; dbScaler is a dbDomain from before but now 00030 * use as a dbType is more in line with how it will be handled 00031 * 00032 * Revision 1.16 2001/10/24 04:05:20 porter 00033 * added long long type to I/O and got rid of obsolete dataIndex table 00034 * 00035 * Revision 1.15 2001/04/18 19:33:36 porter 00036 * added dbRts enumeration for run-time systems domain 00037 * 00038 * Revision 1.14 2001/01/22 18:37:53 porter 00039 * Update of code needed in next year running. This update has little 00040 * effect on the interface (only 1 method has been changed in the interface). 00041 * Code also preserves backwards compatibility so that old versions of 00042 * StDbLib can read new table structures. 00043 * -Important features: 00044 * a. more efficient low-level table structure (see StDbSql.cc) 00045 * b. more flexible indexing for new systems (see StDbElememtIndex.cc) 00046 * c. environment variable override KEYS for each database 00047 * d. StMessage support & clock-time logging diagnostics 00048 * -Cosmetic features 00049 * e. hid stl behind interfaces (see new *Impl.* files) to again allow rootcint access 00050 * f. removed codes that have been obsolete for awhile (e.g. db factories) 00051 * & renamed some classes for clarity (e.g. tableQuery became StDataBaseI 00052 * and mysqlAccessor became StDbSql) 00053 * 00054 * Revision 1.13 2000/08/15 22:51:51 porter 00055 * Added Root2DB class from Masashi Kaneta 00056 * + made code more robust against requesting data from non-existent databases 00057 * 00058 * Revision 1.12 2000/06/02 13:37:36 porter 00059 * built up list of minor changes: 00060 * - made buffer more robust for certain null inputs 00061 * - fixed small leak in StDbTables & restructure call to createMemory 00062 * - added dbRhic as a database domain in StDbDefs 00063 * - added setUser() in StDbManager 00064 * - added more diagnostic printouts in mysqlAccessor.cc 00065 * 00066 * Revision 1.11 2000/05/04 15:13:11 porter 00067 * added dbOnl, dbRich, dbMwc domains as standards 00068 * 00069 * Revision 1.10 2000/04/25 18:26:02 porter 00070 * added flavor & production time as settable query fields in 00071 * table &/or node. Associated SQL updated in mysqlAccessor. 00072 * Flavor key supports "+" as an OR symbol. 00073 * 00074 * Revision 1.9 2000/03/28 17:03:18 porter 00075 * Several upgrades: 00076 * 1. configuration by timestamp for Conditions 00077 * 2. query by whereClause made more systematic 00078 * 3. conflict between db-stored comments & number lists resolved 00079 * 4. ensure endtime is correct for certain query falures 00080 * 5. dbstl.h->handles ObjectSpace & RogueWave difference (Online vs Offline) 00081 * 00082 * Revision 1.8 2000/01/27 05:54:33 porter 00083 * Updated for compiling on CC5 + HPUX-aCC + KCC (when flags are reset) 00084 * Fixed reConnect()+transaction model mismatch 00085 * added some in-code comments 00086 * 00087 * Revision 1.7 2000/01/10 20:37:53 porter 00088 * expanded functionality based on planned additions or feedback from Online work. 00089 * update includes: 00090 * 1. basis for real transaction model with roll-back 00091 * 2. limited SQL access via the manager for run-log & tagDb 00092 * 3. balance obtained between enumerated & string access to databases 00093 * 4. 3-levels of diagnostic output: Quiet, Normal, Verbose 00094 * 5. restructured Node model for better XML support 00095 * 00096 * Revision 1.6 1999/12/29 13:49:35 porter 00097 * fix for Solaris-CC4.2 within StRoot make (cons)... 00098 * replaced #include <config.h> with #include <ospace/config.h> 00099 * 00100 * Revision 1.5 1999/12/28 21:31:41 porter 00101 * added 'using std::vector' and 'using std::list' for Solaris CC5 compilation. 00102 * Also fixed some warnings arising from the CC5 compiles 00103 * 00104 * Revision 1.4 1999/09/30 02:06:04 porter 00105 * add StDbTime to better handle timestamps, modify SQL content (mysqlAccessor) 00106 * allow multiple rows (StDbTable), & Added the comment sections at top of 00107 * each header and src file 00108 * 00109 **************************************************************************/ 00110 #ifndef STDBDEFS_HH 00111 #define STDBDEFS_HH 00112 00113 // enumerated standard set of database types 00114 enum StDbType { dbStDb=0, dbServer, dbRunLog, dbConfigurations, dbConditions, dbCalibrations, dbGeometry, dbRunCatalog, dbRunParams, dbScalers, dbTestScheme, dbTUser1, dbTUser2, dbTUser3, dbTEnd}; 00115 00116 // enumerated standard set of database domains 00117 enum StDbDomain {dbDomainUnknown=0, dbStar, dbTpc, dbEmc, dbFtpc, dbSvt, dbCtb, dbTrg, dbDaq, dbScaler, dbGlobal, dbL3, dbOnl, dbRich, dbMwc, dbRhic, dbSsd, dbRts, dbTof, dbFpd, dbEemc, dbPmd, dbBbc, dbTracker, dbZdc, dbDUser1, dbDUser2, dbDUser3, dbDEnd }; 00118 00119 // enumerated sets of storage models (different sql content) 00120 enum StDbStoreType { dbV00=0 }; 00121 00122 enum dbFindServerMode { userHome=0, serverEnvVar, starDefault }; 00123 00124 #endif 00125 00126 00127 00128 00129 00130 00131 00132 00133 00134

Generated on Thu Aug 24 14:45:26 2006 for Doxygen by doxygen 1.3.7