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

In This Package:

TESDemoFill2.cpp
Go to the documentation of this file.
00001 #include "src/TESDemoFill2.h"
00002 
00003 #include "GaudiKernel/IDataProviderSvc.h"
00004 
00005 #include "Event/TESDemoReadout.h"
00006 #include "Event/TESDemoNeutron.h"
00007 
00008 #include <cstdlib>
00009 
00010 using namespace DayaBay;
00011 
00012 TESDemoFill2::TESDemoFill2( const std::string& name, 
00013                             ISvcLocator* pSvcLocator ) :
00014   GaudiAlgorithm(name,
00015                  pSvcLocator)
00016 {
00017   declareProperty("NeutronPercentage",
00018                   m_percentage=50,
00019                   "Percentage of Readouts to contain Neutrons");
00020   declareProperty("ReadoutPath",
00021                   m_readoutPath="/Event/TESDemo/Readout",
00022                   "Path from which to retrieve the Readouts");
00023   declareProperty("NeutronPath",
00024                   m_neutronPath="/Event/TESDemo/Neutron",
00025                   "Path, in the TES, into which the Neutron is stored");
00026 }
00027 
00028 StatusCode TESDemoFill2::initialize() {
00029 
00030    info() << "in initialize" 
00031           << endreq;
00032    info() << m_percentage
00033           << endreq;
00034    info() << m_readoutPath 
00035           << endreq;
00036    info() << m_neutronPath 
00037           << endreq;
00038    return StatusCode::SUCCESS;
00039 
00040 }
00041 
00042 StatusCode TESDemoFill2::execute() {
00043 
00044   TESDemoReadout* readout = get<TESDemoReadout>(m_readoutPath.value());
00045 
00046   // Determine whether this readout will contain a neutron.
00047   if (random() % 101 <= m_percentage.value()) {
00048     return StatusCode::SUCCESS;
00049   }
00050 
00051   TESDemoNeutron* neutron = new TESDemoNeutron(readout->timeStamp(),
00052                                                readout);
00053   put(neutron,
00054       m_neutronPath.value());
00055 
00056   return StatusCode::SUCCESS;
00057 
00058 }
00059 
00060 StatusCode TESDemoFill2::finalize() {
00061 
00062   info() << "in finalize"
00063          << endreq;
00064   return StatusCode::SUCCESS;
00065 
00066 }
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 10:09:00 for TESDemo by doxygen 1.7.4