00001 #ifndef ANP_DRAWUTIL_H
00002 #define ANP_DRAWUTIL_H
00003
00004
00005 #include <string>
00006
00007
00008 #include "Registry/Registry.h"
00009 #include "Validity/VldContext.h"
00010
00011
00012 #include "PhysicsNtuple/Record.h"
00013
00014 class TPad;
00015 class TGraph;
00016 class TH1;
00017 class TH2;
00018
00019 namespace Anp
00020 {
00021 namespace Draw
00022 {
00023 typedef std::vector<Anp::StripIter> SVec;
00024 typedef SVec::iterator SIterator;
00025 typedef SVec::const_iterator SIter;
00026
00027 typedef std::vector<Anp::StdHepIter> HepVec;
00028 typedef HepVec::iterator HepIterator;
00029 typedef HepVec::const_iterator HepIter;
00030
00031 void Config(TPad *pad, const std::string &prefix, const Registry ®);
00032 void Config(TH1 *h, const std::string &prefix, const Registry ®);
00033
00034 TH2* CreateTH2(const std::string &prefix, const Registry ®, const Header &header);
00035 TGraph* CreateTGraph(const std::string &prefix, const Registry ®);
00036
00037 double Read(const std::string &key, double pvalue, const Registry ®);
00038 int Read(const std::string &key, int pvalue, const Registry ®);
00039 const std::string Read(const std::string &key, const std::string &pvalue, const Registry ®);
00040
00041 int Read(const Record &record, HepVec &hvec, int beg, int end);
00042
00043 const VldContext GetValidity(const Header &header);
00044 }
00045 }
00046
00047 #endif