Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  master (d98a2936)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
GaudiKernel.Configurable.PropertyReference Class Reference
Inheritance diagram for GaudiKernel.Configurable.PropertyReference:
Collaboration diagram for GaudiKernel.Configurable.PropertyReference:

Public Member Functions

def __init__ (self, propname)
 
def __str__ (self)
 
def __resolve__ (self)
 
def getFullName (self)
 

Public Attributes

 name
 

Detailed Description

Definition at line 117 of file Configurable.py.

Constructor & Destructor Documentation

◆ __init__()

def GaudiKernel.Configurable.PropertyReference.__init__ (   self,
  propname 
)

Definition at line 118 of file Configurable.py.

118  def __init__(self, propname):
119  self.name = propname
120 

Member Function Documentation

◆ __resolve__()

def GaudiKernel.Configurable.PropertyReference.__resolve__ (   self)

Definition at line 124 of file Configurable.py.

124  def __resolve__(self):
125  # late binding for property references
126  retval = None
127  refname, refprop = self.name.rsplit(".", 1)
128  if refname in Configurable.allConfigurables:
129  conf = Configurable.allConfigurables[refname]
130  retval = getattr(conf, refprop)
131  if hasattr(retval, "getFullName"):
132  retval = retval.getFullName()
133  else:
134  raise NameError("name '%s' not found resolving '%s'" % (refname, self))
135  return retval
136 

◆ __str__()

def GaudiKernel.Configurable.PropertyReference.__str__ (   self)

Definition at line 121 of file Configurable.py.

121  def __str__(self):
122  return "@%s" % self.name
123 

◆ getFullName()

def GaudiKernel.Configurable.PropertyReference.getFullName (   self)
This function allow transparent integration with
Configurable.getValuedProperties.

Definition at line 137 of file Configurable.py.

137  def getFullName(self):
138  """This function allow transparent integration with
139  Configurable.getValuedProperties.
140  """
141  try:
142  return self.__resolve__()
143  except NameError:
144  # ignore the error if we cannot resolve the name yet
145  return self
146  except AttributeError:
147  # ignore the error if we cannot resolve the attribute yet
148  return self
149 
150 
151 # base class for configurable Gaudi algorithms/services/algtools/etc. ======
152 
153 

Member Data Documentation

◆ name

GaudiKernel.Configurable.PropertyReference.name

Definition at line 119 of file Configurable.py.


The documentation for this class was generated from the following file:
GaudiPartProp.decorators.__str__
__str__
decorate the printout for Gaudi::ParticleProperty
Definition: decorators.py:176