AliPhysics  c923f52 (c923f52)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliEmcalCorrectionComponent Class Reference

#include <AliEmcalCorrectionComponent.h>

Inheritance diagram for AliEmcalCorrectionComponent:

Public Types

enum  inputObjectType { kCaloCells = 0, kCluster = 1, kTrack = 2 }
 

Public Member Functions

 AliEmcalCorrectionComponent ()
 
 AliEmcalCorrectionComponent (const char *name)
 
virtual ~AliEmcalCorrectionComponent ()
 
virtual Bool_t Initialize ()
 
virtual void ExecOnce ()
 
virtual Bool_t Run ()
 
virtual Bool_t UserNotify ()
 
void GetEtaPhiDiff (const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff)
 
void UpdateCells ()
 
Bool_t RunChanged ()
 
void GetPass ()
 
void FillCellQA (TH1F *h)
 
AliClusterContainerGetClusterContainer ()
 
AliParticleContainerGetParticleContainer ()
 
AliVCaloCells * GetCaloCells ()
 
TListGetOutputList ()
 
void SetClusterContainer (AliClusterContainer *cont)
 
void SetParticleContainer (AliParticleContainer *cont)
 
void SetCaloCells (AliVCaloCells *cells)
 
void SetRecoUtils (AliEMCALRecoUtils *ru)
 
void SetEvent (AliVEvent *event)
 
void SetMCEvent (AliMCEvent *mcevent)
 
void SetEMCALGeometry (AliEMCALGeometry *geometry)
 
void SetCentralityBin (Int_t bin)
 
void SetCentrality (Double_t cent)
 
void SetNcentralityBins (Int_t n)
 
void SetUserConfiguration (YAML::Node &node)
 Make copy to ensure that the nodes do not point to each other (?) More...
 
void SetDefaultConfiguration (YAML::Node &node)
 
template<typename T >
void GetProperty (std::string propertyName, T &property, bool requiredProperty=true, std::string correctionName="")
 Retrieve property. More...
 

Static Public Member Functions

template<typename T >
static void GetProperty (std::string propertyName, T &property, const YAML::Node &userConfiguration, const YAML::Node &defaultConfiguration, bool requiredProperty=true, std::string correctionName="")
 Retrieve property driver function. It is static so that it can be used by other classes. More...
 
static bool IsSharedValue (std::string &value)
 
static std::string DetermineUseDefaultName (inputObjectType contType, Bool_t esdMode)
 

Protected Member Functions

void AddContainer (inputObjectType type)
 

Static Protected Member Functions

template<typename T >
static bool GetPropertyFromNodes (const YAML::Node &node, const YAML::Node &sharedParametersNode, std::string propertyName, T &property, const std::string correctionName, const std::string configurationType, int nodesDeep=0)
 
template<typename T >
static bool GetPropertyFromNode (const YAML::Node &node, std::string propertyName, T &property)
 

Protected Attributes

YAML::Node fUserConfiguration
 
YAML::Node fDefaultConfiguration
 
Bool_t fCreateHisto
 
Int_t fRun
 
TString fFilepass
 run number More...
 
Bool_t fGetPassFromFileName
 
AliVEvent * fEvent
 
Bool_t fEsdMode
 
AliMCEvent * fMCEvent
 
Double_t fCent
 !event centrality More...
 
Int_t fNcentBins
 how many centrality bins (this member copied from AliAnalysisTaskEmcal) More...
 
Int_t fCentBin
 !event centrality bin More...
 
Int_t fNbins
 no. of pt bins More...
 
Double_t fMinBinPt
 min pt in histograms More...
 
Double_t fMaxBinPt
 max pt in histograms More...
 
Double_t fVertex [3]
 !event vertex More...
 
AliEMCALGeometry * fGeom
 !geometry object More...
 
Bool_t fIsEmbedded
 trigger, embedded signal More...
 
Int_t fMinMCLabel
 minimum MC label value for the tracks/clusters being considered MC particles More...
 
AliClusterContainerfClusCont
 ! pointer to the cluster container More...
 
AliParticleContainerfPartCont
 ! pointer to the track/particle container More...
 
AliVCaloCells * fCaloCells
 ! pointer to calo cells More...
 
AliEMCALRecoUtils * fRecoUtils
 ! pointer to reco utils More...
 
TListfOutput
 ! list of output histograms More...
 
TString fBasePath
 

Private Member Functions

 AliEmcalCorrectionComponent (const AliEmcalCorrectionComponent &)
 
AliEmcalCorrectionComponentoperator= (const AliEmcalCorrectionComponent &)
 

Detailed Description

Definition at line 32 of file AliEmcalCorrectionComponent.h.

Member Enumeration Documentation

Enumerator
kCaloCells 

Calo cells.

kCluster 

Cluster container.

kTrack 

Track container.

Definition at line 34 of file AliEmcalCorrectionComponent.h.

Constructor & Destructor Documentation

AliEmcalCorrectionComponent::AliEmcalCorrectionComponent ( )

Default constructor

Definition at line 20 of file AliEmcalCorrectionComponent.cxx.

AliEmcalCorrectionComponent::AliEmcalCorrectionComponent ( const char *  name)

Standard constructor

Definition at line 59 of file AliEmcalCorrectionComponent.cxx.

AliEmcalCorrectionComponent::~AliEmcalCorrectionComponent ( )
virtual

Destructor

Definition at line 98 of file AliEmcalCorrectionComponent.cxx.

AliEmcalCorrectionComponent::AliEmcalCorrectionComponent ( const AliEmcalCorrectionComponent )
private

Member Function Documentation

void AliEmcalCorrectionComponent::AddContainer ( inputObjectType  contType)
protected

Creates a new container based on the requested type and the branch name set in the configuration file. Suppports the "usedefault" pattern to simplify setting the proper branch name.

Note: Adding a container using this function also sets the container variable (for example, fPartCont for a particle container), so it can be used immediately after this function is called.

Parameters
[in]contTypeType of container to be created

Definition at line 152 of file AliEmcalCorrectionComponent.cxx.

Referenced by AliEmcalCorrectionClusterExotics::Initialize(), AliEmcalCorrectionClusterTrackMatcher::Initialize(), AliEmcalCorrectionClusterHadronicCorrection::Initialize(), AliEmcalCorrectionClusterNonLinearity::Initialize(), and AliEmcalCorrectionClusterizer::Initialize().

std::string AliEmcalCorrectionComponent::DetermineUseDefaultName ( inputObjectType  objType,
Bool_t  esdMode 
)
static

Given a container type, it returns the proper branch name based on the "usedefault" pattern.

Definition at line 105 of file AliEmcalCorrectionComponent.cxx.

Referenced by AddContainer(), AliEmcalCorrectionTask::CopyBranchesToNewObjects(), AliEmcalCorrectionTask::CreateNewObjectBranches(), and AliEmcalCorrectionTask::UserCreateOutputObjects().

void AliEmcalCorrectionComponent::ExecOnce ( )
virtual

Execute once for the first event to initialize the analysis. Similar to ExecOnce() in AliAnalysisTaskEmcal

Definition at line 226 of file AliEmcalCorrectionComponent.cxx.

void AliEmcalCorrectionComponent::FillCellQA ( TH1F *  h)
AliVCaloCells* AliEmcalCorrectionComponent::GetCaloCells ( )
inline

Definition at line 58 of file AliEmcalCorrectionComponent.h.

AliClusterContainer* AliEmcalCorrectionComponent::GetClusterContainer ( )
inline
void AliEmcalCorrectionComponent::GetEtaPhiDiff ( const AliVTrack *  t,
const AliVCluster *  v,
Double_t phidiff,
Double_t etadiff 
)

Calculate \(\phi\) and \(\eta\) difference between a track (t) and a cluster (c). The position of the track is obtained on the EMCAL surface

Parameters
[in]tTrack to check
[in]vCluster to check
[out]phidiffDistance in \(\phi\) between cluster and track
[out]etadiffDistance in \(\eta\) between cluster and track

Definition at line 265 of file AliEmcalCorrectionComponent.cxx.

Referenced by AliEmcalCorrectionClusterHadronicCorrection::ApplyHadCorrOneTrack(), AliEmcalCorrectionClusterHadronicCorrection::DoMatchedTracksLoop(), AliEmcalCorrectionClusterTrackMatcher::DoMatching(), and AliEmcalCorrectionClusterTrackMatcher::UpdateClusters().

TList* AliEmcalCorrectionComponent::GetOutputList ( )
inline
AliParticleContainer* AliEmcalCorrectionComponent::GetParticleContainer ( )
inline
void AliEmcalCorrectionComponent::GetPass ( )

Get pass from filename. Sets pass in fFilepass.

Definition at line 337 of file AliEmcalCorrectionComponent.cxx.

Referenced by Run().

template<typename T >
void AliEmcalCorrectionComponent::GetProperty ( std::string  propertyName,
T property,
const YAML::Node &  userConfiguration,
const YAML::Node &  defaultConfiguration,
bool  requiredProperty = true,
std::string  correctionName = "" 
)
static

Retrieve property driver function. It is static so that it can be used by other classes.

Definition at line 155 of file AliEmcalCorrectionComponent.h.

template<typename T >
bool AliEmcalCorrectionComponent::GetPropertyFromNode ( const YAML::Node &  node,
std::string  propertyName,
T property 
)
staticprotected

Definition at line 331 of file AliEmcalCorrectionComponent.h.

Referenced by GetPropertyFromNodes().

template<typename T >
bool AliEmcalCorrectionComponent::GetPropertyFromNodes ( const YAML::Node &  node,
const YAML::Node &  sharedParametersNode,
std::string  propertyName,
T property,
const std::string  correctionName,
const std::string  configurationType,
int  nodesDeep = 0 
)
staticprotected

Definition at line 200 of file AliEmcalCorrectionComponent.h.

Referenced by GetProperty().

bool AliEmcalCorrectionComponent::IsSharedValue ( std::string &  value)
static

Check if value is a shared parameter, meaning we should look at another node. Also edits the input string to remove "sharedParameters:" if it exists, making it ready for use.

Parameters
[in]valueString containing the string value return by the parameter.
Returns
True if the value is shared.

Definition at line 320 of file AliEmcalCorrectionComponent.cxx.

Referenced by GetPropertyFromNodes().

AliEmcalCorrectionComponent& AliEmcalCorrectionComponent::operator= ( const AliEmcalCorrectionComponent )
private
Bool_t AliEmcalCorrectionComponent::RunChanged ( )
void AliEmcalCorrectionComponent::SetCaloCells ( AliVCaloCells *  cells)
inline

Definition at line 63 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetCentrality ( Double_t  cent)
inline

Definition at line 71 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetCentralityBin ( Int_t  bin)
inline

Definition at line 70 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetClusterContainer ( AliClusterContainer cont)
inline

Definition at line 61 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetDefaultConfiguration ( YAML::Node &  node)
inline
void AliEmcalCorrectionComponent::SetEMCALGeometry ( AliEMCALGeometry *  geometry)
inline

Definition at line 69 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetEvent ( AliVEvent *  event)
inline

Definition at line 66 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetMCEvent ( AliMCEvent *  mcevent)
inline

Definition at line 67 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetNcentralityBins ( Int_t  n)
inline
void AliEmcalCorrectionComponent::SetParticleContainer ( AliParticleContainer cont)
inline

Definition at line 62 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetRecoUtils ( AliEMCALRecoUtils *  ru)
inline

Definition at line 64 of file AliEmcalCorrectionComponent.h.

void AliEmcalCorrectionComponent::SetUserConfiguration ( YAML::Node &  node)
inline

Make copy to ensure that the nodes do not point to each other (?)

Definition at line 76 of file AliEmcalCorrectionComponent.h.

Referenced by AliEmcalCorrectionTask::InitializeComponents().

void AliEmcalCorrectionComponent::UpdateCells ( )

Remove bad cells from the cell list Recalibrate energy and time cells

Definition at line 288 of file AliEmcalCorrectionComponent.cxx.

Referenced by AliEmcalCorrectionCellBadChannel::Run(), AliEmcalCorrectionCellTimeCalib::Run(), and AliEmcalCorrectionCellEnergy::Run().

Bool_t AliEmcalCorrectionComponent::UserNotify ( )
virtual

Notifying the user that the input data file has changed and performing steps needed to be done.

Definition at line 251 of file AliEmcalCorrectionComponent.cxx.

Member Data Documentation

YAML::Node AliEmcalCorrectionComponent::fDefaultConfiguration
protected

Definition at line 99 of file AliEmcalCorrectionComponent.h.

Referenced by GetProperty(), and SetDefaultConfiguration().

Bool_t AliEmcalCorrectionComponent::fGetPassFromFileName
protected

Definition at line 105 of file AliEmcalCorrectionComponent.h.

Referenced by Initialize(), and Run().

Bool_t AliEmcalCorrectionComponent::fIsEmbedded
protected
Double_t AliEmcalCorrectionComponent::fMaxBinPt
protected

max pt in histograms

Definition at line 114 of file AliEmcalCorrectionComponent.h.

Referenced by AliEmcalCorrectionClusterHadronicCorrection::Initialize().

AliMCEvent* AliEmcalCorrectionComponent::fMCEvent
protected
Double_t AliEmcalCorrectionComponent::fMinBinPt
protected

min pt in histograms

Definition at line 113 of file AliEmcalCorrectionComponent.h.

Referenced by AliEmcalCorrectionClusterHadronicCorrection::Initialize().

Int_t AliEmcalCorrectionComponent::fMinMCLabel
protected

minimum MC label value for the tracks/clusters being considered MC particles

Definition at line 118 of file AliEmcalCorrectionComponent.h.

Referenced by AliEmcalCorrectionClusterHadronicCorrection::DoMatchedTracksLoop().

Int_t AliEmcalCorrectionComponent::fNbins
protected

no. of pt bins

Definition at line 112 of file AliEmcalCorrectionComponent.h.

Referenced by AliEmcalCorrectionClusterHadronicCorrection::Initialize().

YAML::Node AliEmcalCorrectionComponent::fUserConfiguration
protected

Definition at line 98 of file AliEmcalCorrectionComponent.h.

Referenced by GetProperty().

Double_t AliEmcalCorrectionComponent::fVertex[3]
protected

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