EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FairRun Class Referenceabstract

#include <EicRoot/blob/master/base/FairRun.h>

+ Inheritance diagram for FairRun:
+ Collaboration diagram for FairRun:

Public Member Functions

 FairRun ()
 
virtual ~FairRun ()
 
virtual void AddTask (FairTask *t)
 
virtual void SetTask (FairTask *t)
 
virtual void Init ()=0
 
virtual void Run (Int_t NStart=0, Int_t NStop=0)=0
 
virtual void SetOutputFile (const char *fname)
 
void SetOutputFile (TFile *f)
 
void SetEventHeader (FairEventHeader *EvHeader)
 
FairRuntimeDbGetRuntimeDb (void)
 
TFile * GetOutputFile ()
 
Int_t GetRunId ()
 
FairEventHeaderGetEventHeader ()
 
Bool_t IsAna ()
 
FairTaskGetTask (const char *taskName)
 
FairTaskGetMainTask ()
 
Int_t GetNTasks ()
 
void CreateGeometryFile (const char *geofile)
 
void SetWriteRunInfoFile (Bool_t write)
 
Bool_t GetWriteRunInfoFile ()
 
virtual void RunCoreStart (Int_t NStart=0, Int_t NStop=0)
 
virtual void RunCoreFinish (void)
 
virtual bool RunCoreImportNextEvent (void)
 
virtual void RunCoreProcessNextEvent (void)
 
virtual bool JanaLoopPossible (void) const
 
int GetCurrentEventIndex (void) const
 

Static Public Member Functions

static FairRunInstance ()
 
static void JanaPluginMode (bool what)
 
static bool JanaPluginMode (void)
 

Protected Attributes

FairLoggerfLogger
 
FairRuntimeDbfRtdb
 
FairTaskfTask
 
const char * fOutname
 
FairRootManagerfRootManager
 
TFile * fOutFile
 
UInt_t fRunId
 
Bool_t fAna
 
FairEventHeaderfEvHead
 
FairFileHeaderfFileHeader
 
Bool_t fWriteRunInfo
 
int mEvCurrent
 

Static Protected Attributes

static FairRunfRunInstance = 0
 
static bool mJanaPluginMode = false
 

Private Member Functions

 FairRun (const FairRun &M)
 
FairRunoperator= (const FairRun &)
 

Private Attributes

Int_t fNTasks
 

Detailed Description

Configure the Simuation or Analysis

Author
M. Al-Turany D. Bertini
Version
0.1
Since
12.01.04

Definition at line 20 of file FairRun.h.

View newest version in sPHENIX GitHub at line 20 of file FairRun.h

Constructor & Destructor Documentation

FairRun::FairRun ( )

default ctor

Definition at line 25 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 25 of file FairRun.cxx

References fFileHeader, fRootManager, fRunInstance, and FairRootManager::SetFileHeader().

+ Here is the call graph for this function:

FairRun::~FairRun ( )
virtual

default dtor

Definition at line 49 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 49 of file FairRun.cxx

References FairLogger::Debug(), fEvHead, fLogger, fRootManager, fRtdb, fTask, and MESSAGE_ORIGIN.

+ Here is the call graph for this function:

FairRun::FairRun ( const FairRun M)
private

Member Function Documentation

void FairRun::AddTask ( FairTask t)
virtual

Add a FAIRTask to the simulation or analysis

Definition at line 89 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 89 of file FairRun.cxx

References FairFileHeader::AddTaskClassName(), fFileHeader, fNTasks, and fTask.

Referenced by FairEventManager::AddTask(), EicRunSim::DefineFluxMonitorGrid(), digitization(), EicRecoKalmanTask::EicRecoKalmanTask(), PndGeoHandling::PndGeoHandling(), EicEventGenerator::ReadEvent(), and reconstruction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FairRun::CreateGeometryFile ( const char *  geofile)

Create a new file and save the TGeoManager to it

Definition at line 103 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 103 of file FairRun.cxx

References FairRootManager::CreateGeometryFile(), and fRootManager.

+ Here is the call graph for this function:

int FairRun::GetCurrentEventIndex ( void  ) const
inline

Definition at line 165 of file FairRun.h.

View newest version in sPHENIX GitHub at line 165 of file FairRun.h

References mEvCurrent.

FairEventHeader * FairRun::GetEventHeader ( )

Get the detector specific run header

Definition at line 115 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 115 of file FairRun.cxx

References fEvHead.

Referenced by EicRunDigi::GetDetectorHits(), and FairRunAna::Init().

+ Here is the caller graph for this function:

FairTask* FairRun::GetMainTask ( )
inline

*Get Main Task

Definition at line 98 of file FairRun.h.

View newest version in sPHENIX GitHub at line 98 of file FairRun.h

References fTask.

Int_t FairRun::GetNTasks ( )
inline

Return the number of Tasks added to this Run

Definition at line 104 of file FairRun.h.

View newest version in sPHENIX GitHub at line 104 of file FairRun.h

References fNTasks.

TFile* FairRun::GetOutputFile ( )
inline

return a pointer to the output file

Definition at line 72 of file FairRun.h.

View newest version in sPHENIX GitHub at line 72 of file FairRun.h

References fOutFile.

Referenced by FluxMonitorGrid::FillOutHistograms(), EicIdealTrackingCode::Finish(), EicCalorimeterReconstruction::Finish(), EicCalorimeterDigiHitProducer::Finish(), EicDetector::FinishRun(), FwdTrackFinder::FinishTask(), EicMagneticField::InitializeFieldMaps(), EicDigiParData::mergeIntoOutputFile(), FairRunSim::Run(), EicRunSim::RunCoreStart(), and FairRunInfo::WriteHistosToFile().

+ Here is the caller graph for this function:

Int_t FairRun::GetRunId ( )
inline

return the run ID for the actul run

Definition at line 78 of file FairRun.h.

View newest version in sPHENIX GitHub at line 78 of file FairRun.h

References fRunId.

Referenced by PndSensorNamePar::AddSensorName(), ClassImp(), PndMagnet::ConstructASCIIGeometry(), CbmRich::ConstructAsciiGeometry(), PndTarget::ConstructGeometry(), EicDetector::ConstructGeometry(), PndConstField::FillParContainer(), PndMultiField::FillParContainer(), PndTransMap::FillParContainer(), FairMCApplication::InitGeometry(), PndMultiFieldPar::SetParameters(), and PndGeoHandling::SetParContainers().

+ Here is the caller graph for this function:

FairTask * FairRun::GetTask ( const char *  taskName)

*Get task by name

Definition at line 108 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 108 of file FairRun.cxx

References fTask.

Bool_t FairRun::GetWriteRunInfoFile ( )
inline

Definition at line 115 of file FairRun.h.

View newest version in sPHENIX GitHub at line 115 of file FairRun.h

References fWriteRunInfo.

virtual void FairRun::Init ( )
pure virtual

Initialize the Simulation or analysis

Implemented in EicRunSim, FairRunSim, EicRunAna, and FairRunAna.

Bool_t FairRun::IsAna ( )
inline

return true for Anaylsis session

Definition at line 87 of file FairRun.h.

View newest version in sPHENIX GitHub at line 87 of file FairRun.h

References fAna.

Referenced by FairRootManager::OpenOutFile().

+ Here is the caller graph for this function:

virtual bool FairRun::JanaLoopPossible ( void  ) const
inlinevirtual

Reimplemented in EicRunSim.

Definition at line 164 of file FairRun.h.

View newest version in sPHENIX GitHub at line 164 of file FairRun.h

static void FairRun::JanaPluginMode ( bool  what)
inlinestatic

Definition at line 117 of file FairRun.h.

View newest version in sPHENIX GitHub at line 117 of file FairRun.h

References mJanaPluginMode.

static bool FairRun::JanaPluginMode ( void  )
inlinestatic

Definition at line 118 of file FairRun.h.

View newest version in sPHENIX GitHub at line 118 of file FairRun.h

References mJanaPluginMode.

Referenced by InitPlugin().

+ Here is the caller graph for this function:

FairRun& FairRun::operator= ( const FairRun )
inlineprivate

Definition at line 122 of file FairRun.h.

View newest version in sPHENIX GitHub at line 122 of file FairRun.h

virtual void FairRun::Run ( Int_t  NStart = 0,
Int_t  NStop = 0 
)
pure virtual

run the analysis or simulation

Implemented in EicRunSim, FairRunSim, EicRunAna, and FairRunAna.

virtual void FairRun::RunCoreFinish ( void  )
inlinevirtual

Reimplemented in EicRunAna.

Definition at line 160 of file FairRun.h.

View newest version in sPHENIX GitHub at line 160 of file FairRun.h

virtual bool FairRun::RunCoreImportNextEvent ( void  )
inlinevirtual

Reimplemented in EicRunAna.

Definition at line 161 of file FairRun.h.

View newest version in sPHENIX GitHub at line 161 of file FairRun.h

virtual void FairRun::RunCoreProcessNextEvent ( void  )
inlinevirtual

Reimplemented in EicRunAna.

Definition at line 162 of file FairRun.h.

View newest version in sPHENIX GitHub at line 162 of file FairRun.h

virtual void FairRun::RunCoreStart ( Int_t  NStart = 0,
Int_t  NStop = 0 
)
inlinevirtual

Reimplemented in EicRunSim, and EicRunAna.

Definition at line 159 of file FairRun.h.

View newest version in sPHENIX GitHub at line 159 of file FairRun.h

void FairRun::SetEventHeader ( FairEventHeader EvHeader)
inline

Set the experiment dependent run header for each run

Definition at line 60 of file FairRun.h.

View newest version in sPHENIX GitHub at line 60 of file FairRun.h

References fEvHead.

void FairRun::SetOutputFile ( const char *  fname)
virtual

Set the output file name for analysis or simulation

Reimplemented in EicRunSim.

Definition at line 70 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 70 of file FairRun.cxx

References fOutFile, fOutname, fRootManager, and FairRootManager::OpenOutFile().

Referenced by digitization(), EicEventManager::EicEventManager(), EicRunSim::Init(), and reconstruction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FairRun::SetOutputFile ( TFile *  f)

Set the output file for analysis or simulation

Definition at line 79 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 79 of file FairRun.cxx

References fOutFile, fOutname, fRootManager, and FairRootManager::OpenOutFile().

+ Here is the call graph for this function:

void FairRun::SetTask ( FairTask t)
virtual

Definition at line 96 of file FairRun.cxx.

View newest version in sPHENIX GitHub at line 96 of file FairRun.cxx

References FairFileHeader::AddTaskClassName(), fFileHeader, fTask, and t.

+ Here is the call graph for this function:

void FairRun::SetWriteRunInfoFile ( Bool_t  write)
inline

Definition at line 112 of file FairRun.h.

View newest version in sPHENIX GitHub at line 112 of file FairRun.h

References fWriteRunInfo, and tree::write().

+ Here is the call graph for this function:

Member Data Documentation

Bool_t FairRun::fAna
protected

true for Anaylsis session

Definition at line 146 of file FairRun.h.

View newest version in sPHENIX GitHub at line 146 of file FairRun.h

Referenced by FairRunAna::FairRunAna(), and IsAna().

FairEventHeader* FairRun::fEvHead
protected

MC Event Header

Definition at line 148 of file FairRun.h.

View newest version in sPHENIX GitHub at line 148 of file FairRun.h

Referenced by GetEventHeader(), SetEventHeader(), and ~FairRun().

FairFileHeader* FairRun::fFileHeader
protected

File Header

Definition at line 150 of file FairRun.h.

View newest version in sPHENIX GitHub at line 150 of file FairRun.h

Referenced by AddTask(), FairRun(), FairRunAna::Init(), FairRunSim::Init(), and SetTask().

Int_t FairRun::fNTasks
private

Number of Tasks added

Definition at line 126 of file FairRun.h.

View newest version in sPHENIX GitHub at line 126 of file FairRun.h

Referenced by AddTask(), and GetNTasks().

TFile* FairRun::fOutFile
protected

Output file

Definition at line 142 of file FairRun.h.

View newest version in sPHENIX GitHub at line 142 of file FairRun.h

Referenced by GetOutputFile(), FairRunAna::Init(), and SetOutputFile().

const char* FairRun::fOutname
protected

Output file name

Definition at line 138 of file FairRun.h.

View newest version in sPHENIX GitHub at line 138 of file FairRun.h

Referenced by SetOutputFile().

FairRuntimeDb* FairRun::fRtdb
protected

RuntimeDb

Definition at line 134 of file FairRun.h.

View newest version in sPHENIX GitHub at line 134 of file FairRun.h

Referenced by GetRuntimeDb(), FairRunAna::Init(), FairRunSim::Init(), FairRunAna::InitContainers(), FairRunAna::Reinit(), FairRunAna::RunOnProof(), and ~FairRun().

UInt_t FairRun::fRunId
protected
FairRun * FairRun::fRunInstance = 0
staticprotected

static pointer to this run

Definition at line 132 of file FairRun.h.

View newest version in sPHENIX GitHub at line 132 of file FairRun.h

Referenced by FairRun(), and Instance().

Bool_t FairRun::fWriteRunInfo
protected

true if RunInfo file should be written

Definition at line 152 of file FairRun.h.

View newest version in sPHENIX GitHub at line 152 of file FairRun.h

Referenced by GetWriteRunInfoFile(), FairRunAna::Run(), EicRunAna::RunCoreFinish(), and SetWriteRunInfoFile().

int FairRun::mEvCurrent
protected

Definition at line 155 of file FairRun.h.

View newest version in sPHENIX GitHub at line 155 of file FairRun.h

Referenced by GetCurrentEventIndex(), EicRunAna::RunCoreImportNextEvent(), and EicRunAna::RunCoreStart().

bool FairRun::mJanaPluginMode = false
staticprotected

Definition at line 154 of file FairRun.h.

View newest version in sPHENIX GitHub at line 154 of file FairRun.h

Referenced by JanaPluginMode(), and EicRunAna::Run().


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