/**  A one line description of the class.
 *
 * #include "XX.h" 
 * -llib
 *
 * A longer description.
 *
 * @see something
 */
#ifndef PIXEL_H
#define PIXEL_H
// SYSTEM INCLUDES
#include 
#include 
#include 
#include 
//
// PROJECT INCLUDES
//
//#include "rootfilehandler.h"
//#include "rootfilehandler.C"
// LOCAL INCLUDES
//
// FORWARD REFERENCES
//
class Pixel
{
public:
// LIFECYCLE
    /** Default constructor.
    */
//    Pixel(int pixelID);
    Pixel(
            int pixelID                 = 0,
            int maxPulsorder            = 1,
            int verbosityLevel          = 0,
            int pixelOverlayXaxisLeft   = 50,
            int pixelOverlayXaxisRight  = 250,
            int bSLMean                 = -1,
            int gainMean                = 10,
            TString options             = ""
        );
//    /** Copy constructor.
//    *
//    * @param from The value to copy to this object.
//    */
//    XX(const XX& from);
    /** Destructor.
    */
    ~Pixel();
// OPERATORS
//    /** Assignment operator.
//    *
//    * @param from THe value to assign to this object.
//    *
//    * @return A reference to this object.
//    */
//    XX&                     operator=(const XX& from);
// OPERATIONS
    void BookPixelHistos();
    void DeletePixelHistos();
    void DrawHistograms(
            TCanvas     *pixelCanvas,   //Array of Canvases
            int         *histoFrameNR   //Array with Canvas Frame numbers
            );
    void BookDistributionHistos();
    void DeleteDistributionHistos();
    void DrawDistributionHistograms(
            TCanvas     *pixelCanvas,   //Array of Canvases
            int         *histoFrameNr   //Array with Canvas Frame numbers
            );
    void SavePixelHistograms(const char *loc_fname, bool);
// ACCESS
// INQUIRY
    int             mChid;
    int             mMaxPulseOrder;
    int             mVerbosityLevel;
    int             mPixelOverlayXaxisLeft;
    int             mPixelOverlayXaxisRight;
    int             mBSLMean;
    int             mGainMean;
    TString         mOptions;
    TH2F**          hMaxOverlay;      //histogrammm for overlay of detected Peaks
    TH2F**          hEdgeOverlay;
    TProfile**      hMaxProfile;      //histogrammm for Profile of detected Peaks
    TProfile**      hEdgeProfile;  //histogrammm for Profile of detected Peaks
    TH1F**          hSlopeRisingEdge;
    TH1F**          hRisingEdgeToMax;
    TH1F**          hPosOfMax;
    TObjArray*      hList;
protected:
private:
};
// INLINE METHODS
//
// EXTERNAL REFERENCES
//
#endif  // _PIXEL_H_