Universita' di GenovaINFN Sezione di Genova  
AIRWATCH / EUSO Genova

SimuApplication

#include "SimuApplication.hh"

SimuApplication


class description - source file - inheritance tree (.pdf)

class SimuApplication : public TRint, public EsafMsgSource

Inheritance Chart:
TObject
TQObject
<-
TApplication
<-
TRint
EsafMsgSource
<-
SimuApplication
    private:
void Build() void DoOpticsAnalysis() Detector* Euso() virtual void Init() LightToEuso* Light() void ParseCmdLine(Int_t argc, char** argv) public:
SimuApplication(Int_t argc, char** argv) virtual ~SimuApplication() static TClass* Class() void CopyEvent() Bool_t DoAll() Bool_t DoEvent(Bool_t WriteRoot = kFALSE, Bool_t WriteTelemetry = kFALSE) Bool_t DumpLastEvent(string* buffer) void EndJob() Int_t EvCounter() const EEvent* Event() Int_t EvMax() const TObjArray* GetCopies() Int_t GetRunNumber() const Bool_t HasChanged(EsafElement e) const virtual void Help(const char* line) virtual TClass* IsA() const Bool_t isLocked() SimuRootFileManager* Manager() void ResetCopies() void ResetEvCounter() ERunParameters* RunPars() void SetChanged(EsafElement e, Bool_t val = kTRUE) void SetLock(Bool_t lk = kTRUE) void SetRunNumber(Int_t val) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
string fEsafSys LightToEuso* fLightToEuso Detector* fDetector euso detector Bool_t fHasChanged[2] needs re-configure Int_t fLock lock the simulation Int_t fEvCount number of events processed Int_t fEvMax max number of events to process UInt_t fSeed random number seed Int_t fRunNumber run number TString fRunName name of the run SimuRootFileManager* fManager Bool_t fWriteRoot kTRUE if root file must be written Bool_t fWriteTelemetry same for Telemetry file string fOutDir string fOutFileName map<ESimuFiles,string> fFileNames vector<string> fUsrKeys vector<string> fUsrValues vector<string> fUsrCfgs TObjArray fEventCopies public:
static const SimuApplication::ESimuFiles kLog static const SimuApplication::ESimuFiles kDump static const SimuApplication::ESimuFiles kRoot static const SimuApplication::ESimuFiles kTelemetry

Class Description


SimuApplication( Int_t argc, char **argv ) : TRint("Euso Detector Simulation", &argc, argv, 0, 0, kTRUE ), fLightToEuso(0), fDetector(0), fLock(0), fEvCount(0), fEvMax(1), fManager(0)
 Constructor.
 Parse inline parameters, build the detector and electronics
 reload random seed if required


~SimuApplication()
 destructor
 close output file if open
 save random engine status

void ParseCmdLine( Int_t argc, char** argv )
 Parse the commandline and set the corresponding variables


void Init()
 Initialize Config and the message system


void EndJob()
 final clean up

void Build()
 build (or rebuild) application chain

void Help(const char* line)

Bool_t DoEvent(Bool_t WriteRoot, Bool_t WriteTelemetry)
 simulate and (if required) display a single event
 WriteRoot=true          : writes event in Root file
 WriteTelemetry=true     : writes in Telemetry (ASCII) file

Bool_t DoAll()
 Simulate all events available from the data source
 DoEvent returns kFalse in case of error so the run will stop
 if fEvMax is -1 it never stops until error or end of file


void SetLock( Bool_t lk)
 Lock the application.
 If locked, events are not processed


Bool_t DumpLastEvent(string* buffer )
 dump event on stdout or into a buffer
 buffer must be large enough
 if buffer is NULL, dump on cout
 return kFALSE if no data is available


void ResetCopies()
 reset list of event copies
 used for re-rerunning the same event with different parameters



Inline Functions


                       Int_t EvMax() const
                      Bool_t isLocked()
                        void SetChanged(EsafElement e, Bool_t val = kTRUE)
                      Bool_t HasChanged(EsafElement e) const
                       Int_t EvCounter() const
                        void ResetEvCounter()
                        void SetRunNumber(Int_t val)
                       Int_t GetRunNumber() const
                LightToEuso* Light()
                   Detector* Euso()
                        void DoOpticsAnalysis()
                     EEvent* Event()
             ERunParameters* RunPars()
        SimuRootFileManager* Manager()
                        void CopyEvent()
                  TObjArray* GetCopies()
                     TClass* Class()
                     TClass* IsA() const
                        void ShowMembers(TMemberInspector& insp, char* parent)
                        void Streamer(TBuffer& b)
                        void StreamerNVirtual(TBuffer& b)
About Us | EUSO Official Website | Web pages created by Roberto Pesce and Alessandro Thea - Last Update Wed Nov 16 16:22:21 2005