43 import cppyy
as PyLCGDict
48 if type(t)
is str : t = PyLCGDict.makeClass(t)
55 ip = PyLCGDict.libPyROOT.MakeNullPointer(self.
type)
56 if obj._isvc.queryInterface(self.
type.interfaceID(), ip).isSuccess() :
66 begin = string.find(self.
descr, start)
69 end = string.find(self.
descr, stop)
71 if begin < len(self.
descr)
and end < len(self.
descr) :
72 result = self.
descr[begin:end]
74 result =
"Unable to find: " + start +
", " + stop
81 pers = theApp.service(
'EventPersistencySvc')
85 self.
icnv = iConverter.cast(pers)
89 self.
iaddr = iAddrCreator.cast(pers)
92 self.
dbCast = PyLCGDict.makeClass(
'DataBucketCast')
100 del libPyROOT.const_iterator
101 except AttributeError:
105 del libPyROOT.iterator
106 except AttributeError:
114 self.
typeName = decoder.extract(
'<typeName>',
'</typeName>')
117 self.
header = decoder.extract(
'<addrHeader>',
'</addrHeader>')
118 self.
header +=
'POOLContainer_CondAttrListCollection][CLID=x'
124 ioa = PyLCGDict.libPyROOT.MakeNullPointer(
'IOpaqueAddress')
127 dbb = PyLCGDict.libPyROOT.MakeNullPointer(
'DataBucketBase')
133 self.
icnv.createObj(ioa, dbb)
136 result = PyLCGDict.libPyROOT.MakeNullPointer(self.
type)
150 print(
"Channels, IOV, and string addresses")
152 for chan
in channels :
154 print(
"added chan/iov: ", chan, iov.iovPrint())
165 print(
"Create IOpaqueAddress pointer")
166 ioa = PyLCGDict.libPyROOT.MakeNullPointer(
'GenericAddress')
169 print(
"Create DataBucketBase pointer")
170 dbb = PyLCGDict.libPyROOT.MakeNullPointer(
'DataBucketBase')
173 print(
"Create IOpaqueAddress for address list")
174 sc = self.
iaddr.createAddress( 0, 0, strAddress, ioa )
175 print(
"Status code: ", sc)
178 CondAttrListCollAddress = PyLCGDict.makeClass(
'CondAttrListCollAddress')
180 collAddr.setAttrListColl(attrListColl)
184 print(
"Retrieve data object for IOA")
185 sc = self.
icnv.createObj(collAddr, dbb)
186 print(
"Status code: ", sc)
187 if sc.isFailure():
raise RuntimeError(
"Cannot read object")
191 result = PyLCGDict.libPyROOT.MakeNullPointer(self.
type)