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

In This Package:

DybPython::DybPythonAlg::DybPythonAlg Class Reference

Inheritance diagram for DybPython::DybPythonAlg::DybPythonAlg:
[legend]
Collaboration diagram for DybPython::DybPythonAlg::DybPythonAlg:
[legend]
List of all members.

Public Member Functions

def __init__
def initialize
def execute
def finalize
def verbose
def debug
def info
def warning
def error
def fatal
def getAES

Public Attributes

 msgSvc
 archiveSvc
 stats

Private Member Functions

def _initializeAES

Detailed Description

Definition at line 26 of file DybPythonAlg.py.


Member Function Documentation

def DybPython::DybPythonAlg::DybPythonAlg::__init__ (   self,
  name = None 
)

Definition at line 28 of file DybPythonAlg.py.

00028                                   :
00029 
00030         '''
00031         Create a DybPythonAlg.  The name is the class name by default.
00032         If sub class overrides this method it must be explicitly called like:
00033 
00034         DybPythonAlg.__init__(self,name)
00035         or
00036         DybPythonAlg.__init__(self)
00037         '''
00038 
        if not name: name = self.__class__.__name__

def DybPython::DybPythonAlg::DybPythonAlg::initialize (   self  ) 

Initialize the algorithm.  If sub classes overrides this
method they must call it explicitly near the beginning like:

sc = DybPythonAlg.initialize(self)
if sc.isFailure(): return sc
# ... now do my own initialization ...

Definition at line 39 of file DybPythonAlg.py.

00039                    : name = self.__class__.__name__
00040         GaudiAlgo.__init__(self,name)
00041         self.msgSvc = None
00042         self.archiveSvc = None
00043         self.stats = iStatsSvc(self)
00044         return
00045 
00046     def initialize(self):
00047 
00048         '''Initialize the algorithm.  If sub classes overrides this
00049         method they must call it explicitly near the beginning like:
00050 
00051         sc = DybPythonAlg.initialize(self)
00052         if sc.isFailure(): return sc
00053         # ... now do my own initialization ...
00054         '''
00055 
00056         status = GaudiAlgo.initialize(self)
00057         if not status.isSuccess(): return status

def DybPython::DybPythonAlg::DybPythonAlg::_initializeAES (   self  )  [private]

Definition at line 58 of file DybPythonAlg.py.

00060                               :
00061             print "DybPythonAlg.initialize(): Failed to get MessageSvc"
00062             return FAILURE
00063         return SUCCESS
00064 
00065     def _initializeAES(self):
00066         # Get handle to archive data svc if it is available
00067         if self.archiveSvc != None:
00068             self.warning("Archive data service already initialized.")
00069             return SUCCESS
00070         archiveSvc = self.svc("IDataProviderSvc","EventDataArchiveSvc")
00071         if archiveSvc == None:
            self.warning("Archive data service not available.")

def DybPython::DybPythonAlg::DybPythonAlg::execute (   self  ) 

Definition at line 72 of file DybPythonAlg.py.

00074             :
00075             baseSvc = self.svc("IService","EventDataArchiveSvc")
00076             self.archiveSvc = iDataSvc( baseSvc.name(), archiveSvc )
        return SUCCESS

def DybPython::DybPythonAlg::DybPythonAlg::finalize (   self  ) 

Finalize the algorithm.  If sub classes overrides this
method they must call it explicitly like at the end:

# ... first do my own finalization ...
return DybPythonAlg.finalize(self)

Definition at line 77 of file DybPythonAlg.py.

00079                      :
00080         'Subclass should override this method'
00081         self.info("Executing DybPythonAlg:"+self.name())
00082         return SUCCESS
00083         
00084     def finalize(self):
00085         '''Finalize the algorithm.  If sub classes overrides this
00086         method they must call it explicitly like at the end:
00087 
00088         # ... first do my own finalization ...
00089         return DybPythonAlg.finalize(self)
00090         '''
        self.msgSvc.release()

def DybPython::DybPythonAlg::DybPythonAlg::verbose (   self,
  message 
)

Definition at line 91 of file DybPythonAlg.py.

00098                               :
        'Emit message at verbose level'

def DybPython::DybPythonAlg::DybPythonAlg::debug (   self,
  message 
)

Definition at line 96 of file DybPythonAlg.py.

00098                               :
00099         'Emit message at verbose level'
00100         self.msgSvc.reportMessage(self.name(), VERBOSE, message)
        return

def DybPython::DybPythonAlg::DybPythonAlg::info (   self,
  message 
)

Definition at line 101 of file DybPythonAlg.py.

00103                             :
00104         'Emit message at debug level'
00105         self.msgSvc.reportMessage(self.name(), DEBUG, message)
        return

def DybPython::DybPythonAlg::DybPythonAlg::warning (   self,
  message 
)

Definition at line 106 of file DybPythonAlg.py.

00108                            :
00109         'Emit message at info level'
00110         self.msgSvc.reportMessage(self.name(), INFO, message)
        return

def DybPython::DybPythonAlg::DybPythonAlg::error (   self,
  message 
)

Definition at line 111 of file DybPythonAlg.py.

00113                               :
00114         'Emit message at warning level'
00115         self.msgSvc.reportMessage(self.name(), WARNING, message)
        return

def DybPython::DybPythonAlg::DybPythonAlg::fatal (   self,
  message 
)

Definition at line 116 of file DybPythonAlg.py.

00118                             :
00119         'Emit message at error level'
00120         self.msgSvc.reportMessage(self.name(), ERROR, message)
        return

def DybPython::DybPythonAlg::DybPythonAlg::getAES (   self,
  path 
)

Definition at line 121 of file DybPythonAlg.py.

00123                             :
00124         'Emit message at fatal level'
00125         self.msgSvc.reportMessage(self.name(), FATAL, message)
00126         return
00127     
00128     def getAES(self, path):
00129         'Return the list of items at the AES path'
00130         if self.archiveSvc == None:
00131             status = self._initializeAES()
00132             if (not status.isSuccess()) or self.archiveSvc == None:
00133                 self.error("Archive data svc not available")
00134                 return None
00135         archiveList = self.archiveSvc[path]
00136         if archiveList == None:
00137             self.error("Path in archive not available: "+path)
            return None


Member Data Documentation

DybPython::DybPythonAlg::DybPythonAlg::msgSvc

Definition at line 34 of file DybPythonAlg.py.

DybPython::DybPythonAlg::DybPythonAlg::archiveSvc

Definition at line 35 of file DybPythonAlg.py.

DybPython::DybPythonAlg::DybPythonAlg::stats

Definition at line 36 of file DybPythonAlg.py.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:13:02 2011 for DybPython by doxygen 1.4.7