CMS 3D CMS Logo

SiStripWebInterface.h

Go to the documentation of this file.
00001 #ifndef _SiStripWebInterface_h_
00002 #define _SiStripWebInterface_h_
00003 
00004 #include "DQM/TrackerCommon/interface/WebInterface.h"
00005 #include "DQMServices/Core/interface/MonitorElement.h"
00006 #include "FWCore/Framework/interface/ESHandle.h"
00007 
00008 class DQMStore;
00009 class SiStripActionExecutorQTest;
00010 class SiStripInformationExtractor;
00011 class SiStripDetCabling;
00012 
00013 class SiStripWebInterface 
00014 {
00015  public:
00016 
00017  
00018   enum SiStripActionType{NoAction=0, Summary=2, 
00019                          PlotSingleModuleHistos=5, PlotGlobalHistos=6,
00020                          PlotHistogramFromPath=7, PlotTkMapHistogram=8,
00021                          PlotHistogramFromLayout=9,
00022                          CreatePlots=10};
00023 
00024   SiStripWebInterface(DQMStore* dqm_store);
00025  ~SiStripWebInterface();
00026 
00027   
00028  
00029   //  void setCabling(const edm::ESHandle<SiStripDetCabling>& detcabling) { detCabling_ = detcabling;}
00030 
00031   void handleAnalyserRequest(xgi::Input* in,xgi::Output* out, const edm::ESHandle<SiStripDetCabling>& detcabling, int niter);
00032 
00033 
00034   SiStripActionType getActionFlag() {return theActionFlag;}
00035   void setActionFlag(SiStripActionType flag) {theActionFlag = flag;}
00036   void performAction();
00037   unsigned int getNumberOfConDBPlotRequest(){ return condDBRequestList_.size();}
00038   void getConDBPlotParameters(unsigned int ival, uint32_t &det_id, std::string& subdet_type, 
00039                               uint32_t&   subdet_side, uint32_t& layer_number);    
00040   void clearConDBPlotRequests() { condDBRequestList_.clear(); }
00041 
00042       
00043   private:
00044 
00045   std::string get_from_multimap(std::multimap<std::string, std::string> &mymap, std::string key);
00046 
00047   SiStripActionType theActionFlag;
00048   SiStripActionExecutorQTest* actionExecutor_;
00049   SiStripInformationExtractor* infoExtractor_;
00050 
00051   void returnReplyXml(xgi::Output * out, const std::string& name, const std::string& comment);
00052 
00053   std::multimap<std::string, std::string> requestMap_;
00054 
00055   DQMStore* dqmStore_;
00056 
00057   bool condDBFlag_;
00058 
00059 
00060   struct CondDBPlotParameter { 
00061     uint32_t    detId;
00062     std::string type;
00063     uint32_t    side;
00064     uint32_t    layer;    
00065      
00066   };
00067 
00068   std::vector<CondDBPlotParameter> condDBRequestList_;
00069  
00070   protected:
00071 
00072 
00073 };
00074 
00075 #endif

Generated on Tue Jun 9 17:33:34 2009 for CMSSW by  doxygen 1.5.4