CMS 3D CMS Logo

HcalLutManager.h

Go to the documentation of this file.
00001 #ifndef HcalLutManager_h
00002 #define HcalLutManager_h
00003 
00012 #include <iostream>
00013 #include <string>
00014 #include <vector>
00015 #include <map>
00016 #include "CaloOnlineTools/HcalOnlineDb/interface/LutXml.h"
00017 #include "DataFormats/HcalDetId/interface/HcalSubdetector.h"
00018 
00019 class XMLDOMBlock;
00020 
00021 class HcalLutSet{
00022  public:
00023   string label;
00024   std::vector<string> subdet;
00025   std::vector<int> eta_min, eta_max, phi_min, phi_max, depth_min, depth_max;
00026   std::vector<vector<unsigned int> > lut;
00027 };
00028 
00029 
00030 
00031 class HcalLutManager{
00032  public:
00033   
00034   HcalLutManager( );
00035   ~HcalLutManager( );
00036 
00037   void init( void );
00038   std::string & getLutXml( std::vector<unsigned int> & _lut );
00039   std::string getLutXmlFromAsciiMaster( string _filename, string _tag, int _crate, bool split_by_crate = true );
00040   HcalLutSet getLutSetFromFile( string _filename );
00041 
00042   static int getInt( string number );
00043   static HcalSubdetector get_subdetector( string _subdet );
00044   static string get_time_stamp( time_t _time );
00045 
00046  protected:
00047   
00048   LutXml * lut_xml;
00049 
00050 };
00051 
00052 
00053 class HcalLutManager_test{
00054  public:
00055   
00056   static int getLutXml_test( std::vector<unsigned int> & _lut ){}
00057   static int getLutSetFromFile_test( string _filename );
00058 
00059   static int getInt_test( string number );
00060 
00061  protected:
00062   
00063   LutXml * lut_xml;
00064 
00065 };
00066 #endif

Generated on Tue Jun 9 17:25:54 2009 for CMSSW by  doxygen 1.5.4