eic-smear
1.0.3
A collection of ROOT classes for Monte Carlo events and a fast-smearing code simulating detector effects for the Electron-Ion Collider task force
|
Go to the documentation of this file.
10 #ifndef INCLUDE_EICSMEAR_ERHIC_FILE_H_
11 #define INCLUDE_EICSMEAR_ERHIC_FILE_H_
18 #include <TObjString.h>
56 virtual bool Extract(
const std::string& file) = 0;
64 virtual Int_t
Save()
const = 0;
97 bool Extract(
const std::string& file);
145 bool Extract(
const std::string& file);
193 bool Extract(
const std::string& file);
241 bool Extract(
const std::string& file);
324 bool Extract(
const std::string& filename);
400 std::string
Locate(
const std::string& mcFile)
const;
413 typedef std::map<std::string, LogReader*>
Map;
561 typedef std::map<std::string, FileType*>
Map;
567 #endif // INCLUDE_EICSMEAR_ERHIC_FILE_H_
TObjString nEvents_
Total cross section in microbarns
Processes PEPSI log files.
Double_t GetCrossSection() const
Returns the total cross section reported by the log file.
Int_t Save() const
Write the extracted information to the current file, if it is writeable.
LogReaderMilou()
Constructor.
TObjString nEvents_
Cross section error in nb
virtual LogReader * CreateLogReader() const
Create a LogReader for this type of Monte Carlo file.
virtual EventFromAsciiFactory< T > * CreateEventFactory(std::istream &is) const
Returns a new event factory instance.
const FileType * GetFile(const std::string &generatorName) const
Returns a FileType object for the named generator.
Creates events from an input plain text file containing appropriately formatted data.
TObjString nEvents_
Total cross section in microbarns
bool Extract(const std::string &file)
Extract data from the named log file.
std::map< std::string, LogReader * > Map
virtual LogReader * Create() const =0
Return a new LogReader instance.
virtual ~LogReader()
Destructor.
TObjString nEvents_
Total cross section in microbarns
virtual ~FileType()
Destructor.
Double_t GetCrossSectionError() const
Returns the error on total cross section reported by the log file.
bool Extract(const std::string &file)
Extract data from the named log file.
virtual ~LogReaderDjangoh()
Destructor.
Int_t Save() const
Write the extracted information to the current file, if it is writeable.
virtual bool Extract(const std::string &file)=0
Extract data from the named log file.
virtual LogReader * CreateLogReader() const =0
Returns a reader to process the log file corresponding to this type of file.
Int_t GetNEvents() const
Returns the number of events reported by the log file.
Processes DJANGOH log files.
LogReaderMilou * Create() const
Return a new LogReaderMilou instance.
virtual std::string GetGeneratorName() const
Returns the name of the generator.
virtual VirtualEventFactory * CreateEventFactory(std::istream &) const =0
Returns a new event object for the generator making this type of file.
Int_t GetNEvents() const
Returns the number of events reported by the log file.
virtual File< T > * Create() const
Returns a new File object.
Base class for log file processors.
LogReaderGmcTrans * Create() const
Return a new LogReaderGmcTrans instance.
LogReaderFactory()
Constructor.
virtual FileType * Create() const =0
Returns a new FileType instance.
static LogReaderFactory & GetInstance()
Returns the single instance of LogReaderFactory.
TObjString mCrossSection
Total cross section in microbarns.
~LogReaderFactory()
Destructor.
virtual ~File()
Destructor.
bool Extract(const std::string &file)
Extract data from the named log file.
virtual ~FileFactory()
Destructor.
Abstract base class for event builders.
LogReader * CreateReader(const EventBase &event) const
Returns a LogReader instance of the type for reading log files from the Monte Carlo generator event t...
LogReaderPythia * Create() const
Return a new LogReaderPythia instance.
Int_t Save() const
Write the stored cross section and number of events to the active ROOT directory.
LogReaderPepsi()
Constructor.
virtual EventBase * AllocateEvent() const =0
Returns a new event object for the generator making this type of file.
virtual ~LogReaderPepsi()
Destructor.
virtual std::string GetGeneratorName() const =0
Returns the name of the generator making this type of file.
std::map< std::string, FileType * > Map
LogReaderPythia()
Constructor.
FileFactory()
Constructor.
virtual ~LogReaderMilou()
Destructor.
Double_t GetCrossSection() const
Returns the total cross section reported by the log file.
LogReaderDjangoh()
Constructor.
static FileFactory & GetInstance()
Returns the single instance of FileFactory.
bool Extract(const std::string &filename)
Search the named file.
TObjString crossSectionError_
Total cross section in nb
TObjString mNEvents
Number of generated events.
Abstract base class for Monte Carlo file types.
Processes PYTHIA log files.
virtual Int_t Save() const =0
Saves the extracted data to the current file, if one is open and is writeable.
LogReaderGmcTrans()
Constructor.
bool Extract(const std::string &file)
Extract data from the named log file.
Processes PYTHIA log files.
LogReaderDjangoh * Create() const
Return a new LogReaderDjangoh instance.
Int_t Save() const
Write the extracted information to the current file, if it is writeable.
virtual T * AllocateEvent() const
Allocates an event of the type for this file.
std::string Locate(const std::string &mcFile) const
Attempts to locate a log file corresponding to the named Monte Carlo file.
Factory class for LogReaders.
virtual ~LogReaderPythia()
Destructor.
Int_t Save() const
Write the extracted information to the current file, if it is writeable.
LogReaderPepsi * Create() const
Return a new LogReaderPepsi instance.
Processes gmc_trans log files.
Abstract base class for DIS Monte Carlo events.
virtual ~LogReaderGmcTrans()
Destructor.