00001 #ifndef HCALConfigDBTools_XMLTools_LMapLoader_h 00002 #define HCALConfigDBTools_XMLTools_LMapLoader_h 00003 // -*- C++ -*- 00004 // 00005 // Package: XMLTools 00006 // Class : LMapLoader 00007 // 00016 // 00017 // Original Author: Aram Avetisyan avetisya@fnal.gov 00018 // Created: Tue Nov 14 15:05:33 CDT 2007 00019 // $Id: LMapLoader.h,v 1.3 2010/08/06 20:24:10 wmtan Exp $ 00020 // 00021 00022 // system include files 00023 00024 // user include files 00025 #include "CalibCalorimetry/HcalTPGAlgos/interface/XMLDOMBlock.h" 00026 #include "CalibCalorimetry/HcalTPGAlgos/interface/XMLProcessor.h" 00027 00028 // forward declarations 00029 00030 class LMapLoader : public XMLDOMBlock 00031 { 00032 00033 public: 00034 00035 //structs 00036 00037 typedef struct _LMapRowHBEF 00038 { 00039 int side; 00040 int eta; 00041 int phi; 00042 int dphi; 00043 int depth; 00044 std::string det; 00045 std::string rbx; 00046 int wedge; 00047 int rm; 00048 int pixel; 00049 int qie; 00050 int adc; 00051 int rm_fi; 00052 int fi_ch; 00053 int crate; 00054 int htr; 00055 std::string fpga; 00056 int htr_fi; 00057 int dcc_sl; 00058 int spigo; 00059 int dcc; 00060 int slb; 00061 std::string slbin; 00062 std::string slbin2; 00063 std::string slnam; 00064 int rctcra; 00065 int rctcar; 00066 int rctcon; 00067 std::string rctnam; 00068 int fedid; 00069 } LMapRowHBEF; 00070 00071 typedef struct _LMapRowHO 00072 { 00073 int sideO; 00074 int etaO; 00075 int phiO; 00076 int dphiO; 00077 int depthO; 00078 std::string detO; 00079 std::string rbxO; 00080 int sectorO; 00081 int rmO; 00082 int pixelO; 00083 int qieO; 00084 int adcO; 00085 int rm_fiO; 00086 int fi_chO; 00087 std::string let_codeO; 00088 int crateO; 00089 int htrO; 00090 std::string fpgaO; 00091 int htr_fiO; 00092 int dcc_slO; 00093 int spigoO; 00094 int dccO; 00095 int fedidO; 00096 } LMapRowHO; 00097 00098 LMapLoader(); 00099 LMapLoader( std::string templateLoaderBase ); 00100 virtual ~LMapLoader(); 00101 00102 // ---------- const member functions --------------------- 00103 00104 // ---------- static member functions -------------------- 00105 00106 // ---------- member functions --------------------------- 00107 int createLMapHBEFXMLBase( void ); 00108 int addLMapHBEFDataset( LMapRowHBEF * row, std::string templateFileName ); 00109 int addLMapHODataset( LMapRowHO * row, std::string templateFileName ); 00110 00111 private: 00112 LMapLoader(const LMapLoader&); // stop default 00113 00114 const LMapLoader& operator=(const LMapLoader&); // stop default 00115 00116 // ---------- member data -------------------------------- 00117 00118 }; 00119 00120 00121 #endif