28 static const char* plain_t =
"plain";
29 static const char* json_t =
"JSON";
37int main(
int argc,
char **argv)
51 JParser<> zap(
"Auxiliary program to print Jpp meta data.");
56 zap[
'O'] =
make_field(option) = plain_t, json_t;
68 catch(
const exception &error) {
69 FATAL(error.what() << endl);
73 if (application !=
"") {
75 TFile* in = TFile::Open(inputFile.c_str(),
"exists");
77 if (in != NULL && in->IsOpen()) {
79 const TRegexp regexp(application.c_str());
81 TIter iter(in->GetListOfKeys());
83 for (TKey* key; (key = (TKey*) iter.Next()) != NULL; ) {
85 const TString tag(key->GetName());
87 if (tag.Contains(regexp)) {
89 TNamed* named =
dynamic_cast<TNamed*
>(key->ReadObj());
92 cout << named->GetName() <<
"[" << key->GetCycle() <<
"] " << named->GetTitle() << endl;
101 ERROR(
"Error opening file: " << inputFile << endl);
107 JObjectMultiplexer <JMetaTypes_t> abc(in);
115 if (option == plain_t) {
119 cout << (*meta) << endl;
123 for (
const auto& i : key) {
124 cout <<
' ' << (*meta)[i];
129 }
else if (option == json_t) {
135 if (option == json_t) {
136 cout << setw(4) << js << endl;
General purpose messaging.
Scanning of objects from multiple files according a format that follows from the extension of each fi...
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
ROOT TTree parameter settings of various packages.
virtual bool hasNext() override
Check availability of next element.
virtual const pointer_type & next() override
Get next element.
Utility class to parse command line options.
General purpose class for object reading from a list of file names.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
static const char *const SVNrelease_t
SVN release.
static const char *const command_t
Linux command.
static const char *const GITrelease_t
GIT release.
static const char *const namespace_t
name space
static const char *const ROOTrelease_t
ROOT release.
static const char *const system_t
system information
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
Auxiliary class for defining the range of iterations of objects.
static counter_type max()
Get maximum counter value.