| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

DataSeparatorRecord.h

Go to the documentation of this file.
00001 #ifndef FILEREADOUTFORMAT_DATASEPARATORRECORD_H
00002 #define FILEREADOUTFORMAT_DATASEPARATORRECORD_H
00003 
00004 /*
00005  *  DataSeparatorRecord.h
00006  *  FileReadoutFormat
00007  *
00008  *  Created by Simon Patton on 7/18/10.
00009  *  Copyright 2010 DayaBay Collaboration. All rights reserved.
00010  *
00011  */
00012 
00013 namespace DybDaq {
00014     class ByteBuffer;
00015     class EventReadout;
00016 }
00017 
00018 #include "FileReadoutFormat/FileBuffer.h"
00019 
00020 namespace DybDaq {
00021     
00022     class DataSeparatorRecord : public FileBuffer {
00023         
00024     public:
00025         
00029         DataSeparatorRecord(const EventReadout& block,
00030                             unsigned int blockNumber,
00031                             const FileTraits& traits);
00032         
00036         DataSeparatorRecord(const ByteBuffer& byteBuffer,
00037                             const FileTraits& traits);
00038         
00042         virtual ~DataSeparatorRecord();
00043         
00047         virtual bool isMarked(unsigned int marker) const;
00048         
00052         const EventReadout& block() const;
00053         
00057         const EventReadout* extractBlock() const;
00058         
00062         unsigned int blockNumber() const;
00063         
00067         unsigned int blockLength() const;
00068         
00072         void setBlock(const EventReadout* block);
00073         
00078         virtual unsigned int gather(OutputBufferList& outputBuffers) const;
00079         
00080     protected:
00081         
00085         virtual unsigned int formatComponent() const;
00086         
00087     private:
00088         
00092         DataSeparatorRecord();
00093         
00097         DataSeparatorRecord(DataSeparatorRecord& rhs);
00098         
00102         DataSeparatorRecord& operator=(DataSeparatorRecord& rhs);
00103         
00107         void setBlockNumber(unsigned int blockNumber);
00108         
00112         void setBlockLength(unsigned int blockLength);
00113         
00117         const EventReadout* m_block;
00118         
00122         mutable bool m_owner;
00123         
00124     };
00125     
00126 }
00127 
00128 #endif // FILEREADOUTFORMAT_DATASEPARATORRECORD_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:08:33 2011 for FileReadoutFormat by doxygen 1.4.7