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

CdbBdbSCi.hh

Go to the documentation of this file.
00001 #ifndef CDBBDBSHARED_CI_HH
00002 #define CDBBDBSHARED_CI_HH
00003 
00004 // File and Version Information:
00005 //      $Id: CdbBdbSCi.hh,v 1.3 2004/08/06 05:54:24 bartoldu Exp $
00006 
00007 #include "BdbUtil/Bdb.hh"
00008 
00009 #include "CdbBdbShared/CdbBdbSOi.hh"
00010 
00011 #include <iostream>
00012 
00013 /// Objects of this class represent "combined" intervals
00014 /**
00015   * Objects of this transient class represent so called
00016   * "combined intervals", combining information about a visible interval
00017   * at the corresponding MetaData object.
00018   */
00019 class CdbBdbSCi {
00020 
00021 public:
00022 
00023   /// Default constructor
00024   /**
00025     */
00026     CdbBdbSCi( const BdbTime&   theBeginTime = BdbTime::minusInfinity,
00027                const BdbTime&   theEndTime   = BdbTime::plusInfinity );
00028 
00029   /// Normal constructor
00030   /**
00031     */
00032     CdbBdbSCi( const BdbTime&   theBeginTime,
00033                const BdbTime&   theEndTime,
00034                const CdbBdbSOi& theOriginalInterval );
00035 
00036   /// Copy constructor
00037   /**
00038     */
00039     CdbBdbSCi( const CdbBdbSCi& theInterval );
00040 
00041   /// The destructor
00042   /**
00043     * NOTE: The destructor is NOT virtual because this is an embedded
00044     *       class.
00045     */
00046     ~CdbBdbSCi( );
00047 
00048   /// The assignment operator
00049   /**
00050     */
00051     CdbBdbSCi& operator=( const CdbBdbSCi& theInterval );
00052 
00053   /// Dump the object contence into specified stream
00054   /**
00055     * NOTE: This operation does not put "End Of Line" at the end of the dump.
00056     */
00057     void dump( std::ostream& o ) const;
00058 
00059 public:
00060 
00061   // This flag indicates if the interval does not correspond to any
00062   // "original" interval.
00063 
00064     bool isEmpty;
00065 
00066   // "Visibility" of this interval in the validity time dimension
00067 
00068     BdbTime begin;
00069     BdbTime end;
00070 
00071   // "Original" interval
00072 
00073     CdbBdbSOi original;
00074 };
00075 
00076 inline
00077 std::ostream&
00078 operator<<( std::ostream&         o,
00079             const CdbBdbSCi& theInterval )
00080 {
00081     theInterval.dump( o );
00082     return o;
00083 }
00084 
00085 #endif  // CDBBDBSHARED_CI_HH

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