/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Reconstruction/MdcPatRec/MdcRecoUtil/MdcRecoUtil-00-01-08/MdcRecoUtil/HTColumn.h

Go to the documentation of this file.
00001 //--------------------------------------------------------------------------
00002 // File and Version Information:
00003 //      $Id: HTColumn.h,v 1.2 2009/12/23 02:59:56 zhangy Exp $
00004 //
00005 // Description:
00006 //      Class HTColumn.
00007 //      Base class for the ntuple columns. This is abstract one, all
00008 //      real things will be implemented it the classes for specific types.
00009 //
00010 // Environment:
00011 //      Software developed for the BaBar Detector at the SLAC B-Factory.
00012 //
00013 // Author List:
00014 //      Salnikov
00015 //
00016 // Copyright Information:
00017 //      Copyright (C) 1997      Saclay
00018 // 
00019 // History:
00020 //      Migration for BESIII MDC
00021 //
00022 //------------------------------------------------------------------------
00023 
00024 #ifndef HTColumn_H
00025 #define HTColumn_H
00026 
00027 
00028 //-------------
00029 // C Headers --
00030 //-------------
00031 extern "C" {
00032 }
00033 
00034 //---------------
00035 // C++ Headers --
00036 //---------------
00037 #include <iostream>
00038 #include <string>
00039 
00040 //----------------------
00041 // Base Class Headers --
00042 //----------------------
00043 
00044 //-------------------------------
00045 // Collaborating Class Headers --
00046 //-------------------------------
00047 
00048 //------------------------------------
00049 // Collaborating Class Declarations --
00050 //------------------------------------
00051 class HTColumnAcceptor ;
00052 
00053 //              ---------------------
00054 //              -- Class Interface --
00055 //              ---------------------
00056 
00057 class HTColumn {
00058 
00059   //--------------------
00060   // Declarations     --
00061   //--------------------
00062 
00063   // Typedefs, consts, and enums
00064 
00065   //--------------------
00066   // Instance Members --
00067   //--------------------
00068 
00069 public:
00070 
00071   // Constructors
00072   HTColumn( const std::string& label, 
00073             const std::string& block=std::string(), 
00074             const std::string& indexLabel=std::string() );
00075   
00076   // Copy Constructor
00077   HTColumn( const HTColumn& );
00078 
00079   // Destructor
00080   virtual ~HTColumn( );
00081 
00082   // Operators
00083   HTColumn& operator=(const HTColumn&) ;
00084     
00085   // Selectors (const)
00086   virtual const std::string& label() const ;
00087   virtual const std::string& block() const ;
00088   virtual const std::string& indexLabel() const ;
00089 
00090   // typeinfo
00091   virtual  const std::string& typeName() const = 0 ;
00092 
00093   // modifiers
00094   virtual void clearData() = 0 ;
00095 
00096   virtual void print(/*std::ostream& out*/) const ;
00097 
00098 protected:
00099 
00100   // Helper functions
00101 
00102 private:
00103 
00104   // Friends
00105 
00106   // Data members
00107   std::string _label ;
00108   std::string _block ;
00109   std::string _indexLabel ;
00110 
00111 };
00112 
00113 #endif // HTColumn_H

Generated on Tue Nov 29 23:13:31 2016 for BOSS_7.0.2 by  doxygen 1.4.7