//-------------------------------------------------------------------------- // File and Version Information: // AppUserBuild.cc for stnmaker // (an executable building the standard ntuple) // // Description: // Class AppUserBuild. This class must be provided by the user of // the framework in order to build an application. It must define // the modules that are to form the basis of the application. // // Environment: // Software developed for the CDFII Detector. // // revision history: // ----------------- // *0001 Feb 14 2000 P.Murat: example of how to use STNTUPLE maker //------------------------------------------------------------------------ #include "Framework/APPUserBuild.hh" #include "FrameMods/EventDump.hh" #include "FrameMods/F77InterfaceModule.hh" #include "FrameMods/addCDFrequiredModules.hh" #include "Level3Mods/Prereq.hh" #include "PADSMods/PadRawModule.hh" // #include "FrameMods/addAllStorableObjects.hh" #include "ElectronObjects/CdfEmObjectView.hh" #include "ClcObjects/addClcObjects.hh" #include "Level3Objects/addLevel3Objects.hh" #include "MuonObjects/addMuonObjects.hh" #include "RawDataBanks/addRawDataBanks.hh" #include "RegionalObjects/addRegionalObjects.hh" #include "RRL3/addRRL3.hh" #include "SimulationObjects/addSimulationObjects.hh" #include "StorableBanks/addStorableBanks.hh" #include "TauObjects/addTauObjects.hh" #include "TofObjects/addTofObjects.hh" #include "TriggerObjects/addTriggerObjects.hh" #include "JetProbObjects/addJetProbObjects.hh" #include "TrackingMods/SiPatternRecModule.hh" #include "PhoenixMods/PhoenixTracking.hh" #include "PhoenixMods/PhoenixElectrons.hh" #include "RootUtils/Utils/TCdfRoot.hh" #include "RootObjs/Dump/TBankDump.h" #include "Stntuple/mod/InitStntupleModule.hh" #include "Stntuple/mod/FillStntupleModule.hh" #include "Stntuple/mod/StntupleMakerModule.hh" #include "Stntuple/mod/StntupleFilterModule.hh" #include #include "SimulationMods/SimInitManager.hh" #include "TrackingUserMods/TrackRefitModule.hh" #include "TrackingMods/CT_TrackingModule.hh" #include "TrackingUserMods/TrackObspMatch.hh" #include "VertexMods/vxprim.hh" #include "VertexMods/ZVertexModule.hh" #include "VertexMods/PrimeVtxModule.hh" #include "CalorMods/CalorimetryModule.hh" #include "CalorMods/CprClusterModule.hh" #include "CalorMods/CP2QModule.hh" #include "ShowerMaxMods/CentralStripClusterModule.hh" #include "ElectronMods/EmClusterModule.hh" // not wrappered version #include "ElectronMods/CdfEmObjectModule.hh" #include "MuonMods/MuonLinkerModule.hh" #include "CalorUserMods/TrackCalModule.hh" #include "JetMods/JetCluModule.hh" #include "JetMods/KtClusModule.hh" // Kt. based algo. #include "JetMods/MidPointModule.hh" // see CDF note 5293 #include "MetMods/CdfMetModule.hh" #include "TofAlgs/Modules/TofManager.hh" #include "TofMods/TofModule.hh" #include "CosmicMods/CosmicFinderModule.hh" #include "Tau/mods/TauFinderModule.hh" #include "Tau/mods/CesMatchingModule.hh" #include "Tau/mods/Pi0ReconstructionModule.hh" #include "Tau/mods/TauIdModule.hh" #include "BTagMods/SecVtxModule.hh" #include "JetProbMods/JetProbModule.hh" #include "TopMods/TopEventModule.hh" #include "SoftElectronMods/ConversionFilterModule.hh" //added (bdc) #include "ShowerMaxMods/PlugStripClusterModule.hh" void stntuple_print_header(); //_____________________________________________________________________________ AppUserBuild::AppUserBuild(AppFramework* fwork): AppBuild(fwork) { AppModule* module; // APPInputModule* input_module; // APPOutputModule* output_module; //---------------------------------------------------------------------------- // force loading in necessary symbols //---------------------------------------------------------------------------- stntuple_print_header(); TCdfRoot::Instance(); //----------------------------------------------------------------------------- // default set of modules and full set of objects //----------------------------------------------------------------------------- // addAllStorableObjects(); addClcObjects(); addLevel3Objects(); addMuonObjects(); addRawDataBanks(); addRegionalObjects(); addRRL3(); addSimulationObjects(); addStorableBanks(); addTauObjects(); addTofObjects(); addTriggerObjects(); addJetProbObjects(); CdfEmObjectView* x = new CdfEmObjectView(); x->destroy(); addCDFrequiredModules(this); addStntupleDataBlocks(); //----------------------------------------------------------------------------- // global initialization modules (all enabled by default) //----------------------------------------------------------------------------- // module = new F77InterfaceModule("F77_MODULE","Default Fortran Interface"); // add(module); // module->setEnabled(true); //---------------------------------------------------------------------------- // use Prereq to filter on the trigger bits (disabled by default) //---------------------------------------------------------------------------- module = new Prereq(); add( module); module->setEnabled(false); //---------------------------------------------------------------------------- // "managers" //---------------------------------------------------------------------------- module = new SimInitManager(); add(module); module->setEnabled(false); //---------------------------------------------------------------------------- // refit tracks and redo vertices, CT_TrackingModule does nothing but // initializes calibration constants used by CosmicFinder //---------------------------------------------------------------------------- module = new TrackRefitModule(); add(module); module->setEnabled(false); module = new TrackObspMatch(); add(module); module->setEnabled(false); module = new CT_TrackingModule(); add(module); module->setEnabled(false); module = new ZVertexModule(); add(module); module->setEnabled(false); module = new VxPrim(); add(module); module->setEnabled(false); module = new PrimeVtxModule(); add(module); module->setEnabled(false); //---------------------------------------------------------------------------- // calorimetry //---------------------------------------------------------------------------- module = new CalorimetryModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // CPR/CES/PES clustering //----------------------------------------------------------------------------- module = new CprClusterModule(); add(module); module->setEnabled(false); module = new CP2QModule(); add( module); module->setEnabled(false); module = new CentralStripClusterModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // EM reconstruction //----------------------------------------------------------------------------- module = new EmClusterModule(); add(module); module->setEnabled(false); module = new CdfEmObjectModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // remake muons //----------------------------------------------------------------------------- module = new MuonLinkerModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // jet reconstruction //----------------------------------------------------------------------------- module = new JetCluModule(); add(module); module->setEnabled(false); module = new KtClusModule(); add(module); module->setEnabled(false); module = new MidPointModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // collection of combined tracks and towers //----------------------------------------------------------------------------- module = new TrackCalModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // tau reconstruction //----------------------------------------------------------------------------- module = new CesMatchingModule(); add(module); module->setEnabled(false); module = new Pi0ReconstructionModule(); add(module); module->setEnabled(false); module = new TauFinderModule(); add(module); module->setEnabled(false); module = new TauIdModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // redo missing et //----------------------------------------------------------------------------- module = new CdfMetModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // remake cosmic candidates //----------------------------------------------------------------------------- module = TofManager::getInstance(); add(module); module->setEnabled(false); module = new TofModule(); add(module); module->setEnabled(false); module = new CosmicFinderModule(); add(module); module->setEnabled(false); module = new ConversionFilterModule(); add(module); module->setEnabled(false); //----------------------------------------------------------------------------- // Phoenix tracks/electrons //----------------------------------------------------------------------------- module = new PhoenixTracking(); add(module); module->setEnabled(false); module = new SiPatternRecModule(); add(module); module->setEnabled(false); module = new PhoenixElectrons(); add(module); module->setEnabled(false); //---------------------------------------------------------------------------- // CalqModule puffs CEMD etc, SmxqModule puffs CES and CPR raw banks //---------------------------------------------------------------------------- module = new CalqModule(); add( module); module->setEnabled(false); module = new SmxqModule(); add( module); module->setEnabled(false); module = new CotqModule(); add( module); module->setEnabled(false); //----------------------------------------------------------------------------- // SecVtx/JetProb/TopEvent //----------------------------------------------------------------------------- module = new SecVtxModule(); add(module); module->setEnabled(false); module = new JetProbModule(); add(module); module->setEnabled(false); //module = new TopEventModule(); //add(module); //module->setEnabled(false); module = new PlugStripClusterModule(); add(module); module->setEnabled(false); module = new InitStntupleModule(); add(module); module->setEnabled(false); module = new StntupleFilterModule(); add(module); module->setEnabled(false); module = new StntupleMakerModule(); add(module); module->setEnabled(false); module = new FillStntupleModule(); add(module); module->setEnabled(false); module = new EventDump(); add(module); module->setEnabled(false); } //-------------- // Destructor -- //-------------- AppUserBuild::~AppUserBuild( ) { }