00001 #ifndef H_FACTORY_H
00002 #define H_FACTORY_H
00003 #include "HTL/P_Histograms_1D.h"
00004 #include "HTL/P_Histograms_2D.h"
00005 #include "HepODBMS/clustering/HepDbApplication.h"
00006
00038 class H_Factory {
00039 protected:
00040 HepRef(ooContObj) histoCont;
00041 HepDbApplication *dbApp;
00042 public:
00044 H_Factory () : histoCont(0), dbApp (0){};
00050 int init (HepDbApplication *sess, char *dbname,
00051 char *contname = 0);
00053 int hintSet ();
00055 const HepRef(ooContObj) container() {return histoCont;}
00056
00058 HepRef(P_Histo1D) Histo1D (const char *a_title, Size n,
00059 double x1, double x2, End_Point_Convention
00060 epc = RIGHT_OPEN);
00061
00063 HepRef(P_Histo1DVar) Histo1DVar(const char *,HTL_STD::vector<float> &,
00064 End_Point_Convention epc = RIGHT_OPEN );
00065
00067 HepRef(P_Histo1DVar) Histo1DVar(const char *,HTL_STD::vector<double> &,
00068 End_Point_Convention epc = RIGHT_OPEN );
00069
00071 HepRef(P_Histo1DVar) Histo1DVar(const char *,P_Points_Vector &,
00072 End_Point_Convention epc = RIGHT_OPEN );
00073
00075 HepRef(P_ProfileHisto1D) ProfileHisto (const char *a_title, Size n,
00076 double x1, double x2, End_Point_Convention
00077 epc = RIGHT_OPEN);
00078
00080 HepRef(P_ProfileHisto1DVar) ProfileHistoVar(const char *,
00081 HTL_STD::vector<float>&,
00082 End_Point_Convention epc = RIGHT_OPEN );
00083
00085 HepRef(P_ProfileHisto1DVar) ProfileHistoVar(const char *,
00086 HTL_STD::vector<double>&,
00087 End_Point_Convention epc = RIGHT_OPEN );
00088
00090 HepRef(P_Histo2D) Histo2D (const char *, Size , double , double , Size ,
00091 double , double , End_Point_Convention
00092 epc1 = RIGHT_OPEN , End_Point_Convention
00093 epc2 = RIGHT_OPEN );
00094
00096 HepRef(P_Histo2DVar) Histo2DVar( const char *, HTL_STD::vector<float>&,
00097 HTL_STD::vector<float>&, End_Point_Convention
00098 epc1 = RIGHT_OPEN, End_Point_Convention
00099 epc2 = RIGHT_OPEN );
00100
00102 HepRef(P_Histo2DVar) Histo2DVar( const char *, HTL_STD::vector<double>&,
00103 HTL_STD::vector<double>&, End_Point_Convention
00104 epc1 = RIGHT_OPEN, End_Point_Convention
00105 epc2 = RIGHT_OPEN );
00106 };
00107
00108 typedef H_Factory HFactory;
00109
00110 #endif //H_FACTORY_H