QwAnalysis
|
This is the main executable for the tracking analysis. More...
#include <sys/time.h>
#include "QwLog.h"
#include "QwRootFile.h"
#include "QwOptionsTracking.h"
#include "QwEventBuffer.h"
#include "QwHistogramHelper.h"
#include "QwEPICSEvent.h"
#include "QwTrackingWorker.h"
#include "QwEvent.h"
#include "QwHitContainer.h"
#include "QwHitRootContainer.h"
#include "QwRunCondition.h"
#include "QwSubsystemArrayTracking.h"
#include "QwSciFiDetector.h"
#include "QwDriftChamberHDC.h"
#include "QwDriftChamberVDC.h"
#include "QwTriggerScintillator.h"
#include "QwMainDetector.h"
#include "QwScanner.h"
#include "QwRaster.h"
#include "QwSubsystemArrayParity.h"
#include "QwHelicity.h"
#include "QwBeamLine.h"
#include "QwScaler.h"
Go to the source code of this file.
Functions | |
Int_t | main (Int_t argc, Char_t *argv[]) |
This is the main executable for the tracking analysis.
Definition in file QwTracking.cc.
Int_t main | ( | Int_t | argc, |
Char_t * | argv[] | ||
) |
without anything, print usage
First, fill the search paths for the parameter files; this sets a static variable within the QwParameterFile class which will be used by all instances. The "scratch" directory should be first.
Then, we set the command line arguments and the configuration filename, and we define the options that can be used in them (using QwOptions).
TODO: I have disabled the AddConfigFile("qweak_mysql.conf") line below, because the standard version contains options which are not defined in the basic QwDatabase DefineOptions function. We should figure out something better... gQwOptions.AddConfigFile("qweak_mysql.conf"); Define the command line options
Load command line options for the histogram/tree helper class
Setup screen and file logging
Create the event buffer
Start loop over all runs
Begin processing for the first run.
Set the current event number for parameter file lookup
Clear options to pick up run number specific config files
Create an EPICS event
Load the tracking detectors from file
Get detector geometry
Load the parity detectors from file
Create the tracking worker
Create a new event structure
Definition at line 46 of file QwTracking.cc.
References QwParameterFile::AppendToSearchPath(), QwEPICSEvent::CalculateRunningValues(), QwRootFile::Close(), QwEventBuffer::CloseStream(), QwRootFile::ConstructHistograms(), QwRootFile::ConstructIndices(), QwRootFile::ConstructTreeBranches(), DefineOptionsTracking(), QwLog::endl(), QwEventBuffer::FillEPICSData(), QwSubsystemArrayTracking::FillHardwareErrorSummary(), QwRootFile::FillHistograms(), QwEventBuffer::FillSubsystemConfigurationData(), QwEventBuffer::FillSubsystemData(), QwRootFile::FillTree(), QwRootFile::FillTreeBranches(), QwEPICSEvent::GetDataValue(), getenv_safe_string(), QwEventBuffer::GetEventNumber(), QwSubsystemArrayTracking::GetGeometry(), QwSubsystemArrayTracking::GetHitList(), QwTrackingWorker::GetMagneticFieldCurrent(), QwEventBuffer::GetNextEvent(), QwEventBuffer::GetRunLabel(), QwEventBuffer::GetRunNumber(), QwRootFile::GetTree(), QwOptions::GetValue(), gQwHists, gQwLog, gQwOptions, QwEPICSEvent::HasDataLoaded(), QwEventBuffer::IsEPICSEvent(), QwEventBuffer::IsPhysicsEvent(), QwEventBuffer::IsROCConfigurationEvent(), QwOptions::ListConfigFiles(), QwEPICSEvent::LoadChannelMap(), QwHistogramHelper::LoadHistParamsFromFile(), QwRootFile::NewTree(), QwTrackingWorker::ngood, QwEventBuffer::OpenNextStream(), QwOptions::Parse(), QwRootFile::PrintDirs(), QwEventBuffer::PrintRunTimes(), QwRootFile::PrintTrees(), QwTrackingWorker::ProcessEvent(), QwSubsystemArray::ProcessEvent(), QwEventBuffer::ProcessOptions(), QwLog::ProcessOptions(), QwSubsystemArray::ProcessOptions(), QwError, QwMessage, QwVerbose, QwEventBuffer::ReOpenStream(), MQwCodaControlEvent::ReportRunSummary(), QwOptions::SetCommandLine(), QwParameterFile::SetCurrentRunNumber(), QwTrackingWorker::SetMagneticFieldCurrent(), QwOptions::Usage(), QwRootFile::Write(), and QwRootFile::WriteParamFileList().