MINT2
IMinimalEventList.h
Go to the documentation of this file.
1 #ifndef IMINIMALEVENTLISTB_HH
2 #define IMINIMALEVENTLISTB_HH
3 // author: Jonas Rademacker (Jonas.Rademacker@bristol.ac.uk)
4 // status: Mon 9 Feb 2009 19:17:54 GMT
5 
6 #include "Mint/Utils.h"
7 
8 /*
9  looks like array
10  Covers both, IEventList and DiskResidentEventList
11  Inefficient in so far as getEvent passes copies, not reference
12  but that's the price to pay for allowing DiskResidentEventList
13  (as well as IEventList, which can pass references).
14  So only use when you really need this flexibility.
15  For time-critical loops, insist on IEventList where possible.
16 */
17 
18 namespace MINT{
19 
20 template<typename EVENT_TYPE>
22 {
23  protected:
25  public:
26 
27  virtual unsigned int size() const=0;
28  virtual EVENT_TYPE getEvent(unsigned int i) const=0;
29  virtual bool Add(const EVENT_TYPE & evt)=0;
30 
31 };
32 }//namespace MINT
33 #endif
34 //
virtual bool Add(const EVENT_TYPE &evt)=0
virtual EVENT_TYPE getEvent(unsigned int i) const =0
virtual unsigned int size() const =0