text: #ifndef HcalQLPlotHistoMgr_included
  #define HcalQLPlotHistoMgr_included 1
  
  #include "TDirectory.h"
  #include "TH1.h"
  #include "DataFormats/DetId/interface/DetId.h"
  #include "DataFormats/HcalDetId/interface/HcalDetId.h"
  #include "DataFormats/HcalDetId/interface/HcalCalibDetId.h"
  #include "DataFormats/HcalDetId/interface/HcalElectronicsId.h"
  #include "FWCore/ParameterSet/interface/ParameterSet.h"
  
  class HcalQLPlotHistoMgr {
  public:
    enum HistType { ENERGY=0, TIME=1, PULSE=2, ADC=3 };
    enum EventType { UNKNOWN=0, PEDESTAL=1, LED=2, LASER=3, BEAM=4 };
    HcalQLPlotHistoMgr(TDirectory* parent, const edm::ParameterSet& histoParams);
  
    TH1* GetAHistogram(const HcalDetId& id,
  		     const HcalElectronicsId& eid,
  		     HistType ht, EventType et);
  
    TH1* GetAHistogram(const HcalCalibDetId& id,
  		     const HcalElectronicsId& eid,
  		     HistType ht, EventType et);
  
    static std::string nameForFlavor(HistType ht);
    static std::string nameForEvent(EventType et);
  private:
    TH1* GetAHistogramImpl(const char *name, HistType ht, EventType et);
  
    TDirectory* pedHistDir;
    TDirectory* ledHistDir;
    TDirectory* laserHistDir;
    TDirectory* beamHistDir;
    TDirectory* ctrHistDir;
    TDirectory* otherHistDir;
    edm::ParameterSet histoParams_;
  };
  
  #endif
  