Jpp  18.0.0-rc.1
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | List of all members
JRA_Histograms Class Reference

#include <JRunHistograms.hh>

Public Member Functions

 JRA_Histograms ()
 
 JRA_Histograms (const JDetector &detector)
 
void initialize_summary_histograms ()
 
template<class T >
void initialize_timeslice_histograms ()
 
void initialize_trigger_histograms ()
 
template<class T >
void Write_histogram_table_to_file (TFile &f, string dirname, vector< vector< T * > > table)
 
template<class T >
void Write_histogram_table_to_file (TFile &f, string dirname, vector< T * > table)
 
template<class T , class V >
void Write_manager_to_file (TFile &f, string dirname, JManager< T, V > *table)
 
template<class T , class V >
void Replace_wildcard_in_name (JManager< T, V > *manager, char wc= '%')
 
template<class T , class V >
void Write_manager_in_key_dir (TFile &f, JManager< T, V > *manager)
 
template<class T , class V >
void Write_manager_table_in_key_dir (TFile &f, vector< JManager< T, V > * > table)
 

Public Attributes

SummaryHistograms h_summary
 
TimesliceHistograms h_timeslice
 
TriggerHistograms h_trigger
 
std::set< int > du_ids
 
int modules_per_string
 

Detailed Description

Definition at line 379 of file JRunHistograms.hh.

Constructor & Destructor Documentation

JRA_Histograms::JRA_Histograms ( )
inline

Definition at line 389 of file JRunHistograms.hh.

389 {}
JRA_Histograms::JRA_Histograms ( const JDetector detector)
inline

Definition at line 391 of file JRunHistograms.hh.

391  {
392 
393  du_ids = getStringIDs(detector);
398 }
std::set< int > du_ids
std::set< int > getStringIDs(const JDetector &detector)
Get list of strings identifiers.
TimesliceHistograms h_timeslice
TriggerHistograms h_trigger
static const JStringCounter getNumberOfStrings
Function object to count unique strings.
SummaryHistograms h_summary
int getNumberOfModules(const JDetector &detector)
Get number of modules.

Member Function Documentation

void JRA_Histograms::initialize_summary_histograms ( )
inline

Definition at line 405 of file JRunHistograms.hh.

405  {
406 
408  }
std::set< int > du_ids
void initialize(std::set< int > &du_ids, int modules_per_string)
SummaryHistograms h_summary
template<class T >
void JRA_Histograms::initialize_timeslice_histograms ( )
inline

Definition at line 416 of file JRunHistograms.hh.

416  {
417 
419  const string prefix = "KM3NETDAQ::JDAQ" ;
420  string ts_name = T::Class_Name();
421  string::size_type pos = ts_name.find(prefix);
422 
423  if (pos != string::npos) ts_name.replace(ts_name.find(prefix) , prefix.length() , "");
424 
425  h_timeslice.initialize(du_ids , modules_per_string , index , ts_name);
426  }
std::set< int > du_ids
TimesliceHistograms h_timeslice
void initialize(std::set< int > du_ids, int modules_per_string, int ts_type, std::string ts_name)
Indexing of data type in type list.
Definition: JTypeList.hh:310
void JRA_Histograms::initialize_trigger_histograms ( )
inline

Definition at line 431 of file JRunHistograms.hh.

431  {
432 
434  }
std::set< int > du_ids
void initialize(std::set< int > &du_ids, int modules_per_string)
TriggerHistograms h_trigger
template<class T >
void JRA_Histograms::Write_histogram_table_to_file ( TFile &  f,
string  dirname,
vector< vector< T * > >  table 
)
inline

Definition at line 444 of file JRunHistograms.hh.

444  {
445 
446  if(f.GetDirectory(dirname.c_str()) == 0) f.mkdir (dirname.c_str());
447 
448  f.cd (dirname.c_str());
449 
450  for (int i=0 ; i < (int)table.size(); i++){
451 
452  for (int j=0 ; j< (int)table[i].size(); j++){
453 
454  if (table[i][j]) table [i][j] -> Write();
455  }
456  }
457  }
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
int j
Definition: JPolint.hh:703
template<class T >
void JRA_Histograms::Write_histogram_table_to_file ( TFile &  f,
string  dirname,
vector< T * >  table 
)
inline

Definition at line 467 of file JRunHistograms.hh.

467  {
468 
469  if(f.GetDirectory(dirname.c_str()) == 0) f.mkdir (dirname.c_str());
470 
471  f.cd (dirname.c_str());
472 
473  for (int i=0 ; i < (int)table.size(); i++){
474 
475  if (table[i]) table[i] -> Write();
476  }
477  }
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
template<class T , class V >
void JRA_Histograms::Write_manager_to_file ( TFile &  f,
string  dirname,
JManager< T, V > *  table 
)
inline

Definition at line 487 of file JRunHistograms.hh.

487  {
488 
489  if(f.GetDirectory(dirname.c_str()) == 0) f.mkdir (dirname.c_str());
490 
491  f.cd (dirname.c_str());
492 
493  for (typename JManager < T , V >::const_iterator i = table -> begin() ; i != table -> end() ; ++i){
494 
495  i -> second -> Write();
496  }
497  }
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys...
Definition: JManager.hh:43
template<class T , class V >
void JRA_Histograms::Replace_wildcard_in_name ( JManager< T, V > *  manager,
char  wc = '%' 
)
inline

Definition at line 505 of file JRunHistograms.hh.

505  {
506 
507  for (typename JManager < T , V >::const_iterator i = manager -> begin() ; i != manager -> end() ; ++i){
508 
509  if (i -> second -> GetTitle()){
510 
511  std::string buffer = i -> second -> GetTitle();
512  string::size_type ipos = buffer.find(wc);
513 
514  if (ipos!=std::string::npos){
515 
516  ostringstream os;
517 
518  os << i -> first ;
519 
520  buffer.replace(ipos, 1, os.str());
521 
522  i -> second -> SetTitle(buffer.c_str());
523  }
524  }
525  }
526  }
then echo The file $DIR KM3NeT_00000001_00000000 root already please rename or remove it first
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys...
Definition: JManager.hh:43
then awk string
template<class T , class V >
void JRA_Histograms::Write_manager_in_key_dir ( TFile &  f,
JManager< T, V > *  manager 
)
inline

Definition at line 534 of file JRunHistograms.hh.

534  {
535 
536  for (typename JManager < T , V >::const_iterator i = manager -> begin() ; i != manager -> end() ; ++i){
537 
538  std::string fullpath = MAKE_STRING(i->second->GetName());
539 
540  int pos = fullpath.rfind ('/');
541  std::string name = fullpath.substr (pos + 1);
542  std::string path = fullpath.substr (0 , pos);
543 
544  if (f.GetDirectory(path.c_str()) == 0) f.mkdir (path.c_str());
545 
546  f.cd(path.c_str());
547 
548  i -> second -> SetName(name.c_str());
549  i -> second -> Write();
550  }
551  }
then echo Enter input within $TIMEOUT_S seconds echo n User name
Definition: JCookie.sh:42
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
#define MAKE_STRING(A)
Make string.
Definition: JPrint.hh:127
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys...
Definition: JManager.hh:43
then awk string
$WORKDIR driver txt done cat $WORKDIR driver txt<< EOFprocess ${DATAFILTER}$FILTER_HOST csh-c '(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&(JDataFilter-H\$SERVER\$-M\$LOGGER\$-d $DEBUG-u ${DATAFILTER}-P $PORT</dev/null > &/dev/null &))';process ${DATAWRITER}$WRITER_HOST csh-c '(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&(JDataWriter-H\$SERVER\$-M\$LOGGER\$-d $DEBUG-u ${DATAWRITER}</dev/null > &/dev/null &))';print enterevent ev_init{RC_CMD}event ev_reset{RC_CMD}event ev_init{RC_CMD}event ev_configure{RC_DFLTR%<$WORKDIR/ev_configure_datafilter.txt > RC_DQSIM<$WORKDIR/ev_configure_dqsimulator.txt > RC_DWRT path
template<class T , class V >
void JRA_Histograms::Write_manager_table_in_key_dir ( TFile &  f,
vector< JManager< T, V > * >  table 
)
inline

Definition at line 559 of file JRunHistograms.hh.

559  {
560 
561  for (typename vector < JManager < T , V >* >::const_iterator i = table.begin() ; i != table.end() ; ++i){
562 
563  if ((*i)){
564 
565  for (typename JManager < T , V >::const_iterator j = (*i) -> begin() ; j != (*i) -> end() ; ++j){
566 
567  std::string fullpath = MAKE_STRING(j-> second -> GetName());
568 
569  int pos = fullpath.rfind ('/');
570  std::string name = fullpath.substr (pos + 1);
571  std::string path = fullpath.substr (0 , pos);
572 
573  if (f.GetDirectory(path.c_str()) == 0) f.mkdir (path.c_str());
574 
575  f.cd(path.c_str());
576 
577  j -> second -> SetName(name.c_str());
578  j -> second -> Write();
579  }
580  }
581  }
582  }
then echo Enter input within $TIMEOUT_S seconds echo n User name
Definition: JCookie.sh:42
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
#define MAKE_STRING(A)
Make string.
Definition: JPrint.hh:127
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys...
Definition: JManager.hh:43
then awk string
$WORKDIR driver txt done cat $WORKDIR driver txt<< EOFprocess ${DATAFILTER}$FILTER_HOST csh-c '(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&(JDataFilter-H\$SERVER\$-M\$LOGGER\$-d $DEBUG-u ${DATAFILTER}-P $PORT</dev/null > &/dev/null &))';process ${DATAWRITER}$WRITER_HOST csh-c '(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&(JDataWriter-H\$SERVER\$-M\$LOGGER\$-d $DEBUG-u ${DATAWRITER}</dev/null > &/dev/null &))';print enterevent ev_init{RC_CMD}event ev_reset{RC_CMD}event ev_init{RC_CMD}event ev_configure{RC_DFLTR%<$WORKDIR/ev_configure_datafilter.txt > RC_DQSIM<$WORKDIR/ev_configure_dqsimulator.txt > RC_DWRT path
int j
Definition: JPolint.hh:703

Member Data Documentation

SummaryHistograms JRA_Histograms::h_summary

Definition at line 383 of file JRunHistograms.hh.

TimesliceHistograms JRA_Histograms::h_timeslice

Definition at line 384 of file JRunHistograms.hh.

TriggerHistograms JRA_Histograms::h_trigger

Definition at line 385 of file JRunHistograms.hh.

std::set<int> JRA_Histograms::du_ids

Definition at line 386 of file JRunHistograms.hh.

int JRA_Histograms::modules_per_string

Definition at line 387 of file JRunHistograms.hh.


The documentation for this class was generated from the following file: