00001 #include "DumpUnobservableStatisticsAlg.h" 00002 #include "Event/SimHeader.h" 00003 #include "Event/SimUnobservableStatisticsHeader.h" 00004 00005 #include "GaudiKernel/DeclareFactoryEntries.h" 00006 00007 DECLARE_ALGORITHM_FACTORY(DumpUnobservableStatisticsAlg); 00008 00009 00010 DumpUnobservableStatisticsAlg::DumpUnobservableStatisticsAlg(const std::string& name, ISvcLocator* pSvcLocator) 00011 : GaudiAlgorithm(name,pSvcLocator) 00012 { 00013 declareProperty("Location",m_location= DayaBay::SimHeaderLocation::Default, 00014 "Location in the TES to get Event data"); 00015 } 00016 00017 DumpUnobservableStatisticsAlg::~DumpUnobservableStatisticsAlg() 00018 { 00019 } 00020 00021 StatusCode DumpUnobservableStatisticsAlg::initialize() 00022 { 00023 return StatusCode::SUCCESS; 00024 } 00025 00026 StatusCode DumpUnobservableStatisticsAlg::finalize() 00027 { 00028 return StatusCode::SUCCESS; 00029 } 00030 00031 StatusCode DumpUnobservableStatisticsAlg::execute() 00032 { 00033 using namespace DayaBay; 00034 using std::endl; 00035 00036 DayaBay::SimHeader* header = 0; 00037 if (exist<DayaBay::SimHeader>(evtSvc(),m_location)) { 00038 header = get<DayaBay::SimHeader>(m_location); 00039 } 00040 if(!header) { 00041 warning() << "No SimHeader found." <<endreq; 00042 return StatusCode::SUCCESS; 00043 } 00044 00045 const SimUnobservableStatisticsHeader* h = header->unobservableStatistics(); 00046 if(!h) { 00047 warning() << "No SimUnobservableStatisticsHeader found!" << endreq; 00048 return StatusCode::SUCCESS; 00049 } 00050 00051 info() << "-------DumpUnobservableStatisticsAlg::::" << endreq; 00052 info() << *h << endreq; 00053 00054 00055 return StatusCode::SUCCESS; 00056 }