CMS 3D CMS Logo

LMap.h

Go to the documentation of this file.
00001 #ifndef HCALConfigDBTools_XMLTools_LMap_h
00002 #define HCALConfigDBTools_XMLTools_LMap_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     XMLTools
00006 // Class  :     LMap
00007 // 
00019 //
00020 // Original Author:  Gena Kukartsev, kukarzev@fnal.gov
00021 //         Created:  Tue Nov 06 14:30:33 CDT 2007
00022 // $Id: LMap.h,v 1.3 2008/04/16 13:31:25 kukartse Exp $
00023 //
00024 
00025 // system include files
00026 #include<vector>
00027 #include <string.h>
00028 #include <fstream>
00029 #include <boost/shared_ptr.hpp>
00030 
00031 #include "CaloOnlineTools/HcalOnlineDb/interface/ConfigurationDatabase.hh"
00032 #include "DataFormats/HcalDetId/interface/HcalSubdetector.h"
00033 
00034 using namespace std;
00035 using namespace boost;
00036 
00037 class LMapRow
00038 {
00039  public:
00040   LMapRow(){};
00041   ~LMapRow(){};
00042   
00043   int side;
00044   int eta, phi, dphi, depth;
00045   //string det;
00046   HcalSubdetector det;
00047   string rbx;
00048   int wedge, rm, pixel, qie, adc, rm_fi, fi_ch;
00049   int crate, htr; // crate-slot
00050   string fpga;    // top-bottom
00051   int htr_fi;     // fiber
00052   int dcc_sl, spigo, dcc, slb;
00053   string slbin, slbin2, slnam;
00054   int rctcra, rctcar, rctcon;
00055   string rctnam;
00056   int fedid;
00057 
00058   string let_code; // specific to HO
00059 
00060  private:
00061 
00062 };
00063 
00064 class LMapDetId
00065 {
00066  public:
00067   LMapDetId(){};
00068   ~LMapDetId(){};
00069 
00070   int side;
00071   int eta, phi, depth;
00072   string subdetector;
00073 
00074 };
00075 
00076 class LMap
00077 {
00078   
00079  public:
00080     
00081   LMap();
00082   ~LMap();
00083 
00084   // type = "HNEF" or "HO", matters for
00085   int read( string accessor, string type = "HBEF" );
00086   std::map<int,LMapRow> & get_map( void );
00087   
00088  private:
00089   class impl;
00090   shared_ptr<impl> p_impl;
00091 };
00092 
00093 
00094 class LMap_test {
00095 public:
00096   LMap_test();
00097   ~LMap_test(){ }
00098 
00099   int test_read( string accessor, string type="HBEF" );
00100 
00101 private:
00102   shared_ptr<LMap> _lmap;
00103 };
00104 
00105 #endif

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