mEmcRecoModuleRealYear4 Class Reference

#include <mEmcRecoModuleRealYear4.h>

Inherits emcRecoModule.

Inheritance diagram for mEmcRecoModuleRealYear4:

Inheritance graph
[legend]
List of all members.

Detailed Description

emcRecoModule for real data, Run4 (and beyond, if nothing better's available).

By default, all emcal sectors are treated, the various data obtained from database come from Postgres, and the full variability of tower gains is used. While default should be fine, experts may want to play with some parameters, explained hereafter.

The sectors to be treated can be changed according to recoConsts flag EMCSECTORS, e.g.

recoConsts* rc = recoConsts::instance();
rc->set_CharFlag("EMCSECTORS","pbsc"); // use only PbSc
rc->set_CharFlag("EMCSECTORS","pbgl"); // use only PbGl
rc->set_CharFlag("EMCSECTORS","W0E3"); // use only W0 and E3 sectors

Calibration data source can be changed globally, using recoConsts flag EMCDATASOURCE, or very selectively, using the EMCEXPERTDATASOURCES, e.g.

recoConsts* rc = recoConsts::instance();
rc->set_CharFlag("EMCDATASOURCE","File_ASCII"); // use ASCII file as data source (WARNING: this is really an expert mode of operation!)
rc->set_CharFlag("EMCDATASOURCE","DB_Objy"); // use Objy as data source (if that still works...)
rc->set_CharFlag("EMCEXPERTDATASOURCES","QAs:None,Pedestals5:File_ASCII"); // disable QA collection and read pedestals from files (really really expert mode)

Usage of gain variation can be disconnected if recoConsts flag EMCCONSTANTGAINS is set to 1 (default 0).

Clustering can be disabled (thus leaving only the calibration stage) by setting RUNEMCCLUSTERING integer flag to 0 (default is 1, i.e. run the clustering).

See also:
setup() to see the list of internal modules used.
Author:
Laurent Aphecetche

Definition at line 46 of file mEmcRecoModuleRealYear4.h.

Public Member Functions

 mEmcRecoModuleRealYear4 (const PHFlag &)
virtual ~mEmcRecoModuleRealYear4 ()
int ana (PHCompositeNode *topNode)
 Main method to do the work for each event.
int end (PHCompositeNode *topNode)
 When we are done.
const char * getName () const
 The name of this module.
int setup (PHCompositeNode *topNode)
 Defines the nodes we need, together with the list of (PH)modules to be called at each event (in that order) :
  1. mEmcCalibratorModulev2
  2. mEmcTOFCorr6Module
  3. mEmcClusterizerv0.

virtual void identify (std::ostream &os=std::cout) const
virtual void Reset ()
virtual int isValid () const

Private Member Functions

void createNodeTree (PHCompositeNode *topNode)
void setup_calibrator (PHCompositeNode *topNode)
void setup_clustering (PHCompositeNode *topNode)

Private Attributes

emcModuleHelperfModules
PHTimeStamp * fTimeStamp
int fRunNumber
std::string fDstNodeName
bool fConstantGains
std::string fSectors
emcDataStorageMapfDataStorageMap
std::ostringstream fStartupMessage

Static Private Attributes

static const float fgTowerThresholdPbSc = 0.010
static const float fgTowerThresholdPbGl = 0.014
static const float fgMinClusterEnergyPbSc = 0.015
static const float fgMinClusterEnergyPbGl = 0.060


Constructor & Destructor Documentation

mEmcRecoModuleRealYear4::mEmcRecoModuleRealYear4 const PHFlag &   ) 
 

Definition at line 30 of file mEmcRecoModuleRealYear4.C.

mEmcRecoModuleRealYear4::~mEmcRecoModuleRealYear4  )  [virtual]
 

Definition at line 137 of file mEmcRecoModuleRealYear4.C.

References fDataStorageMap, fModules, and fTimeStamp.


Member Function Documentation

int mEmcRecoModuleRealYear4::ana PHCompositeNode *  topNode  )  [virtual]
 

Main method to do the work for each event.

Implements emcRecoModule.

Definition at line 146 of file mEmcRecoModuleRealYear4.C.

References emcModuleHelper::event(), and fModules.

void mEmcRecoModuleRealYear4::createNodeTree PHCompositeNode *  topNode  )  [private]
 

Definition at line 153 of file mEmcRecoModuleRealYear4.C.

References emcNodeHelper::makeCompositeNode().

Referenced by setup().

int mEmcRecoModuleRealYear4::end PHCompositeNode *  topNode  )  [virtual]
 

When we are done.

Implements emcRecoModule.

Definition at line 171 of file mEmcRecoModuleRealYear4.C.

const char* mEmcRecoModuleRealYear4::getName  )  const [inline, virtual]
 

The name of this module.

Implements emcRecoModule.

Definition at line 58 of file mEmcRecoModuleRealYear4.h.

virtual void mEmcRecoModuleRealYear4::identify std::ostream &  os = std::cout  )  const [virtual]
 

virtual int mEmcRecoModuleRealYear4::isValid void   )  const [inline, virtual]
 

Definition at line 72 of file mEmcRecoModuleRealYear4.h.

virtual void mEmcRecoModuleRealYear4::Reset void   )  [inline, virtual]
 

Definition at line 70 of file mEmcRecoModuleRealYear4.h.

int mEmcRecoModuleRealYear4::setup PHCompositeNode *  topNode  )  [virtual]
 

Defines the nodes we need, together with the list of (PH)modules to be called at each event (in that order) :

  1. mEmcCalibratorModulev2
  2. mEmcTOFCorr6Module
  3. mEmcClusterizerv0.

Implements emcRecoModule.

Definition at line 185 of file mEmcRecoModuleRealYear4.C.

References createNodeTree(), fDstNodeName, emcNodeHelper::findCompositeNode(), fModules, fStartupMessage, emcModuleHelper::print(), setup_calibrator(), and setup_clustering().

void mEmcRecoModuleRealYear4::setup_calibrator PHCompositeNode *  topNode  )  [private]
 

Definition at line 228 of file mEmcRecoModuleRealYear4.C.

References emcModuleHelper::add(), emcNodeHelper::addObject(), fConstantGains, fDataStorageMap, emcNodeHelper::findCompositeNode(), fModules, fRunNumber, fSectors, and fTimeStamp.

Referenced by setup().

void mEmcRecoModuleRealYear4::setup_clustering PHCompositeNode *  topNode  )  [private]
 

Definition at line 250 of file mEmcRecoModuleRealYear4.C.

References emcModuleHelper::add(), emcNodeHelper::addObject(), fDstNodeName, fgMinClusterEnergyPbGl, fgMinClusterEnergyPbSc, fgTowerThresholdPbGl, fgTowerThresholdPbSc, emcNodeHelper::findCompositeNode(), fModules, mEmcGeometryModule::kReal, mEmcClusterizerv0::SetMinClusterEnergyPbGl(), mEmcClusterizerv0::SetMinClusterEnergyPbSc(), mEmcClusterizerv0::SetTowerThresholdPbGl(), and mEmcClusterizerv0::SetTowerThresholdPbSc().

Referenced by setup().


Member Data Documentation

bool mEmcRecoModuleRealYear4::fConstantGains [private]
 

Definition at line 85 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_calibrator().

emcDataStorageMap* mEmcRecoModuleRealYear4::fDataStorageMap [private]
 

Definition at line 87 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_calibrator(), and ~mEmcRecoModuleRealYear4().

std::string mEmcRecoModuleRealYear4::fDstNodeName [private]
 

Definition at line 84 of file mEmcRecoModuleRealYear4.h.

Referenced by setup(), and setup_clustering().

const float mEmcRecoModuleRealYear4::fgMinClusterEnergyPbGl = 0.060 [static, private]
 

Definition at line 92 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_clustering().

const float mEmcRecoModuleRealYear4::fgMinClusterEnergyPbSc = 0.015 [static, private]
 

Definition at line 91 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_clustering().

const float mEmcRecoModuleRealYear4::fgTowerThresholdPbGl = 0.014 [static, private]
 

Definition at line 90 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_clustering().

const float mEmcRecoModuleRealYear4::fgTowerThresholdPbSc = 0.010 [static, private]
 

Definition at line 89 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_clustering().

emcModuleHelper* mEmcRecoModuleRealYear4::fModules [private]
 

Definition at line 81 of file mEmcRecoModuleRealYear4.h.

Referenced by ana(), setup(), setup_calibrator(), setup_clustering(), and ~mEmcRecoModuleRealYear4().

int mEmcRecoModuleRealYear4::fRunNumber [private]
 

Definition at line 83 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_calibrator().

std::string mEmcRecoModuleRealYear4::fSectors [private]
 

Definition at line 86 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_calibrator().

std::ostringstream mEmcRecoModuleRealYear4::fStartupMessage [private]
 

Definition at line 88 of file mEmcRecoModuleRealYear4.h.

Referenced by setup().

PHTimeStamp* mEmcRecoModuleRealYear4::fTimeStamp [private]
 

Definition at line 82 of file mEmcRecoModuleRealYear4.h.

Referenced by setup_calibrator(), and ~mEmcRecoModuleRealYear4().


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