33 int main(
int argc, 
char **argv)
 
   39   string      fileDescriptor;
 
   44     JParser<> zap(
"Program to convert multi-dimensional histograms of shower light to multi-dimensional PDFs.");
 
   47     zap[
'o'] = 
make_field(fileDescriptor)      = 
"J%p.dat";
 
   52   catch(
const exception &error) {
 
   53     FATAL(error.what() << endl);
 
   58     FATAL(
"error file descriptor " << fileDescriptor << endl);
 
   64                                        JMAPLIST<JHistogramMap_t,
 
   67                                                 JHistogramGridMap_t>::maplist> JMultiHistogram_t;
 
   74   h1.transformer.reset(
new JFunction4DTransformer_t());
 
   78   NOTICE(
"Loading in input, " << flush);
 
   80   JFileStreamReader 
in(inputFile.c_str());
 
   82   for (JMultiHistogram_t* buffer[] = { &h0, &
h1, NULL }, **i = buffer; *i != NULL; ++i) {
 
   92   for (JMultiHistogram_t::super_iterator
 
   93          i0 = h0.super_begin(),
 
   94          i1 = 
h1.super_begin(); i1 != 
h1.super_end(); ++i0, ++i1) {
 
   96     const double W = i0.getValue().getIntegral();
 
  100       const JDirection3D 
u(JAngle3D(i0->second->first, i0->second->second->first));
 
  103       int number_of_bins = (int) (2 + u.getDot(v));
 
  106       i1.getValue().div(W);
 
  116     const JMultiHistogram_t& value;
 
  119   typedef JPDFTable<JPolint1Function1D_t, 
 
  120                     JMAPLIST<JPolint1FunctionalMap,
 
  121                              JPolint1FunctionalMap,
 
  122                              JPolint1FunctionalGridMap,
 
  123                              JPolint1FunctionalGridMap>::maplist> JPDF_t;
 
  128     NOTICE(
"storing output to file " << file_name << 
"... " << flush);
 
  130     const JPDF_t pdf(
h1);
 
  132     pdf.store(file_name.c_str());
 
  136   catch(
const JException& error) {
 
  137     FATAL(error.what() << endl);
 
Utility class to parse command line options. 
 
esac print_variable DETECTOR INPUT_FILE OUTPUT_FILE CDF for TYPE in
 
then for HISTOGRAM in h0 h1
 
Various implementations of functional maps. 
 
Numbering scheme for PDF types. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
direct light from EM shower 
 
General purpose messaging. 
 
Utility class to parse command line options. 
 
std::string getFilename(const std::string &file_name)
Get file name part, i.e. part after last JEEP::PATHNAME_SEPARATOR if any. 
 
bool hasWildCard(const std::string &file_name)
Check wild card. 
 
int main(int argc, char *argv[])