GaudiPython.Bindings.iDataSvc Class Reference
Inheritance diagram for GaudiPython.Bindings.iDataSvc:
Collaboration diagram for GaudiPython.Bindings.iDataSvc:

Public Member Functions

def __init__ (self, name, idp)
 
def registerObject (self, path, obj)
 
def unregisterObject (self, path)
 
def retrieveObject (self, path)
 
def findObject (self, path)
 get object from TES More...
 
def getObject (self, path, args)
 get or retrieve object, possible switch-off 'on-demand' actions More...
 
def __getitem__ (self, path)
 
def __setitem__ (self, path, obj)
 
def __delitem__ (self, path)
 
def leaves (self, node=None)
 
def dump (self, node=None)
 
def getList (self, node=None, lst=[], rootFID=None)
 
def getHistoNames (self, node=None, lst=[])
 
def setRoot (self, name, obj)
 
def clearStore (self)
 
- Public Member Functions inherited from GaudiPython.Bindings.iService
def __init__ (self, name, isvc=None)
 
def retrieveInterface (self)
 
def isValid (self)
 
- Public Member Functions inherited from GaudiPython.Bindings.iProperty
def __init__ (self, name, ip=None)
 
def getInterface (self)
 
def retrieveInterface (self)
 
def __call_interface_method__ (self, ifname, method, args)
 
def __setattr__ (self, name, value)
 
def __getattr__ (self, name)
 
def properties (self)
 
def name (self)
 

Additional Inherited Members

- Static Public Attributes inherited from GaudiPython.Bindings.iService
 initialize = lambdaself:self.__call_interface_method__("_isvc","initialize")
 
 start = lambdaself:self.__call_interface_method__("_isvc","start")
 
 stop = lambdaself:self.__call_interface_method__("_isvc","stop")
 
 finalize = lambdaself:self.__call_interface_method__("_isvc","finalize")
 
 reinitialize = lambdaself:self.__call_interface_method__("_isvc","reinitialize")
 
 restart = lambdaself:self.__call_interface_method__("_isvc","restart")
 

Detailed Description

Definition at line 357 of file Bindings.py.

Constructor & Destructor Documentation

def GaudiPython.Bindings.iDataSvc.__init__ (   self,
  name,
  idp 
)

Definition at line 358 of file Bindings.py.

358  def __init__(self, name, idp) :
359  iService.__init__(self, name, idp )
360  self.__dict__['_idp'] = InterfaceCast(gbl.IDataProviderSvc)(idp)
361  self.__dict__['_idm'] = InterfaceCast(gbl.IDataManagerSvc)(idp)
def __init__(self, name, idp)
Definition: Bindings.py:358

Member Function Documentation

def GaudiPython.Bindings.iDataSvc.__delitem__ (   self,
  path 
)

Definition at line 421 of file Bindings.py.

421  def __delitem__(self, path) :
422  if not self._idp : raise IndexError('C++ service %s does not exist' % self.__dict__['_name'])
423  return self._idp.unregisterObject(path)
def __delitem__(self, path)
Definition: Bindings.py:421
def GaudiPython.Bindings.iDataSvc.__getitem__ (   self,
  path 
)

Definition at line 415 of file Bindings.py.

415  def __getitem__(self, path) :
416  if not self._idp : raise IndexError('C++ service %s does not exist' % self.__dict__['_name'])
417  return Helper.dataobject(self._idp, path)
def __getitem__(self, path)
Definition: Bindings.py:415
def GaudiPython.Bindings.iDataSvc.__setitem__ (   self,
  path,
  obj 
)

Definition at line 418 of file Bindings.py.

418  def __setitem__(self, path, obj) :
419  if not self._idp : raise IndexError('C++ service %s does not exist' % self.__dict__['_name'])
420  return self._idp.registerObject(path,obj)
def __setitem__(self, path, obj)
Definition: Bindings.py:418
def GaudiPython.Bindings.iDataSvc.clearStore (   self)

Definition at line 476 of file Bindings.py.

476  def clearStore(self):
477  if not self._idm : raise IndexError('C++ service %s does not exist' % self.__dict__['_name'])
478  return self._idm.clearStore()
479 
480 
481 #----iHistogramSvc class---------------------------------------------------------------------
def GaudiPython.Bindings.iDataSvc.dump (   self,
  node = None 
)

Definition at line 430 of file Bindings.py.

430  def dump(self, node=None) :
431  if not node :
432  root = self.retrieveObject('')
433  if root : node = root.registry()
434  else : return
435  print node.identifier()
436  if node.object() :
437  for l in self.leaves(node) : self.dump(l)
def dump(self, node=None)
Definition: Bindings.py:430
def retrieveObject(self, path)
Definition: Bindings.py:368
def leaves(self, node=None)
Definition: Bindings.py:424
def GaudiPython.Bindings.iDataSvc.findObject (   self,
  path 
)

get object from TES

Get the existing object in TransientStore for the given location

- loading of object from persistency is NOT triggered
- 'data-on-demand' action is NOT triggered

>>> svc  =  ...                     ## get the service
>>> path =  ...                     ## get the path in Transient Store
>>> data = svc.findObject ( path )  ## use the method

Definition at line 372 of file Bindings.py.

372  def findObject(self, path) :
373  """
374 
375  Get the existing object in TransientStore for the given location
376 
377  - loading of object from persistency is NOT triggered
378  - 'data-on-demand' action is NOT triggered
379 
380  >>> svc = ... ## get the service
381  >>> path = ... ## get the path in Transient Store
382  >>> data = svc.findObject ( path ) ## use the method
383 
384  """
385  if not self._idp : raise IndexError('C++ service %s does not exist' % self.__dict__['_name'])
386  return Helper.findobject(self._idp, path)
387 
def findObject(self, path)
get object from TES
Definition: Bindings.py:372
def GaudiPython.Bindings.iDataSvc.getHistoNames (   self,
  node = None,
  lst = [] 
)

Definition at line 456 of file Bindings.py.

456  def getHistoNames( self, node=None, lst=[] ) :
457  if not node :
458  root = self.retrieveObject('')
459  if root :
460  node = root.registry()
461  # rootFID = node.address().par()
462  lst = []
463  else : return
464  Helper.dataobject( self._idp, node.identifier() )
465  if node.object() :
466  lst.append( node.identifier() )
467  for l in self.leaves(node) :
468  if l.name() : # and l.address().par() == rootFID :
469  self.getHistoNames(l,lst)
470  else :
471  continue
472  return lst
def getHistoNames(self, node=None, lst=[])
Definition: Bindings.py:456
def retrieveObject(self, path)
Definition: Bindings.py:368
def leaves(self, node=None)
Definition: Bindings.py:424
def GaudiPython.Bindings.iDataSvc.getList (   self,
  node = None,
  lst = [],
  rootFID = None 
)

Definition at line 438 of file Bindings.py.

438  def getList(self, node=None, lst=[], rootFID=None) :
439  if not node :
440  root = self.retrieveObject('')
441  if root :
442  node = root.registry()
443  rootFID = node.address().par()
444  lst = []
445  else :
446  return
447  Helper.dataobject( self._idp, node.identifier() )
448  if node.object() :
449  lst.append( node.identifier() )
450  for l in self.leaves(node) :
451  if l.address() and l.address().par() == rootFID :
452  self.getList(l,lst,rootFID)
453  else :
454  continue
455  return lst
def retrieveObject(self, path)
Definition: Bindings.py:368
def leaves(self, node=None)
Definition: Bindings.py:424
def getList(self, node=None, lst=[], rootFID=None)
Definition: Bindings.py:438
def GaudiPython.Bindings.iDataSvc.getObject (   self,
  path,
  args 
)

get or retrieve object, possible switch-off 'on-demand' actions

Get object from Transient Store  for the given location

arguments :
- path                           : Location of object in Transient Store
- retrieve          (bool) True  : retrieve versus find
- disable on-demand (bool) False : temporary disable 'on-demand' actions

>>> svc  = ...   ## get the service
>>> path = ...   ## get the path

>>> data = svc.getObject ( path , False )  ## find object in Transient Store

## find object in Transient Store
#  load form tape or use 'on-demand' action  for missing objects :
>>> data = svc.getObject ( path , True  )

## find object in Transient Store
#  load from tape or for missing objects, disable 'on-demand'-actions
>>> data = svc.getObject ( path , True  , True )

Definition at line 389 of file Bindings.py.

389  def getObject ( self , path , *args ) :
390  """
391  Get object from Transient Store for the given location
392 
393  arguments :
394  - path : Location of object in Transient Store
395  - retrieve (bool) True : retrieve versus find
396  - disable on-demand (bool) False : temporary disable 'on-demand' actions
397 
398  >>> svc = ... ## get the service
399  >>> path = ... ## get the path
400 
401  >>> data = svc.getObject ( path , False ) ## find object in Transient Store
402 
403  ## find object in Transient Store
404  # load form tape or use 'on-demand' action for missing objects :
405  >>> data = svc.getObject ( path , True )
406 
407  ## find object in Transient Store
408  # load from tape or for missing objects, disable 'on-demand'-actions
409  >>> data = svc.getObject ( path , True , True )
410 
411  """
412  if not self._idp : raise IndexError('C++ service %s does not exist' % self.__dict__['_name'])
413  return Helper.getobject(self._idp, path, *args )
414 
def getObject(self, path, args)
get or retrieve object, possible switch-off 'on-demand' actions
Definition: Bindings.py:389
def GaudiPython.Bindings.iDataSvc.leaves (   self,
  node = None 
)

Definition at line 424 of file Bindings.py.

424  def leaves(self, node=None) :
425  if not node : node = self.retrieveObject('')
426  ll = gbl.std.vector('IRegistry*')()
427  if type(node) is str : obj = self.retrieveObject(node)
428  else : obj = node
429  if self._idm.objectLeaves(node, ll).isSuccess() : return ll
def retrieveObject(self, path)
Definition: Bindings.py:368
def leaves(self, node=None)
Definition: Bindings.py:424
def GaudiPython.Bindings.iDataSvc.registerObject (   self,
  path,
  obj 
)

Definition at line 362 of file Bindings.py.

362  def registerObject(self, path, obj) :
363  if not self._idp : raise AttributeError('C++ service %s does not exist' % self.__dict__['_name'])
364  return self._idp.registerObject(path,obj)
def registerObject(self, path, obj)
Definition: Bindings.py:362
def GaudiPython.Bindings.iDataSvc.retrieveObject (   self,
  path 
)

Definition at line 368 of file Bindings.py.

368  def retrieveObject(self, path) :
369  if not self._idp : return None
370  return Helper.dataobject(self._idp, path)
def retrieveObject(self, path)
Definition: Bindings.py:368
def GaudiPython.Bindings.iDataSvc.setRoot (   self,
  name,
  obj 
)

Definition at line 473 of file Bindings.py.

473  def setRoot(self, name, obj):
474  if not self._idm : raise IndexError('C++ service %s does not exist' % self.__dict__['_name'])
475  return self._idm.setRoot(name,obj)
def setRoot(self, name, obj)
Definition: Bindings.py:473
def GaudiPython.Bindings.iDataSvc.unregisterObject (   self,
  path 
)

Definition at line 365 of file Bindings.py.

365  def unregisterObject(self, path) :
366  if not self._idp : raise AttributeError('C++ service %s does not exist' % self.__dict__['_name'])
367  return self._idp.unregisterObject(path)
def unregisterObject(self, path)
Definition: Bindings.py:365

The documentation for this class was generated from the following file: