Esempio n. 1
0
def _config_from_pool(corr, poolfile, sgkey):
    if not poolfile or not poolfiles[poolfile]:
        return False

    # Tell the tool to look in pool for this key.
    corr.DBHandleKey = sgkey

    # If this is the first time we've seen this file,
    # add it to CondProxyProvider.
    # Pick up the provider by looking in the top-level global scope.
    global ServiceMgr
    if poolfile not in _poolfiles_seen:
        _poolfiles_seen[poolfile] = 1
        try:
            ServiceMgr.CondProxyProvider.InputCollections += \
                                                          [poolfiles[poolfile]]
        except AttributeError:
            # CondProxyProvider hasn't been made yet?
            from EventSelectorAthenaPool.EventSelectorAthenaPoolConf \
                 import CondProxyProvider
            ServiceMgr += CondProxyProvider()
            ServiceMgr.ProxyProviderSvc.ProviderNames += ["CondProxyProvider"]
            ServiceMgr.CondProxyProvider.InputCollections += \
                                                          [poolfiles[poolfile]]
    return True
#DetFlags.detdescr.Calo_setOn()

from IOVDbSvc.CondDB import conddb
#inputCollections = ["/afs/cern.ch/user/s/sthenkel/work/Performance/Alignment/WORK_ATHENA/20.1.X-VAL_WeakMode/InnerDetector/InDetMonitoring/InDetPerformanceMonitoring/share/Iter1_AlignmentConstants.root"]
inputCollections = ["./Iter1_AlignmentConstants.root"]

readPool = True
conddb.addOverride('/Indet/Align', 'InDetAlign-RUN2-25NS')
conddb.addOverride('/TRT/Align', 'TRTAlign-RUN2-25NS')

if readPool:
    conddb.blockFolder("/Indet/Align")
    conddb.blockFolder("/TRT/Align")
    from EventSelectorAthenaPool.EventSelectorAthenaPoolConf import CondProxyProvider
    from AthenaCommon.AppMgr import ServiceMgr
    ServiceMgr += CondProxyProvider()
    ServiceMgr.ProxyProviderSvc.ProviderNames += ["CondProxyProvider"]
    # set this to the file containing AlignableTransform objects
    ServiceMgr.CondProxyProvider.InputCollections += inputCollections
    ServiceMgr.CondProxyProvider.OutputLevel = DEBUG
    print ServiceMgr.CondProxyProvider
    # this preload causes callbacks for read in objects to be activated,
    # allowing GeoModel to pick up the transforms
    ServiceMgr.IOVSvc.preLoadData = True
    ServiceMgr.IOVSvc.OutputLevel = INFO

include("InDetRecExample/InDetRecConditionsAccess.py")

# main jobOption
include("RecExCommon/RecExCommon_topOptions.py")
theApp.EvtMax = 200000

#--------------------------------------------------------------
# Load POOL support
#--------------------------------------------------------------
import AthenaPoolCnvSvc.ReadAthenaPool

#Explicitly specify the output file catalog
svcMgr.PoolSvc.WriteCatalog = "file:Catalog2.xml"

svcMgr.EventSelector.InputCollections = [
    "SimplePoolFile1.root"
]  # ** mandatory parameter ** // The input file name

from EventSelectorAthenaPool.EventSelectorAthenaPoolConf import CondProxyProvider
svcMgr += CondProxyProvider()

svcMgr.ProxyProviderSvc.ProviderNames += ["CondProxyProvider"]

svcMgr.CondProxyProvider.InputCollections = ["SimplePoolFile4.root"]

#Explicitly specify the output file catalog
svcMgr.PoolSvc.ReadCatalog = ["file:Catalog0.xml"]
svcMgr.PoolSvc.ReadCatalog += ["file:Catalog1.xml"]

#--------------------------------------------------------------
# Private Application Configuration options
#--------------------------------------------------------------
# Load "user algorithm" top algorithms to be run, and the libraries that house them
from AthenaPoolExampleAlgorithms.AthenaPoolExampleAlgorithmsConf import AthPoolEx__ReadData, AthPoolEx__ReadCond
topSequence += AthPoolEx__ReadCond("ReadCond")