11 #include "boost/filesystem.hpp" 12 #include "boost/property_tree/ptree.hpp" 13 #include "boost/property_tree/json_parser.hpp" 14 #include "boost/optional.hpp" 20 #include "Alignment/OfflineValidation/macros/loopAndPlot.C" 26 namespace pt = boost::property_tree;
37 pt::read_json(
options.config, main_tree);
39 pt::ptree alignments = main_tree.get_child(
"alignments");
40 pt::ptree
validation = main_tree.get_child(
"validation");
42 TString filesAndLabels;
43 for (
const auto& childTree : alignments) {
52 std::cout << childTree.second.get<
string>(
"title") << std::endl;
55 std::string prefixToAdd =
file.find(
"/eos/cms/") != std::string::npos ?
"root://eoscms.cern.ch/" :
"";
57 prefixToAdd +
file +
"/DiMuonVertexValidation.root=" + childTree.second.get<
string>(
"title") +
",";
58 filesAndLabels +=
toAdd;
61 if (filesAndLabels.Length() > 0) {
62 filesAndLabels.Remove(filesAndLabels.Length() - 1);
65 std::cout <<
"filesAndLabels: " << filesAndLabels << std::endl;
67 loopAndPlot(filesAndLabels);
72 #ifndef DOXYGEN_SHOULD_SKIP_THIS
int merge(int argc, char *argv[])
int main(int argc, char *argv[])