7 #ifndef AIDA_IHISTOGRAMFACTORY_H
8 #define AIDA_IHISTOGRAMFACTORY_H 1
67 const std::string & title,
69 const std::string & options =
"") = 0;
111 const std::string & title,
113 const std::string & options =
"") = 0;
155 const std::string & title,
157 const std::string & options =
"") = 0;
200 const std::string & title,
204 const std::string & options =
"") = 0;
222 double upperEdge) = 0;
238 const std::string & title,
239 const std::vector<double> & binEdges,
240 const std::string & options =
"") = 0;
274 const std::string & title,
281 const std::string & options =
"") = 0;
305 double upperEdgeY) = 0;
322 const std::string & title,
323 const std::vector<double> & binEdgesX,
324 const std::vector<double> & binEdgesY,
325 const std::string & options =
"") = 0;
362 const std::string & title,
372 const std::string & options =
"") = 0;
402 double upperEdgeZ) = 0;
420 const std::string & title,
421 const std::vector<double> & binEdgesX,
422 const std::vector<double> & binEdgesY,
423 const std::vector<double> & binEdgesZ,
424 const std::string & options =
"") = 0;
454 const std::string & title,
458 const std::string & options =
"") = 0;
477 const std::string & title,
483 const std::string & options =
"") = 0;
498 const std::string & title,
499 const std::vector<double> & binEdges,
500 const std::string & options =
"") = 0;
517 const std::string & title,
518 const std::vector<double> & binEdges,
521 const std::string & options =
"") = 0;
539 double upperEdge) = 0;
561 double upperValue) = 0;
594 const std::string & title,
601 const std::string & options =
"") = 0;
623 const std::string & title,
632 const std::string & options =
"") = 0;
648 const std::string & title,
649 const std::vector<double> & binEdgesX,
650 const std::vector<double> & binEdgesY,
651 const std::string & options =
"") = 0;
669 const std::string & title,
670 const std::vector<double> & binEdgesX,
671 const std::vector<double> & binEdgesY,
674 const std::string & options =
"") = 0;
698 double upperEdgeY) = 0;
726 double upperValue) = 0;
virtual IHistogram2D * sliceXZ(const std::string &path, const IHistogram3D &hist, int index1, int index2)=0
Create an IHistogram2D by slicing an IHistogram3D perpendicular to the Y axis, between "index1" and "...
virtual IHistogram1D * projectionY(const std::string &path, const IHistogram2D &hist)=0
Create an IHistogram1D by projecting an IHistogram2D along its y axis.
virtual IHistogram2D * sliceYZ(const std::string &path, const IHistogram3D &hist, int index1, int index2)=0
Create an IHistogram2D by slicing an IHistogram3D perpendicular to the X axis, between "index1" and "...
User level interface to a 1D Cloud.
Definition: ICloud1D.h:30
virtual ICloud1D * createCloud1D(const std::string &path, const std::string &title, int nMax=-1, const std::string &options="")=0
Create a ICloud1D, an unbinned 1-dimensional histogram.
User level interface to a 1-dimensional profile histogram.
Definition: IProfile1D.h:28
virtual ICloud1D * createCopy(const std::string &path, const ICloud1D &cloud)=0
Create a copy of an ICloud1D.
virtual IHistogram1D * divide(const std::string &path, const IHistogram1D &hist1, const IHistogram1D &hist2)=0
Create an IHistogram1D by dividing two IHistogram1D.
virtual IHistogram3D * createHistogram3D(const std::string &path, const std::string &title, int nBinsX, double lowerEdgeX, double upperEdgeX, int nBinsY, double lowerEdgeY, double upperEdgeY, int nBinsZ, double lowerEdgeZ, double upperEdgeZ, const std::string &options="")=0
Create a IHistogram3D.
virtual IHistogram2D * sliceXY(const std::string &path, const IHistogram3D &hist, int index1, int index2)=0
Create an IHistogram2D by slicing an IHistogram3D perpendicular to the Z axis, between "index1" and "...
User level interface to 1D Histogram.
Definition: IHistogram1D.h:28
virtual ICloud3D * createCloud3D(const std::string &path, const std::string &title, int nMax=-1, const std::string &options="")=0
Create a ICloud3D, an unbinned 3-dimensional histogram.
User level interface to 3D Histogram.
Definition: IHistogram3D.h:28
virtual IHistogram1D * createHistogram1D(const std::string &path, const std::string &title, int nBins, double lowerEdge, double upperEdge, const std::string &options="")=0
Create a IHistogram1D.
virtual IHistogram2D * projectionXY(const std::string &path, const IHistogram3D &hist)=0
Create an IHistogram2D by projecting an IHistogram3D on the x-y plane.
virtual IHistogram1D * add(const std::string &path, const IHistogram1D &hist1, const IHistogram1D &hist2)=0
Create an IHistogram1D by adding two IHistogram1D.
virtual ICloud2D * createCloud2D(const std::string &path, const std::string &title, int nMax=-1, const std::string &options="")=0
Create a ICloud2D, an unbinned 2-dimensional histogram.
virtual IProfile2D * createProfile2D(const std::string &path, const std::string &title, int nBinsX, double lowerEdgeX, double upperEdgeX, int nBinsY, double lowerEdgeY, double upperEdgeY, const std::string &options="")=0
Create a IProfile2D.
class IAnnotation;
Definition: IBaseHistogram.h:29
User level interface to a 2D Cloud.
Definition: ICloud2D.h:30
virtual IHistogram1D * multiply(const std::string &path, const IHistogram1D &hist1, const IHistogram1D &hist2)=0
Create an IHistogram1D by multiplying two IHistogram1D.
virtual IHistogram2D * projectionXZ(const std::string &path, const IHistogram3D &hist)=0
Create an IHistogram2D by projecting an IHistogram3D on the x-z plane.
virtual IHistogram1D * projectionX(const std::string &path, const IHistogram2D &hist)=0
Create an IHistogram1D by projecting an IHistogram2D along its x axis.
User level interface for factory classes of Histograms (binned, unbinned, and profile) The created ob...
Definition: IHistogramFactory.h:38
virtual IProfile1D * createProfile1D(const std::string &path, const std::string &title, int nBins, double lowerEdge, double upperEdge, const std::string &options="")=0
Create a IProfile1D.
User level interface to a 2-dimensional profile histogram.
Definition: IProfile2D.h:28
User level interface to 2D Histogram.
Definition: IHistogram2D.h:28
virtual IHistogram1D * sliceY(const std::string &path, const IHistogram2D &hist, int index)=0
Create an IHistogram1D by slicing an IHistogram2D parallel to the x axis at a given bin...
virtual IHistogram1D * sliceX(const std::string &path, const IHistogram2D &hist, int index)=0
Create an IHistogram1D by slicing an IHistogram2D parallel to the y axis at a given bin...
virtual ~IHistogramFactory()
Destructor.
Definition: IHistogramFactory.h:42
virtual IHistogram1D * subtract(const std::string &path, const IHistogram1D &hist1, const IHistogram1D &hist2)=0
Create an IHistogram1D by subtracting two IHistogram1D.
virtual IHistogram2D * projectionYZ(const std::string &path, const IHistogram3D &hist)=0
Create an IHistogram2D by projecting an IHistogram3D on the y-z plane.
virtual bool destroy(IBaseHistogram *hist)=0
Destroy an IBaseHistogram ogject.
User level interface to a 3D Cloud.
Definition: ICloud3D.h:30
virtual IHistogram2D * createHistogram2D(const std::string &path, const std::string &title, int nBinsX, double lowerEdgeX, double upperEdgeX, int nBinsY, double lowerEdgeY, double upperEdgeY, const std::string &options="")=0
Create a IHistogram2D.