Go to the documentation of this file.00001
00002
00003 #ifndef DBlmapReader_h
00004 #define DBlmapReader_h
00005
00006 #include <iostream>
00007 #include <sstream>
00008 #include <string>
00009 #include <vector>
00010 #include <stdio.h>
00011 #include <algorithm>
00012
00013 #include "OnlineDB/Oracle/interface/Oracle.h"
00014
00015 #include "CaloOnlineTools/HcalOnlineDb/interface/HCALConfigDB.h"
00016 #include "CalibCalorimetry/HcalTPGAlgos/interface/XMLProcessor.h"
00017 #include "CaloOnlineTools/HcalOnlineDb/interface/ConfigurationDatabase.hh"
00018 #include "CaloOnlineTools/HcalOnlineDb/interface/ConfigurationDatabaseImplOracle.hh"
00019 #include "CaloOnlineTools/HcalOnlineDb/interface/ConfigurationDatabaseImplXMLFile.hh"
00020 #include "CaloOnlineTools/HcalOnlineDb/interface/ConfigurationItemNotFoundException.hh"
00021 #include "DataFormats/HcalDetId/interface/HcalDetId.h"
00022
00023 struct VectorLMAP{
00024
00025 std::vector<int> sideC;
00026 std::vector<int> etaC;
00027 std::vector<int> phiC;
00028
00029 std::vector<int> dphiC;
00030 std::vector<int> depthC;
00031 std::vector<std::string> detC;
00032 std::vector<std::string> rbxC;
00033 std::vector<int> wedgeC;
00034
00035 std::vector<int> sectorC;
00036 std::vector<int> rmC;
00037 std::vector<int> pixelC;
00038 std::vector<int> qieC;
00039 std::vector<int> adcC;
00040
00041 std::vector<int> rm_fiC;
00042 std::vector<int> fi_chC;
00043 std::vector<std::string> let_codeC;
00044 std::vector<int> crateC;
00045 std::vector<int> htrC;
00046
00047 std::vector<std::string> fpgaC;
00048 std::vector<int> htr_fiC;
00049 std::vector<int> dcc_slC;
00050 std::vector<int> spigoC;
00051 std::vector<int> dccC;
00052
00053 std::vector<int> slbC;
00054 std::vector<std::string> slbinC;
00055 std::vector<std::string> slbin2C;
00056 std::vector<std::string> slnamC;
00057 std::vector<int> rctcraC;
00058
00059 std::vector<int> rctcarC;
00060 std::vector<int> rctconC;
00061 std::vector<std::string> rctnamC;
00062 std::vector<int> fedidC;
00063 std::vector<int> geoC;
00064
00065 std::vector<int> blockC;
00066 std::vector<int> lcC;
00067
00068 std::vector<int> orderC;
00069 std::vector<int> versionC;
00070 };
00071
00072 bool SortComp(int x, int y);
00073 VectorLMAP* SortByHardware(VectorLMAP* lmapHBEFO);
00074 VectorLMAP* SortByGeometry(VectorLMAP* lmapHBEFO);
00075
00076 void printHBHEHF(int channel, FILE * HBEFmap, VectorLMAP * lmap);
00077 void printHO(int channel, FILE * HOmap, VectorLMAP * lmap);
00078 void printEMAProw(int channel, FILE * emap, VectorLMAP * lmap);
00079
00080 class DBlmapReader{
00081 public:
00082 DBlmapReader(){ };
00083 void lrTestFunction(void);
00084 VectorLMAP* GetLMAP(int version);
00085 void PrintLMAP(FILE* HBEFmap, FILE* HOmap, VectorLMAP* lmapHBEFO);
00086 void PrintEMAPfromLMAP(FILE* emap, VectorLMAP* lmapHBEFO);
00087 };
00088
00089 #endif