Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:20:35

0001 #ifndef __oEVENT_BASE_H
0002 #define __oEVENT_BASE_H
0003 
0004 #include "EvtConstants.h"
0005 #include "phenixTypes.h"
0006 #include "EvtStructures.h"
0007 #include "packet.h"
0008 
0009 #define WINDOWSEXPORT
0010 
0011 // virtual base class for an "event"
0012 
0013 #ifndef __CINT__
0014 class WINDOWSEXPORT oEvent {
0015 #else
0016 class  oEvent {
0017 #endif
0018 
0019 public:
0020 
0021   //** Constructors
0022   oEvent(PHDWORD *, const int maxlength
0023      , const int irun, const int itype, const int eseq);
0024 
0025   virtual ~oEvent() {}
0026   virtual int prepare_next();
0027   virtual int prepare_next( const int, const int);
0028   virtual void set_event_type(const int);
0029 
0030   // frame and packet adding
0031   virtual int addFrame(PHDWORD *);
0032 
0033   virtual int addPacket ( const Packet * p);
0034 
0035   virtual int addUnstructPacketData(PHDWORD * data, 
0036             const int length,
0037             const int id,
0038             const int wordsize,
0039             const int hitformat);
0040 protected:
0041   
0042   PHDWORD *event_base;
0043   int current;
0044   int in_frame;
0045   PHDWORD * currentFramePtr;
0046   evtdata_ptr evthdr;
0047   int max_length;
0048   int left;
0049   int maxSizeOfThisFrame;
0050 };
0051 
0052 #endif