H1D.h
Go to the documentation of this file.00001 #ifndef HISTOGRAMSVC_H1D_H
00002 #define HISTOGRAMSVC_H1D_H 1
00003
00004 #include "GaudiKernel/DataObject.h"
00005 #include "Generic1D.h"
00006 #include "GaudiPI.h"
00007 #include "TH1D.h"
00008
00009 namespace Gaudi {
00010
00017 class GAUDI_API Histogram1D : public DataObject, public Gaudi::Generic1D<AIDA::IHistogram1D,TH1D> {
00018 private:
00019 void init(const std::string& title, bool initialize_axis=true);
00020 void initSums();
00021 protected:
00023 double m_sumwx;
00024 public:
00026 Histogram1D();
00028 Histogram1D(TH1D* rep);
00030 virtual ~Histogram1D() {}
00032 virtual void adoptRepresentation(TObject*rep);
00034 virtual bool setBinContents(int i,int entries ,double height,double error,double centre);
00036 virtual bool reset();
00038 virtual bool setStatistics(int allEntries,double eqBinEntries,double mean,double rms);
00040 virtual bool fill(double x,double weight);
00042 bool setRms(double rms);
00044 void copyFromAida(const AIDA::IHistogram1D & h);
00046 virtual const CLID& clID() const { return Gaudi::Histogram1D::classID(); }
00047 static const CLID& classID() { return CLID_H1D; }
00052 StreamBuffer& serialize(StreamBuffer& s);
00053
00058 StreamBuffer& serialize(StreamBuffer& s) const;
00059
00060 };
00061 }
00062 #endif // HISTOGRAMSVC_H1D_H