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" 19 #include "Alignment/OfflineValidation/macros/loopAndPlot.C" 25 namespace pt = boost::property_tree;
36 pt::read_json(
options.config, main_tree);
38 pt::ptree alignments = main_tree.get_child(
"alignments");
39 pt::ptree
validation = main_tree.get_child(
"validation");
41 TString filesAndLabels;
42 for (
const auto& childTree : alignments) {
51 std::cout << childTree.second.get<
string>(
"title") << std::endl;
54 std::string prefixToAdd =
file.find(
"/eos/cms/") != std::string::npos ?
"root://eoscms.cern.ch/" :
"";
56 prefixToAdd +
file +
"/DiMuonVertexValidation.root=" + childTree.second.get<
string>(
"title") +
",";
57 filesAndLabels +=
toAdd;
60 if (filesAndLabels.Length() > 0) {
61 filesAndLabels.Remove(filesAndLabels.Length() - 1);
64 std::cout <<
"filesAndLabels: " << filesAndLabels << std::endl;
66 loopAndPlot(filesAndLabels);
71 #ifndef DOXYGEN_SHOULD_SKIP_THIS
int merge(int argc, char *argv[])
int main(int argc, char *argv[])