def tileMuonFiller(name, prefix, object_name):
    tileMuonGetter = SGDataVectorGetterTool('Muon_getter',
                                             TypeName = 'xAOD::MuonContainer',
                                             SGKey = 'SelectedMuons')
    return VectorFillerTool(name,
                            Prefix = prefix,
                            Getter = tileMuonGetter,
                            ObjectName = 'muons',
                            SaveMetadata = D3PDMakerFlags.SaveObjectMetadata())
def tileCellFiller(name, prefix, object_name):
    tilecell_getter = SGDataVectorGetterTool('cell_getter',
                                             TypeName = 'CaloCellContainer',
                                             SGKey = 'SelectedCells')
    return VectorFillerTool(name,
                            Prefix = prefix,
                            Getter = tilecell_getter,
                            ObjectName = 'calocells',
                            SaveMetadata = D3PDMakerFlags.SaveObjectMetadata())
Ejemplo n.º 3
0
def caloClusterFiller(name, prefix, object_name):
    caloClusterGetter = SGDataVectorGetterTool('cluster_getter',
                                               TypeName = 'xAOD::CaloClusterContainer_v1',
                                               SGKey = 'SelectedClusters')
    return VectorFillerTool(name,
                            Prefix = prefix,
                            Getter = caloClusterGetter,
                            ObjectName = 'caloclusters',
                            SaveMetadata = D3PDMakerFlags.SaveObjectMetadata())
def tileTrackFiller(name, prefix, object_name):
    tileTrackGetter = SGDataVectorGetterTool('track_getter',
                                             TypeName = 'xAOD::TrackParticleContainer',
                                             SGKey = 'SelectedTracks')
    return VectorFillerTool(name,
                            Prefix = prefix,
                            Getter = tileTrackGetter,
                            ObjectName = 'trackparticles',
                            SaveMetadata = D3PDMakerFlags.SaveObjectMetadata())
Ejemplo n.º 5
0
def TileGapConfig \
    (seq = AlgSequence(D3PDMakerFlags.PreD3PDAlgSeqName()),
     prefix = '',
     sgkey = 'egClusterCollection',
     typeName = 'DataVector<xAOD::CaloCluster_v1>',
     allowMissing = False):
    """Configure egammaMaxECellAlg for D3PD making.

    SEQ is the Gaudi sequence to which the algorithm should be added.
    Default is that given by PreD3PDAlgSeqName.

    PREFIX is a prefix to add to the name of the algorithm scheduled.

    SGKEY/TYPENAME is the StoreGate key of the input electron container
    and the name of its type.

    If ALLOWMISSING is true, don't fail if the SG key doesn't exist.
    """

    if (not D3PDMakerFlags.MakeEgammaUserData() or
        D3PDMakerFlags.HaveEgammaUserData()):
        return

    DVGetter = D3PDMakerCoreComps.SGDataVectorGetterTool
    resolved_sgkey = resolveSGKey (typeName, sgkey)
    auxprefix = (D3PDMakerFlags.EgammaUserDataPrefix() + '_' +
                 resolved_sgkey + '_')

    algName = 'TileGapSumAlg' + resolved_sgkey
    if not hasattr (seq, algName):

        gapsel = TileGapSelectionGetter (seq)
        myAlg = egammaD3PDAnalysis.TileGapSumAlg \
                (algName,
                 ClusterGetter = DVGetter
                    (prefix + 'TileGapAlgGetter',
                    TypeName = typeName,
                    SGKey = sgkey),
                 CellGetter = SGDataVectorGetterTool
                    (prefix + 'TileGapAlgCellGetter',
                     SGKey = gapsel.outputKey(),
                     TypeName = gapsel.outputType()),
                 AllowMissing = allowMissing,
                 AuxPrefix = auxprefix,)

        seq += myAlg

    return