GRUTinizer
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TDataLoop.h
Go to the documentation of this file.
1 #ifndef _TDATALOOP_H_
2 #define _TDATALOOP_H_
3 
4 #ifndef __CINT__
5 #include <atomic>
6 #include <condition_variable>
7 #include <thread>
8 #endif
9 
10 #include <cstdlib>
11 #include <iostream>
12 
13 #include "StoppableThread.h"
14 #include "ThreadsafeQueue.h"
15 #include "TRawEvent.h"
16 
17 class TRawEventSource;
18 
19 class TDataLoop : public StoppableThread {
20 public:
23  virtual ~TDataLoop();
24 
25  const TRawEventSource& GetSource() const { return *source; }
26 
27  std::string Status();
28 
29 protected:
30  bool Iteration();
31 
32 private:
33  TDataLoop();
34  TDataLoop(const TDataLoop& other);
35  TDataLoop& operator=(const TDataLoop& other);
36 
39 
40  ClassDef(TDataLoop, 0);
41 };
42 
43 #endif /* _TDATALOOP_H_ */