29 std::vector<std::string>
fArgs;
37 TARunInfo(
int runno,
const char* filename,
const std::vector<std::string>& args);
64 template<
class T> T*
Find()
68 T *ptr =
dynamic_cast<T*
>(f);
82#define TAFlag_SKIP (1<<0)
83#define TAFlag_QUIT (1<<1)
84#define TAFlag_WRITE (1<<2)
85#define TAFlag_DISPLAY (1<<3)
86#define TAFlag_SKIP_PROFILE (1<<4)
127 virtual void Init(
const std::vector<std::string> &args);
135 return new T(runinfo);
151#include "TDirectory.h"
152#include "TApplication.h"
167 static TApplication*
fgApp;
213#define HAVE_MANALYZER_PROFILER 1
218typedef std::chrono::high_resolution_clock::time_point
TAClock;
virtual TARunObject * NewRunObject(TARunInfo *runinfo)=0
virtual void Init(const std::vector< std::string > &args)
T * NewRunObject(TARunInfo *runinfo)
TAFlowEvent(TAFlowEvent *)
int fMtQueueFullUSleepTime
std::vector< TAFlagsQueue > fMtFlagQueue
std::vector< std::mutex > fMtFlowQueueMutex
int fMtQueueEmptyUSleepTime
std::atomic< bool > fMtShutdownRequested
std::vector< std::thread * > fMtThreads
std::vector< std::atomic< bool > > fMtThreadIsBusy
TAMultithreadHelper(int nModules)
std::vector< TAFlowEventQueue > fMtFlowQueue
std::vector< std::atomic< bool > > fMtThreadIsRunning
std::atomic< bool > fMtQuitRequested
std::string fOutputFileName
static std::string fgUserOutputFileName
TARootHelper(const TARunInfo *)
static TApplication * fgApp
static std::string fgUserOutputDirectory
static THttpServer * fgHttpServer
static std::vector< std::string > fgOutputRootFiles
static TDirectory * fgDir
void AddToFlowQueue(TAFlowEvent *)
TAFlowEvent * ReadFlowQueue()
TARunInfo(int runno, const char *filename, const std::vector< std::string > &args)
std::vector< std::string > fArgs
std::vector< char > fBorOdbDump
std::deque< TAFlowEvent * > fFlowQueue
static std::vector< std::string > fgFileList
std::vector< char > fEorOdbDump
TAMultithreadHelper * fMtInfo
static int fgCurrentFileIndex
virtual void ResumeRun(TARunInfo *runinfo)
virtual void PreEndRun(TARunInfo *runinfo)
virtual TAFlowEvent * Analyze(TARunInfo *runinfo, TMEvent *event, TAFlags *flags, TAFlowEvent *flow)
virtual void NextSubrun(TARunInfo *runinfo)
virtual void PauseRun(TARunInfo *runinfo)
virtual TAFlowEvent * AnalyzeFlowEvent(TARunInfo *runinfo, TAFlags *flags, TAFlowEvent *flow)
virtual void BeginRun(TARunInfo *runinfo)
virtual void EndRun(TARunInfo *runinfo)
TARunObject(TARunInfo *runinfo)
virtual void AnalyzeSpecialEvent(TARunInfo *runinfo, TMEvent *event)
TAUserProfilerFlow(TAFlowEvent *flow, const char *name, const TAClock &start)
const std::string fModuleName
std::chrono::high_resolution_clock::time_point TAClock
int manalyzer_main(int argc, char *argv[])
std::chrono::duration< double > TAClockDuration
std::deque< TAFlowEvent * > TAFlowEventQueue
std::deque< TAFlags * > TAFlagsQueue
std::chrono::high_resolution_clock::time_point TAClock