Anaphe Home Page Reference Documentation

Main Page     Namespaces     Classes     Source Code    

AIDAHistogramFactory.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 // 
00004 // Copyright (C) CERN, Geneva 
00005 //
00006  
00007 //
00008 // header file for class HistogramFactory 
00009 // Created by: Andreas Pfeiffer  at Thu Jan 13 16:17:26 2000
00010 // 
00011 
00012 #ifndef AIDAHISTOGRAMFACTORY_H
00013 #define AIDAHISTOGRAMFACTORY_H
00014 
00015 
00016 
00017 #include <string>
00018 #include <list>
00019 #include "Interfaces/IHistogramFactory.h"
00020 
00021 
00022 
00023 //kludge
00024 #ifdef AIDA_STD
00025 # undef AIDA_STD
00026 #endif
00027 #ifdef AIDA_NOT_USE_STD
00028 # define AIDA_STD
00029 #else
00030 # define AIDA_STD std
00031 #endif
00032 
00033 
00034 namespace Anaphe {
00035 
00036   class IHistogram;
00037   class IHistogram1D;
00038   class IHistogram2D;
00039 
00040   namespace AIDA_HBook {
00041 
00042     class AIDAHistogramFactory : virtual public Anaphe::IHistogramFactory
00043     { 
00044     public: 
00045       AIDAHistogramFactory(); 
00046       virtual ~AIDAHistogramFactory(); 
00047 
00048     public:
00049       virtual IHistogram1D* create1D(AIDA_STD::string title="", 
00050                                      int nBinsx = 10, double xmin = 0.0, double xmax = 10.0, 
00051                                      const int ID = 0);
00052       virtual IHistogram2D* create2D(AIDA_STD::string title="",
00053                                      int nBinsx = 10, double xmin = 0.0, double xmax = 10.0,
00054                                      int nBinsy = 10, double ymin = 0.0, double ymax = 10.0,
00055                                      const int ID = 0);
00056       virtual void unregister(IHistogram*);
00057       virtual void destroy(IHistogram*);
00058   
00059     private:
00060       AIDA_STD::string intToString(int);
00061 
00062     private:
00063       AIDA_STD::list<IHistogram*> hlist;
00064 
00065     }; 
00066 
00067 
00068   } // end namespace AIDA_HBook
00069 } // end namespace Anaphe
00070 
00071 extern "C" {
00072   Anaphe::IHistogramFactory* createIHistogramFactory();
00073 }
00074 
00075 
00076 #endif /* AIDAHISTOGRAMFACTORY_H */ 
00077 


Anaphe documentation generated by Doxygen (www.doxygen.org)