/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

RomFragment.h
Go to the documentation of this file.
00001 #ifndef EVENTREADOUTFORMAT_ROMFRAGMENT_H
00002 #define EVENTREADOUTFORMAT_ROMFRAGMENT_H
00003 
00004 /*
00005  *  RomFragment.h
00006  *  EventReadoutFormat
00007  *
00008  *  Created by Simon Patton on 7/19/10.
00009  *  Copyright 2010 DayaBay Collaboration. All rights reserved.
00010  *
00011  */
00012 #include "EventReadoutFormat/EventBuffer.h"
00013 
00014 namespace DybDaq {
00015     class ByteBuffer;
00016     class EventReadout;
00017     class EventTraits;
00018     class RomData;
00019     class RomExpandable;
00020     class RomHeader;
00021 }
00022 
00023 #include "DaqReadoutFormat/DaqContainer.h"
00024 
00025 namespace DybDaq {
00026 
00027 class RomFragment : public DaqContainer {
00028 
00029 public:
00030 
00031     friend class EventReadout;
00032 
00036     virtual ~RomFragment();
00037 
00038     /*
00039      * Returns the RomHeader for this fragment.
00040      */
00041     const RomHeader& header() const;
00042 
00043     /*
00044      * Returns the RomData for this fragment.
00045      */
00046     const RomData& data() const;
00047 
00048     /*
00049      * Returns the base RomData for this fragment, unwrapping any CBLT that may exist.
00050      */
00051     const RomData& unwrappedData() const;
00052 
00056     virtual unsigned int bufferSize() const;
00057 
00058 protected:
00059 
00063     RomFragment(const unsigned int site,
00064                 const unsigned int detector,
00065                 const unsigned int moduleType,
00066                 const unsigned int slot,
00067                 const RomData* data,
00068                 const EventTraits& traits,
00069                 const bool cbltWrapping,
00070                 DaqExpandable& expandable);
00071 
00075     RomFragment(const ByteBuffer& byteBuffer,
00076                 const EventTraits& traits,
00077                 const bool cbltWrapping);
00078 
00082     virtual unsigned int gatherComponents(OutputBufferList& outputBuffers) const;
00083 
00087     virtual unsigned int inspectComponents(DaqBuffer::Bytes& inspectors) const;
00088     
00092     virtual void expanded(const unsigned int size);
00093 
00094 private:
00095 
00099     RomFragment();
00100 
00104     RomFragment(RomFragment& rhs);
00105 
00109     RomFragment& operator=(RomFragment& rhs);
00110 
00114     mutable RomHeader* m_header;
00115 
00119     mutable const RomData* m_data;
00120 
00124     bool m_cbltWrapping;
00125 };
00126 
00127 }
00128 
00129 #endif // EVENTREADOUTFORMAT_ROMFRAGMENT_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 09:53:15 for EventReadoutFormat by doxygen 1.7.4