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

In This Package:

DybIODaqSvc.h
Go to the documentation of this file.
00001 #ifndef DYBIO_DYBIODAQSVC_H
00002 #define DYBIO_DYBIODAQSVC_H
00003 
00004 /*
00005  *  DybIODaqSvc.h
00006  *  DybIOSvc
00007  *
00008  *  Created by Simon Patton on 3/7/11.
00009  *  Copyright 2011 DayaBay Collaboration. All rights reserved.
00010  *
00011  */
00012 
00013 class RootInputStream;
00014 
00015 #include "DaqReadoutSvc/IDaqReadoutSvc.h"
00016 #include "Event/DaqBlockHeader.h"
00017 #include "PerDaqBlock/PerDaqBlockHeader.h"
00018 #include "RootIOSvc/RootIOTypedCnv.h"
00019 #include <string>
00020 
00021 class DaqReadoutSvc;
00022 class IDaqReadoutSvc;
00023 
00024 namespace DayaBay {
00025     class DaqBlock;
00026 }
00027 
00028 #include "GaudiKernel/Service.h"
00029 #include "DybIO/IDybIODaqSvc.h"
00030 
00031 class DybIODaqSvc :
00032     public Service,
00033     virtual public IDybIODaqSvc {
00034 
00035   public:
00036 
00040     DybIODaqSvc(const std::string& name,
00041                 ISvcLocator* svc);
00042 
00046     virtual StatusCode queryInterface(const InterfaceID& id,
00047                                       void** interface);
00048 
00052     virtual StatusCode finalize();
00053 
00057     virtual StatusCode setEventEntry(const unsigned int entry);
00058 
00059   private:
00060 
00064     DayaBay::DaqBlockHeader* readDaqBlockHeader();
00065 
00069     StatusCode findDaqReadoutSvc();
00070 
00074     StatusCode findInputStream();
00075 
00079     StatusCode findConverter();
00080 
00084     StatusCode parseDaqBlock(const DayaBay::DaqBlock& block);
00085 
00089     std::string m_daqBlockLocation;
00090 
00094     IRootIOSvc* m_rioSvc;
00095 
00099     RootInputStream* m_input;
00100 
00104     IConversionSvc* m_convSvc;
00105     
00109     DaqReadoutSvc* m_daqSvc;
00110 
00114     RootIOTypedCnv<PerDaqBlockHeader, DayaBay::DaqBlockHeader>* m_daqBlockCnv;
00115 
00119     unsigned int m_nextInsertion;
00120 
00124     unsigned int m_entry;
00125 
00129     DayaBay::DaqBlockHeader* m_pendingHeader;
00130 
00131 };
00132 #endif // DYBIO_DYBIODAQSVC_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 10:15:57 for DybIO by doxygen 1.7.4