Back to home page

sPhenix code displayed by LXR

 
 

    


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

0001 #ifndef __ONCSBUFFER_H
0002 #define __ONCSBUFFER_H
0003 
0004 #include "buffer.h"
0005 #include "oncsEvent.h"
0006 #include "BufferConstants.h"
0007 
0008 #include <stdio.h>
0009 
0010 #include "event_io.h"
0011 
0012 #ifndef __CINT__
0013 
0014 #define PRDFBUFFERID 0xffffffc0
0015 #define ONCSBUFFERID 0xffffc0c0
0016 
0017 class WINDOWSEXPORT oncsBuffer : public buffer {
0018 #else
0019   class  oncsBuffer : public buffer {
0020 #endif
0021 
0022 public:
0023 
0024   //** Constructors
0025 
0026   oncsBuffer( PHDWORD *array, const PHDWORD length);
0027 
0028   //  this creates a new event on the next address
0029   Event * getEvent();
0030 
0031   int buffer_swap();
0032 
0033   int *getEventData() { return 0;};
0034   int isGood() const { return 1;};
0035 
0036   int getBufferSequence() const;
0037 
0038   static int i4swap (const int in);
0039   static int i22swap (const int in);
0040   static short i2swap (const short in);
0041 
0042 protected:
0043   typedef struct 
0044   { 
0045     int Length;
0046     unsigned int ID;
0047     int Bufseq;
0048     int Runnr;
0049     int data[];
0050   } *buffer_ptr;
0051 
0052   int *data_ptr;
0053   int buffer_size;
0054   int max_length;
0055   int current_index;
0056   buffer_ptr bptr;
0057 };
0058 
0059 #endif