Go to the documentation of this file.00001 #ifndef FUSHMRECOCELL_H
00002 #define FUSHMRECOCELL_H 1
00003
00004
00005 namespace evf {
00006
00007 class FUShmRecoCell
00008 {
00009 public:
00010
00011
00012
00013 FUShmRecoCell(unsigned int payloadSize);
00014 ~FUShmRecoCell();
00015
00016
00017
00018
00019
00020 void initialize(unsigned int index);
00021
00022 unsigned int index() const { return index_; }
00023 unsigned int rawCellIndex()const { return rawCellIndex_; }
00024 unsigned int runNumber() const { return runNumber_; }
00025 unsigned int evtNumber() const { return evtNumber_; }
00026 unsigned int outModId() const { return outModId_; }
00027 unsigned int fuProcessId() const { return fuProcessId_; }
00028 unsigned int fuGuid() const { return fuGuid_; }
00029 unsigned int type() const { return type_; }
00030
00031 unsigned int payloadSize() const { return payloadSize_; }
00032 unsigned char* payloadAddr() const;
00033 unsigned int eventSize() const { return eventSize_; }
00034
00035 void writeInitMsg(unsigned int outModId,
00036 unsigned int fuProcessId,
00037 unsigned int fuGuid,
00038 unsigned char *data,
00039 unsigned int dataSize);
00040
00041 void writeEventData(unsigned int rawCellIndex,
00042 unsigned int runNumber,
00043 unsigned int evtNumber,
00044 unsigned int outModId,
00045 unsigned int fuProcessId,
00046 unsigned int fuGuid,
00047 unsigned char *data,
00048 unsigned int dataSize);
00049
00050 void writeErrorEvent(unsigned int rawCellIndex,
00051 unsigned int runNumber,
00052 unsigned int evtNumber,
00053 unsigned int fuProcessId,
00054 unsigned char *data,
00055 unsigned int dataSize);
00056
00057 void clear();
00058
00059
00060
00061
00062
00063 static unsigned int size(unsigned int payloadSize);
00064
00065
00066 private:
00067
00068
00069
00070 unsigned int index_;
00071 unsigned int rawCellIndex_;
00072 unsigned int runNumber_;
00073 unsigned int evtNumber_;
00074 unsigned int outModId_;
00075 unsigned int fuProcessId_;
00076 unsigned int fuGuid_;
00077 unsigned int type_;
00078 unsigned int payloadSize_;
00079 unsigned int payloadOffset_;
00080 unsigned int eventSize_;
00081
00082 };
00083
00084
00085 }
00086
00087
00088 #endif