CMS 3D CMS Logo

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

Go to the documentation of this file.
00001 #ifndef CaloOnlineTools_HcalOnlineDb_HcalO2OManager_h
00002 #define CaloOnlineTools_HcalOnlineDb_HcalO2OManager_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     HcalOnlineDb
00006 // Class  :     HcalO2OManager
00007 // 
00016 //
00017 // Original Author:  Gena Kukartsev
00018 //         Created:  Sun Aug 16 20:45:38 CEST 2009
00019 // $Id: HcalO2OManager.h,v 1.9 2010/03/07 22:53:42 kukartse Exp $
00020 //
00021 
00022 #include<vector>
00023 #include<string>
00024 #include<stdint.h>
00025  
00026 class HcalO2OManager
00027 {
00028 
00029    public:
00030       HcalO2OManager();
00031       virtual ~HcalO2OManager();
00032 
00033       std::vector<std::string> getListOfPoolTags(std::string connect,
00034                                                  std::string auth_path);
00035 
00036       // get a list of IOVs in the tag
00037       // returns number of IOVs
00038       // returns -1 if the tag does not exist
00039       int getListOfPoolIovs(std::vector<uint32_t> & out,
00040                             std::string tagname,
00041                             std::string connect,
00042                             std::string auth_path);
00043 
00044       std::vector<std::string> getListOfOmdsTags();
00045 
00046       // get a list of IOVs in the tag
00047       // returns number of IOVs
00048       // returns -1 if the tag does not exist
00049       int getListOfOmdsIovs(std::vector<uint32_t> & out, std::string tagname);
00050 
00051       // get a list of IOVs that need to be copied from OMDS to ORCON
00052       // returns number of IOVs to be copied
00053       // returns -1 if the synchronisation is not possible
00054       int getListOfNewIovs(std::vector<uint32_t> & iovs,
00055                            const std::vector<uint32_t> & omds_iovs,
00056                            const std::vector<uint32_t> & orcon_iovs);
00057       void getListOfNewIovs_test(void);
00058 
00059       // get list of IOVs to update for a given tag, or report impossible
00060       // return:
00061       // list of IOVs as first argument,
00062       // number of IOVs to update as return value
00063       // -1 if tag is inconsistent with the update
00064       // 0 if everything's up to date already
00065       int getListOfUpdateIovs(std::vector<uint32_t> & _iovs,
00066                               std::string _tag,
00067                               std::string pool_connect_string,
00068                               std::string pool_auth_path
00069                               );
00070 
00071    private:
00072 
00073 
00074 };
00075 
00076 
00077 #endif