Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

CdbEnvProxy.hh

Go to the documentation of this file.
00001 #ifndef CDB_ENV_PROXY_HH
00002 #define CDB_ENV_PROXY_HH
00003 
00004 // File and Version Information:
00005 //      $Id: CdbEnvProxy.hh,v 1.2 2005/05/03 20:59:50 gapon Exp $
00006 
00007 #include "CdbBase/CdbProxyBase.hh"
00008 
00009 /// Straightforward implementation for the proxy class
00010 /**
00011   * This is a straightforward 1-to-1 proxy implementation assuming
00012   * that there is a simple translation from a persistent class
00013   * to a transient one.
00014   *
00015   * The proxy class is parametrized by mean of one template parameter:
00016   *
00017   *   T - is a transient class representing a proxy product
00018   *
00019   * This proxy is using the "persistent-to-transient" translation facility
00020   * of the CDB API in order to get the transient product. The corresponding
00021   * converter must be registered with a CDB API implementation used in an application
00022   * context where an instance of the current proxy is being used.
00023   *
00024   * @see class CdbObjectTranslator
00025   */
00026 template< class T >
00027 class CdbEnvProxy : public CdbProxyBase<T> {
00028 
00029 private:
00030 
00031   /// The default constructor (NOT IMPLEMENTED)
00032 
00033     CdbEnvProxy( );
00034 
00035   /// The copy constructor (NOT IMPLEMENTED)
00036 
00037     CdbEnvProxy( const CdbEnvProxy<T>& theProxy );
00038 
00039   /// The asignment operator (NOT IMPLEMENTED)
00040 
00041     CdbEnvProxy<T>& operator=( const CdbEnvProxy<T>& theProxy );
00042 
00043 public:
00044 
00045   /// The normal and default constructor
00046   /**
00047     * The only optional argument of the constructor takes the strategy object
00048     * for locating GenEnv parameters. If 0 pointer is passed then a default
00049     * strategy will be enforced.
00050     *
00051     * Note, that the ownreship of the strategy object is also passed to the constructor.
00052     */
00053     CdbEnvProxy( const char*     theDetectorName,
00054                  const char*     theConditionName,
00055                  CdbDefStrategy* theStrategy = 0 );
00056 
00057   /// The destructor
00058 
00059     virtual ~CdbEnvProxy( );
00060 
00061 protected:
00062 
00063   /// The redefined fault handler
00064   /**
00065     * Implements the method of a base class.
00066     *
00067     * @see CdbProxyBase::redefinedFaultHandler
00068     */
00069     virtual T* redefinedFaultHandler( const std::vector<CdbProxyElement>& listOfElements );
00070 };
00071 
00072 #ifdef     BABAR_COMP_INST
00073 #include "CdbBase/CdbEnvProxy.cc"
00074 #endif  // BABAR_COMP_INST
00075 
00076 #endif  // CDB_ENV_PROXY_HH

Generated on Mon Dec 5 18:22:05 2005 for CDB by doxygen1.3-rc3