Mattione sim-recon Code Documentation
From GlueXWiki
hd_root
- Without Plugins:
main(): - instantiates MyProcessor and DApplication - MyProcessor inherits from JEventProcessor - JEventProcessor basically empty/virtual, constructor only initializes a few conrol variables during instantiation - MyProcessor constructor basically empty - DApplication inherits from JApplication - JApplication constructor sets up user signal instructions, mutexes, parses the command line, sets up the parameters in JParameterManager, etc. - DApplication constructor instantiates the DEventSourceHDDMGenerator and DFactoryGenerator, and registers them with JApplication - calls DApplication.Run(JEventProcessor) with the instantiated MyProcessor as the argument (DApplication.Run(JEventProcessor) is JApplication.Run(JEventProcessor)) - Calls DApplication.Init() - Calls JApplication.Init() - Attaches plugins, adds auto-activated factories (from the JParameterManager), calls JEventProcessor.init() for each processor (MyProcessor.init() creates the output root file) - Checks to see if should use SSE instructions - Launches threads (each thread calls JApplication.LaunchThread()) - Sends the main thread to sleep while the threads execute, wake up occassionally to check status, exits when done - Exits