CMS 3D CMS Logo

StreamerOutputIndexFile.h

Go to the documentation of this file.
00001 
00003 #ifndef IOPool_Streamer_StreamerOutputIndexFile_h
00004 #define IOPool_Streamer_StreamerOutputIndexFile_h
00005 
00006 #include "IOPool/Streamer/interface/InitMsgBuilder.h"
00007 #include "IOPool/Streamer/interface/InitMessage.h"
00008 
00009 #include "IOPool/Streamer/interface/EventMsgBuilder.h"
00010 #include "IOPool/Streamer/interface/EventMessage.h"
00011 
00012 #include "IOPool/Streamer/interface/StreamerFileIO.h"
00013 #include "IOPool/Streamer/interface/MsgTools.h"
00014 
00015 #include<string>
00016 #include<vector>
00017 
00018   class StreamerOutputIndexFile 
00020   {
00021   public:
00022      explicit StreamerOutputIndexFile(const std::string& name);
00023 
00024      ~StreamerOutputIndexFile();
00025 
00026      //Magic# and Reserved fileds
00027      void writeIndexFileHeader(uint32 magicNumber, uint64 reserved);
00028 
00029      void write(const InitMsgBuilder&);
00030      void write(const InitMsgView&);
00031 
00032      void write(const EventMsgBuilder&, uint64);
00033      void write(const EventMsgView&, uint64);
00034 
00035      uint32 writeEOF(uint32 statusCode,
00036                     const std::vector<uint32>& hltStats);
00037 
00038      uint32 adler32() const { return indexfile_->adler32(); }
00039 
00040   private:
00041     OutputFile* indexfile_;
00042 
00043   };
00044 #endif

Generated on Tue Jun 9 17:39:18 2009 for CMSSW by  doxygen 1.5.4