rivet is hosted by Hepforge, IPPP Durham
RivetYODA.hh
Go to the documentation of this file.
00001 #ifndef RIVET_RIVETYODA_HH
00002 #define RIVET_RIVETYODA_HH
00003 
00004 /// @author Andy Buckley
00005 /// @date   2009-01-30
00006 /// @author David Grellscheid
00007 /// @date   2011-07-18
00008 
00009 #include "Rivet/Config/RivetCommon.hh"
00010 #include "Rivet/Tools/RivetBoost.hh"
00011 
00012 #include "YODA/AnalysisObject.h"
00013 #include "YODA/WriterYODA.h"
00014 #include "YODA/Counter.h"
00015 #include "YODA/Histo1D.h"
00016 #include "YODA/Histo2D.h"
00017 #include "YODA/Profile1D.h"
00018 #include "YODA/Profile2D.h"
00019 #include "YODA/Scatter2D.h"
00020 #include "YODA/Point2D.h"
00021 #include <map>
00022 
00023 namespace Rivet {
00024 
00025 
00026   typedef shared_ptr<YODA::AnalysisObject> AnalysisObjectPtr;
00027   typedef shared_ptr<YODA::Counter> CounterPtr;
00028   typedef shared_ptr<YODA::Histo1D> Histo1DPtr;
00029   typedef shared_ptr<YODA::Histo2D> Histo2DPtr;
00030   typedef shared_ptr<YODA::Profile1D> Profile1DPtr;
00031   typedef shared_ptr<YODA::Profile2D> Profile2DPtr;
00032   typedef shared_ptr<YODA::Scatter2D> Scatter2DPtr;
00033   typedef shared_ptr<YODA::Scatter3D> Scatter3DPtr;
00034 
00035   using YODA::WriterYODA;
00036   using YODA::Counter;
00037   using YODA::Histo1D;
00038   using YODA::HistoBin1D;
00039   using YODA::Histo2D;
00040   using YODA::HistoBin2D;
00041   using YODA::Profile1D;
00042   using YODA::ProfileBin1D;
00043   using YODA::Profile2D;
00044   using YODA::ProfileBin2D;
00045   using YODA::Scatter1D;
00046   using YODA::Point1D;
00047   using YODA::Scatter2D;
00048   using YODA::Point2D;
00049   using YODA::Scatter3D;
00050   using YODA::Point3D;
00051 
00052   /// Function to get a map of all the refdata in a paper with the
00053   /// given @a papername.
00054   map<string, Scatter2DPtr> getRefData(const string& papername);
00055 
00056   /// @todo Also provide a Scatter3D getRefData() version?
00057 
00058   /// Get the file system path to the reference file for this paper.
00059   string getDatafilePath(const string& papername);
00060 
00061   /// Return the integral over the histogram bins
00062   /// @deprecated Prefer to directly use the histo's integral() method.
00063   inline double integral(Histo1DPtr histo) {
00064     return histo->integral();
00065   }
00066 
00067 
00068 }
00069 
00070 #endif