CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/EventFilter/ShmBuffer/interface/FUShmRecoCell.h

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     // construction/destruction
00012     //
00013     FUShmRecoCell(unsigned int payloadSize);
00014     ~FUShmRecoCell();
00015     
00016     
00017     //
00018     // member functions
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     // static member functions
00062     //
00063     static unsigned int size(unsigned int payloadSize);
00064     
00065     
00066   private:
00067     //
00068     // member data
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 } // namespace evf
00086 
00087 
00088 #endif