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

CdbNTuplePrintImpl.hh

Go to the documentation of this file.
00001 #ifndef CDB_NTUPLE_PRINT_IMPL_HH
00002 #define CDB_NTUPLE_PRINT_IMPL_HH
00003 
00004 // File and Version Information:
00005 //      $Id: CdbNTuplePrintImpl.hh,v 1.3 2004/08/06 05:54:41 bartoldu Exp $
00006 
00007 #include "CdbBase/CdbCPtr.hh"
00008 
00009 #include "CdbTable/CdbNTuplePrintTypes.hh"
00010 
00011 #include <iostream>
00012 
00013 /// An implementation of the "print" tool for n-tuples
00014 /**
00015   * This facility provides a printing facility for n-tuples. The tuples
00016   * are printed onto the specified output stream. The facility also provides
00017   * some limited control over a format of printed tuples.
00018   *
00019   * The tool is able to deal with any n-tuple like classes, as long as they
00020   * satisfy to the "read-only" part of a public interface of the CdbNTuple class.
00021   *
00022   * To cope with various types of elements the facility has the second
00023   * template parameter (CONVERTER) to specify a type-specific convertor for
00024   * a type of n-tuple elements. A converter class can be any class similar
00025   * to the CdbNTuplePrintDefaultConverter class.
00026   *
00027   * @see class CdbNTuple
00028   * @see class CdbCPtr
00029   * @see class CdbNTuplePrintDefaultConverter
00030   */
00031 template < class NTUPLE,
00032            class CONVERTER >
00033 class CdbNTuplePrintImpl {
00034 
00035 public:
00036 
00037   /// The print method
00038 
00039     static CdbStatus print( std::ostream&                                theOutputStream,
00040                             const CdbCPtr<NTUPLE>&                  thePtr,
00041                             const unsigned int                      theColumnWidth,
00042                             const char*                             theIndent,
00043                             const CdbNTuplePrintTypes::FrameType    theFrameType,
00044                             const CdbNTuplePrintTypes::FrameBorders theFrameBorders );
00045 };
00046 
00047 #ifdef     BABAR_COMP_INST
00048 #include "CdbTable/CdbNTuplePrintImpl.cc"
00049 #endif  // BABAR_COMP_INST
00050 
00051 #endif // CDB_NTUPLE_PRINT_IMPL_HH
00052 

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