\section{A\-I\-D\-A\-:\-:I\-Axis Class Reference}
\label{classAIDA_1_1IAxis}\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}}


An \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis} represents a binned histogram axis.  




{\ttfamily \#include $<$I\-Axis.\-h$>$}

Inheritance diagram for A\-I\-D\-A\-:\-:I\-Axis\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classAIDA_1_1IAxis}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum \{ {\bfseries U\-N\-D\-E\-R\-F\-L\-O\-W\-\_\-\-B\-I\-N} = -\/2, 
{\bfseries O\-V\-E\-R\-F\-L\-O\-W\-\_\-\-B\-I\-N} = -\/1
 \}
\begin{DoxyCompactList}\small\item\em Constants specifying the underflow and the overflow bin. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual {\bf $\sim$\-I\-Axis} ()\label{classAIDA_1_1IAxis_a50718bf95e4a0a4574774f93d0b21786}

\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
virtual bool {\bf is\-Fixed\-Binning} () const =0
\begin{DoxyCompactList}\small\item\em Check if the \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis} has fixed binning, i.\-e. \end{DoxyCompactList}\item 
virtual double {\bf lower\-Edge} () const =0
\begin{DoxyCompactList}\small\item\em Get the lower edge of the \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}. \end{DoxyCompactList}\item 
virtual double {\bf upper\-Edge} () const =0
\begin{DoxyCompactList}\small\item\em Get the upper edge of the \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}. \end{DoxyCompactList}\item 
virtual int {\bf bins} () const =0
\begin{DoxyCompactList}\small\item\em The number of bins (excluding underflow and overflow) on the \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}. \end{DoxyCompactList}\item 
virtual double {\bf bin\-Lower\-Edge} (int index) const =0
\begin{DoxyCompactList}\small\item\em Get the lower edge of the specified bin. \end{DoxyCompactList}\item 
virtual double {\bf bin\-Upper\-Edge} (int index) const =0
\begin{DoxyCompactList}\small\item\em Get the upper edge of the specified bin. \end{DoxyCompactList}\item 
virtual double {\bf bin\-Width} (int index) const =0
\begin{DoxyCompactList}\small\item\em Get the width of the specified bin. \end{DoxyCompactList}\item 
virtual int {\bf coord\-To\-Index} (double coord) const =0
\begin{DoxyCompactList}\small\item\em Convert a coordinate on the axis to a bin number. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
An \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis} represents a binned histogram axis. 

A 1\-D Histogram would have one Axis representing the X axis, while a 2\-D Histogram would have two axes representing the X and Y Axis.

\begin{DoxyAuthor}{Author}
The \doxyref{A\-I\-D\-A}{p.}{namespaceAIDA} team ({\tt http\-://aida.\-freehep.\-org/}) 
\end{DoxyAuthor}


\subsection{Member Enumeration Documentation}
\subsubsection[{anonymous enum}]{\setlength{\rightskip}{0pt plus 5cm}anonymous enum}\label{classAIDA_1_1IAxis_a21b0cf9a748152ab2ef472560ec12f6f}


Constants specifying the underflow and the overflow bin. 

They can be passed to any method accepting a bin number. 

\subsection{Member Function Documentation}
\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}!bin\-Lower\-Edge@{bin\-Lower\-Edge}}
\index{bin\-Lower\-Edge@{bin\-Lower\-Edge}!AIDA::IAxis@{A\-I\-D\-A\-::\-I\-Axis}}
\subsubsection[{bin\-Lower\-Edge}]{\setlength{\rightskip}{0pt plus 5cm}virtual double A\-I\-D\-A\-::\-I\-Axis\-::bin\-Lower\-Edge (
\begin{DoxyParamCaption}
\item[{int}]{index}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classAIDA_1_1IAxis_a87ba09cf3b8e46918032ee397249c3fb}


Get the lower edge of the specified bin. 


\begin{DoxyParams}{Parameters}
{\em index} & The bin number\-: 0 to \doxyref{bins()}{p.}{classAIDA_1_1IAxis_a671c8c779afe386c21b863c41bee58fe}-\/1 for the in-\/range bins or O\-V\-E\-R\-F\-L\-O\-W or U\-N\-D\-E\-R\-F\-L\-O\-W. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The lower edge of the corresponding bin; for the underflow bin this is {\ttfamily Double.\-N\-E\-G\-A\-T\-I\-V\-E\-\_\-\-I\-N\-F\-I\-N\-I\-T\-Y}. 
\end{DoxyReturn}


Implemented in {\bf A\-I\-D\-A\-::\-I\-Axis\-R\-O\-O\-T} \doxyref{}{p.}{classAIDA_1_1IAxisROOT_a12ad1130a80e10eeb59406213defd6e7}.



Referenced by A\-I\-D\-A\-::\-I\-Histogram1\-D\-R\-O\-O\-T\-::print\-Contents(), A\-I\-D\-A\-::\-I\-Histogram2\-D\-R\-O\-O\-T\-::print\-Contents(), and A\-I\-D\-A\-::\-I\-Histogram3\-D\-R\-O\-O\-T\-::print\-Contents().

\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}!bins@{bins}}
\index{bins@{bins}!AIDA::IAxis@{A\-I\-D\-A\-::\-I\-Axis}}
\subsubsection[{bins}]{\setlength{\rightskip}{0pt plus 5cm}virtual int A\-I\-D\-A\-::\-I\-Axis\-::bins (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classAIDA_1_1IAxis_a671c8c779afe386c21b863c41bee58fe}


The number of bins (excluding underflow and overflow) on the \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}. 

\begin{DoxyReturn}{Returns}
The \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}'s number of bins. 
\end{DoxyReturn}


Implemented in {\bf A\-I\-D\-A\-::\-I\-Axis\-R\-O\-O\-T} \doxyref{}{p.}{classAIDA_1_1IAxisROOT_a4a12b54aa69dab4095785a22466209f5}.



Referenced by A\-I\-D\-A\-::\-I\-Histogram2\-D\-R\-O\-O\-T\-::add(), A\-I\-D\-A\-::\-I\-Histogram1\-D\-R\-O\-O\-T\-::add(), A\-I\-D\-A\-::\-I\-Histogram3\-D\-R\-O\-O\-T\-::add(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::add(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::create\-Copy(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::divide(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::multiply(), A\-I\-D\-A\-::\-I\-Histogram1\-D\-R\-O\-O\-T\-::print\-Contents(), A\-I\-D\-A\-::\-I\-Histogram2\-D\-R\-O\-O\-T\-::print\-Contents(), A\-I\-D\-A\-::\-I\-Histogram3\-D\-R\-O\-O\-T\-::print\-Contents(), and A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::subtract().

\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}!bin\-Upper\-Edge@{bin\-Upper\-Edge}}
\index{bin\-Upper\-Edge@{bin\-Upper\-Edge}!AIDA::IAxis@{A\-I\-D\-A\-::\-I\-Axis}}
\subsubsection[{bin\-Upper\-Edge}]{\setlength{\rightskip}{0pt plus 5cm}virtual double A\-I\-D\-A\-::\-I\-Axis\-::bin\-Upper\-Edge (
\begin{DoxyParamCaption}
\item[{int}]{index}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classAIDA_1_1IAxis_abf80eceb9725ba3b80ff645962627411}


Get the upper edge of the specified bin. 


\begin{DoxyParams}{Parameters}
{\em index} & The bin number\-: 0 to \doxyref{bins()}{p.}{classAIDA_1_1IAxis_a671c8c779afe386c21b863c41bee58fe}-\/1 for the in-\/range bins or O\-V\-E\-R\-F\-L\-O\-W or U\-N\-D\-E\-R\-F\-L\-O\-W. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The upper edge of the corresponding bin; for the overflow bin this is {\ttfamily Double.\-P\-O\-S\-I\-T\-I\-V\-E\-\_\-\-I\-N\-F\-I\-N\-I\-T\-Y}. 
\end{DoxyReturn}


Implemented in {\bf A\-I\-D\-A\-::\-I\-Axis\-R\-O\-O\-T} \doxyref{}{p.}{classAIDA_1_1IAxisROOT_a4f12702c85c089e2b89f4b151f2b0911}.

\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}!bin\-Width@{bin\-Width}}
\index{bin\-Width@{bin\-Width}!AIDA::IAxis@{A\-I\-D\-A\-::\-I\-Axis}}
\subsubsection[{bin\-Width}]{\setlength{\rightskip}{0pt plus 5cm}virtual double A\-I\-D\-A\-::\-I\-Axis\-::bin\-Width (
\begin{DoxyParamCaption}
\item[{int}]{index}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classAIDA_1_1IAxis_a80486cce8a3e1009626d429a5811e40d}


Get the width of the specified bin. 


\begin{DoxyParams}{Parameters}
{\em index} & The bin number\-: 0 to \doxyref{bins()}{p.}{classAIDA_1_1IAxis_a671c8c779afe386c21b863c41bee58fe}-\/1) for the in-\/range bins or O\-V\-E\-R\-F\-L\-O\-W or U\-N\-D\-E\-R\-F\-L\-O\-W. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The width of the corresponding bin. 
\end{DoxyReturn}


Implemented in {\bf A\-I\-D\-A\-::\-I\-Axis\-R\-O\-O\-T} \doxyref{}{p.}{classAIDA_1_1IAxisROOT_aaf346f9b6b775e182ad2069720e136ac}.

\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}!coord\-To\-Index@{coord\-To\-Index}}
\index{coord\-To\-Index@{coord\-To\-Index}!AIDA::IAxis@{A\-I\-D\-A\-::\-I\-Axis}}
\subsubsection[{coord\-To\-Index}]{\setlength{\rightskip}{0pt plus 5cm}virtual int A\-I\-D\-A\-::\-I\-Axis\-::coord\-To\-Index (
\begin{DoxyParamCaption}
\item[{double}]{coord}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classAIDA_1_1IAxis_a32524425e3535b3984316defe7fb18c9}


Convert a coordinate on the axis to a bin number. 

If the coordinate is less than the lower\-Edge U\-N\-D\-E\-R\-F\-L\-O\-W is returned; if the coordinate is greater or equal to the upper\-Edge O\-V\-E\-R\-F\-L\-O\-W is returned. 
\begin{DoxyParams}{Parameters}
{\em coord} & The coordinate to be converted. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The corresponding bin number. 
\end{DoxyReturn}


Implemented in {\bf A\-I\-D\-A\-::\-I\-Axis\-R\-O\-O\-T} \doxyref{}{p.}{classAIDA_1_1IAxisROOT_ae31130a6a5da206b3a1cd44562c74dcc}.

\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}!is\-Fixed\-Binning@{is\-Fixed\-Binning}}
\index{is\-Fixed\-Binning@{is\-Fixed\-Binning}!AIDA::IAxis@{A\-I\-D\-A\-::\-I\-Axis}}
\subsubsection[{is\-Fixed\-Binning}]{\setlength{\rightskip}{0pt plus 5cm}virtual bool A\-I\-D\-A\-::\-I\-Axis\-::is\-Fixed\-Binning (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classAIDA_1_1IAxis_a5120300cab20eeb47f3a62f674f9ba29}


Check if the \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis} has fixed binning, i.\-e. 

if all the bins have the same width. \begin{DoxyReturn}{Returns}
{\ttfamily true} if the binning is fixed, {\ttfamily false} otherwise. 
\end{DoxyReturn}


Implemented in {\bf A\-I\-D\-A\-::\-I\-Axis\-R\-O\-O\-T} \doxyref{}{p.}{classAIDA_1_1IAxisROOT_a219ede1a882719470238c8973b0611e1}.

\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}!lower\-Edge@{lower\-Edge}}
\index{lower\-Edge@{lower\-Edge}!AIDA::IAxis@{A\-I\-D\-A\-::\-I\-Axis}}
\subsubsection[{lower\-Edge}]{\setlength{\rightskip}{0pt plus 5cm}virtual double A\-I\-D\-A\-::\-I\-Axis\-::lower\-Edge (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classAIDA_1_1IAxis_a7f5e714b0f2b0ad190c4003de39d64f5}


Get the lower edge of the \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}. 

\begin{DoxyReturn}{Returns}
The \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}'s lower edge. 
\end{DoxyReturn}


Implemented in {\bf A\-I\-D\-A\-::\-I\-Axis\-R\-O\-O\-T} \doxyref{}{p.}{classAIDA_1_1IAxisROOT_a54388ef8faa5f68cef874b3cb75793dd}.



Referenced by A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::add(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::create\-Copy(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::divide(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::multiply(), A\-I\-D\-A\-::\-I\-Histogram1\-D\-R\-O\-O\-T\-::print\-Contents(), A\-I\-D\-A\-::\-I\-Histogram2\-D\-R\-O\-O\-T\-::print\-Contents(), A\-I\-D\-A\-::\-I\-Histogram3\-D\-R\-O\-O\-T\-::print\-Contents(), and A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::subtract().

\index{A\-I\-D\-A\-::\-I\-Axis@{A\-I\-D\-A\-::\-I\-Axis}!upper\-Edge@{upper\-Edge}}
\index{upper\-Edge@{upper\-Edge}!AIDA::IAxis@{A\-I\-D\-A\-::\-I\-Axis}}
\subsubsection[{upper\-Edge}]{\setlength{\rightskip}{0pt plus 5cm}virtual double A\-I\-D\-A\-::\-I\-Axis\-::upper\-Edge (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classAIDA_1_1IAxis_ad7ea62c7771f8f68170a497e5b15ec2d}


Get the upper edge of the \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}. 

\begin{DoxyReturn}{Returns}
The \doxyref{I\-Axis}{p.}{classAIDA_1_1IAxis}'s upper edge. 
\end{DoxyReturn}


Implemented in {\bf A\-I\-D\-A\-::\-I\-Axis\-R\-O\-O\-T} \doxyref{}{p.}{classAIDA_1_1IAxisROOT_a806a8c77154e31de1add79540936016e}.



Referenced by A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::add(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::create\-Copy(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::divide(), A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::multiply(), A\-I\-D\-A\-::\-I\-Histogram1\-D\-R\-O\-O\-T\-::print\-Contents(), A\-I\-D\-A\-::\-I\-Histogram2\-D\-R\-O\-O\-T\-::print\-Contents(), A\-I\-D\-A\-::\-I\-Histogram3\-D\-R\-O\-O\-T\-::print\-Contents(), and A\-I\-D\-A\-::\-I\-Histogram\-Factory\-R\-O\-O\-T\-::subtract().



The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
I\-Axis.\-h\end{DoxyCompactItemize}
