132 if len(ListofType) != len(ListofKey) :
133 print(
" ERROR: Type and Key not the same length")
136 import AthenaPython.PyAthena
as PyAthena
137 detStore = PyAthena.py_svc(
'StoreGateSvc/DetectorStore')
141 for i
in range(len(ListofType)):
149 print(
"Cannot get ",typ.__name__,
" Container")
154 container = detStore.retrieve(typ,key)
162 caliWave = -1!=key.find(
"CaliWave")
165 for gain
in range(container.minGain(), container.minGain()+container.nGains()):
166 print(
" Accessing ",key,
" gain = ", gain)
170 for obj,id
in container.conditionsIter(gain):
171 ft = self.
onlineID.feedthrough_name(id)
173 if ( (
not caliWave)
and (
not obj.isEmpty()) )
or (caliWave
and len(obj)!=0):
176 str_id1 = self.
onlineID.print_to_string(id)
180 str_id2 = self.
onlineID.print_to_string(off_id)
183 print(
" disconnected channel" )
187 print(n,
" ",key,
" accessed" )
188 keys = FeedThroughs.keys()
190 print(
" Feedthroughs ",keys )
193 print(
" accessing ",key,
" failed ")
194 typ, value, traceBack = sys.exc_info()
196 traceback.print_exc()
205 if operator.isNumberType(obj):
207 print(tab, objName,
" = ", obj)
211 if objType.__name__ ==
'MethodProxy':
221 if operator.isNumberType(obj):
222 print(
"obj type = ",objType.__name__)
224 print(tab, objName,
" = ", obj)
226 print(
"obj type =",objType.__name__)
229 if objType.__name__.find(
'vector') == 0:
231 elif hasattr(obj,
'begin')
and hasattr(obj,
'end')
and hasattr(obj,
'size'):
245 for attrName
in attrNames:
247 if attrName.find(
"m_") == 0
or attrName.find(
"get") == 0:
249 attr = getattr(obj, attrName)
251 print(
"Could not get attr", attrName)