#include <stdlib.h>
#include <iostream>
#include <fstream>
#include <vector>
#include <map>
#include <algorithm>
#include <string>
#include "CondCore/IOVService/interface/IOV.h"
#include "CondTools/Hcal/interface/HcalDbTool.h"
#include "CondTools/Hcal/interface/HcalDbOnline.h"
Go to the source code of this file.
Classes | |
class | Args |
Functions | |
int | main (int argn, char *argv[]) |
void | printHelp (const Args &args) |
void | printRuns (const std::string &fDb, const std::string fTag, bool fVerbose) |
void | printTags (const std::string &fDb, bool fVerbose) |
int main | ( | int | argn, |
char * | argv[] | ||
) |
Definition at line 112 of file hcalIovTool.cc.
References harvestRelVal::args, Args::arguments(), gather_cfg::cout, EcalCondDB::db, Args::defineOption(), Args::defineParameter(), Args::getParameter(), Args::optionIsSet(), Args::parse(), printHelp(), printRuns(), printTags(), and GlobalPosition_Frontier_DevDB_cff::tag.
{ Args args; args.defineParameter ("-db", "DB connection string, POOL format, or online format"); args.defineParameter ("-tag", "tag specifyer"); args.defineOption ("-help", "this help"); args.defineOption ("-verbose", "this help"); args.parse (argn, argv); std::vector<std::string> arguments = args.arguments (); if (arguments.size () < 1 || args.optionIsSet ("-help")) { printHelp (args); return -1; } std::string db = args.getParameter ("-db"); std::string tag = args.getParameter ("-tag"); bool verbose = args.optionIsSet ("-verbose"); std::string what = arguments [0]; if (what == "tag") { printTags (db, verbose); } else if (what == "iov") { printRuns (db, tag, verbose); } std::cout << "Program has completed successfully" << std::endl; return 0; }
void printHelp | ( | const Args & | args | ) |
Definition at line 62 of file hcalIovTool.cc.
References Args::command(), gather_cfg::cout, and Args::printOptionsHelp().
{ char buffer [1024]; std::cout << "Tool to manipulate by IOV of Hcal Calibrations" << std::endl; std::cout << " feedback -> ratnikov@fnal.gov" << std::endl; std::cout << "Use:" << std::endl; sprintf (buffer, " %s <what> <options> <parameters>\n", args.command ().c_str()); std::cout << buffer; std::cout << " where <what> is: \n tag\n iov" << std::endl; args.printOptionsHelp (); }
void printRuns | ( | const std::string & | fDb, |
const std::string | fTag, | ||
bool | fVerbose | ||
) |
Definition at line 90 of file hcalIovTool.cc.
References ExpressReco_HICollisions_FallBack::cerr, gather_cfg::cout, dbFile(), HcalDbOnline::getIOVs(), i, o2o::iov, and onlineFile().
Referenced by main().
{ std::vector <IntervalOV> allIOVs; if (dbFile (fDb)) { HcalDbTool poolDb (fDb, fVerbose); cond::IOV iov; if (poolDb.getObject (&iov, fTag)) { allIOVs = allIOV (iov); std::cout << "IOVs available for tag " << fTag << " in CMS POOL DB instance: " << fDb << std::endl; } else { std::cerr << "printRuns-> can not find IOV for tag " << fTag << std::endl; } } if (onlineFile (fDb)) { HcalDbOnline onlineDb (fDb, fVerbose); allIOVs = onlineDb.getIOVs (fTag); } for (unsigned i = 0; i < allIOVs.size(); i++) { std::cout << "[ " << allIOVs[i].first << " ... " << allIOVs[i].second << " )" << std::endl; } }
void printTags | ( | const std::string & | fDb, |
bool | fVerbose | ||
) |
Definition at line 73 of file hcalIovTool.cc.
References gather_cfg::cout, dbFile(), i, HcalDbOnline::metadataAllTags(), and onlineFile().
Referenced by main().
{ std::vector<std::string> allTags; if (dbFile (fDb)) { HcalDbTool poolDb (fDb, fVerbose); allTags = poolDb.metadataAllTags (); std::cout << "Tags available in CMS POOL DB instance: " << fDb << std::endl; } if (onlineFile (fDb)) { HcalDbOnline onlineDb (fDb, fVerbose); allTags = onlineDb.metadataAllTags (); std::cout << "Tags available in HCAL master DB instance: " << fDb << std::endl; } for (unsigned i = 0; i < allTags.size(); i++) { std::cout << allTags[i] << std::endl; } }