CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/CaloOnlineTools/HcalOnlineDb/interface/DBlmapReader.h

Go to the documentation of this file.
00001 // Aram Avetisyan; Brown University; February 15, 2008
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