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

In This Package:

DaqXmlDump.py

Go to the documentation of this file.
00001 from DybPython.DybPythonAlg import DybPythonAlg
00002 from GaudiPython import SUCCESS, FAILURE, gbl
00003 
00004 class DaqXmlDump(DybPythonAlg):
00005     "Print Raw Data Example Algorithm"
00006     def __init__(self,name):
00007         DybPythonAlg.__init__(self,name)
00008         return
00009 
00010     def initialize(self):
00011         status = DybPythonAlg.initialize(self)
00012         if status.isFailure():
00013             return status
00014         self.info("initializing")
00015         return SUCCESS
00016 
00017     def execute(self):
00018         evt = self.evtSvc()
00019         readoutHdr = evt["/Event/Readout/ReadoutHeader"]
00020         if readoutHdr == None:
00021             self.error("Failed to get current readout header")
00022             return FAILURE
00023 
00024         readout = readoutHdr.readout()
00025         if readout == None:
00026             daqReadout = readoutHdr.daqReadout()
00027             if daqReadout == None:
00028                 self.error("Failed to get readout from header")
00029                 return FAILURE
00030             daqXmlStream = gbl.DybDaq.DaqXmlStream(gbl.cout,
00031                                                    "  ",
00032                                                    True)
00033             daqXmlStream.dumpElement(daqReadout.eventReadout())
00034             return SUCCESS
00035         pass
00036         return SUCCESS
00037 
00038     def finalize(self):
00039         self.info("finalizing")
00040         status = DybPythonAlg.finalize(self)
00041         return status
00042 
00043 dumpOpts = None
00044 
00045 def configure( argv=[] ):
00046     '''
00047     Example python algorithm
00048     '''
00049     from optparse import OptionParser, OptionGroup, IndentedHelpFormatter
00050     parser = OptionParser(usage="-m \"DaqXmlDump [-p]\"",
00051                           version="%prog 1.0")
00052     parser.add_option('-p',
00053                       '--python',
00054                       dest='USE_PYTHON',
00055                       action='store_true',
00056                       help='Use the python implementation, not the C++ one.',
00057                       default = False)
00058     global dumpOpts
00059     (dumpOpts, args) = parser.parse_args(argv)
00060 
00061     from Gaudi.Configuration import ApplicationMgr
00062     app = ApplicationMgr()
00063     if not dumpOpts.USE_PYTHON:
00064         from DaqFormatModules.DaqFormatModulesConf import DybDaq__DaqXmlDump
00065         daqXmlDump = DybDaq__DaqXmlDump("DaqXmlDump - C++")
00066         app.TopAlg.append(daqXmlDump)
00067 
00068 
00069 def run(app):
00070     '''
00071     Configure and add the algorithm to job
00072     '''
00073     global dumpOpts
00074     if dumpOpts.USE_PYTHON:
00075         daqXmlDump = DaqXmlDump("DaqXmlDump Python")
00076         app.addAlgorithm(daqXmlDump)
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:46:28 2011 for DaqFormatModules by doxygen 1.4.7