![]() |
|
|
Bdb packages | Design docs | Source docs | Guidelines | Recent releases |
|
Main Page Modules Namespace List Class Hierarchy Alphabetical List Compound List File List Compound Members File Members /BdbUtil/BdbClusteringHint.hh
Go to the documentation of this file.00001 //-------------------------------------------------------------------------- 00002 // File and Version Information: 00003 // $Id: BdbClusteringHint.hh,v 1.12 2001/01/10 23:32:14 becla Exp $ 00004 // 00005 // Description: 00006 // BdbClusteringHint class header file. This is the universal clustering 00007 // class used by the BaBar persistent classes. It is customizable via 00008 // specification of a delegate class. 00009 // 00010 // Environment: 00011 // Software developed for the BaBar Detector at the SLAC B-Factory. 00012 // 00013 // Author List: 00014 // David R. Quarrie Lawrence Berkeley National Laboratory 00015 // 00016 // History: 00017 // 00018 //------------------------------------------------------------------------ 00019 #ifndef BDBCLUSTERINGHINT_HH 00020 #define BDBCLUSTERINGHINT_HH 00021 00022 //----------------- 00023 // BaBar Headers -- 00024 //----------------- 00025 #ifndef BABAR_HH 00026 #include "BaBar/BaBar.hh" 00027 #endif 00028 00029 //---------------------- 00030 // Base Class Headers -- 00031 //---------------------- 00032 #ifndef BDBABSTRACTCLUSTERINGHINT_HH 00033 #include "BdbUtil/BdbAbstractClusteringHint.hh" 00034 #endif 00035 00036 00037 class BdbAbsClustHintFactory; 00038 00039 00040 // --------------------- 00041 // -- Class Interface -- 00042 // --------------------- 00043 00044 class BdbClusteringHint : public BdbAbstractClusteringHint { 00045 public: 00046 00047 // Constructor 00048 BdbClusteringHint(); 00049 BdbClusteringHint(const BdbClusteringHint& obj); 00050 00051 // Destructor 00052 virtual ~BdbClusteringHint(); 00053 00054 // Selectors 00055 BdbAbstractClusteringHint* delegate() const; 00056 00057 d_Boolean hintIsValid() const; 00058 00059 // Operations 00060 static void setClustHintFactory( BdbAbsClustHintFactory* f ); 00061 void setDelegate( BdbAbstractClusteringHint* theDelegate ); 00062 BdbRefAny hint(); 00063 BdbRefAny getHint(); 00064 BdbRefAny updatedHint(); 00065 void prepareHint(); 00066 virtual BdbRefAny resetHint(); 00067 00068 // Operators 00069 const BdbClusteringHint& operator = ( BdbHandleAny& theHint ); 00070 const BdbClusteringHint& operator = ( BdbRefAny& theHint ); 00071 virtual void setHint( BdbHandleAny& theHint ); 00072 virtual void setHint( BdbRefAny& theHint ); 00073 00074 virtual void forceNewDatabase() {} 00075 00076 virtual BdbStatus getAllFullDbs(ooTVArray(d_ULong)& theTVArray) {return BdbcError;} 00077 virtual BdbStatus removeFullDbsFromRegistry(const ooTVArray(d_ULong)& theTVArray) {return BdbcError;} 00078 virtual void forceNewContainer() {} 00079 00080 virtual void printSetting() {} 00081 00082 virtual BdbStatus setMaxWaitTime(d_ULong value) {return BdbcError;} 00083 00084 virtual d_Boolean newDatabaseCreated() {return 0;} 00085 virtual d_Boolean newContainerCreated() {return 0;} 00086 virtual void internalCollectReturnedConts() {} 00087 virtual BdbStatus internalReturnCollectedConts() const {return BdbcError;} 00088 00089 protected: 00090 00091 static BdbAbsClustHintFactory* getClustHintFactory(); 00092 00093 private: 00094 BdbAbstractClusteringHint* _delegate; 00095 BdbRefAny _hint; 00096 static BdbAbsClustHintFactory* _factory; 00097 }; 00098 00099 #endif // BDBCLUSTERINGHINT_HH
BaBar Public Site | SLAC | News | Links | Who's Who | Contact Us
Page Owner: Jacek Becla
Last Update: October 04, 2002