Example #1
0
    def MakeVeloParticles(self, name, particle, protoParticlesMaker):

        particleMaker = NoPIDsParticleMaker("For%sParticleMaker%s" %
                                            (self.name, name),
                                            Particle=particle)
        particleMaker.Input = self.VeloProtoOutputLocation

        DataOnDemandSvc().AlgMap.update({
            "/Event/Phys/" + particleMaker.name() + '/Particles':
            particleMaker.getFullName(),
            "/Event/Phys/" + particleMaker.name() + '/Vertices':
            particleMaker.getFullName()
        })

        AllVeloParticles = Selection("For%sSelAllVeloParts%s" %
                                     (self.name, name),
                                     Algorithm=particleMaker,
                                     RequiredSelections=[protoParticlesMaker],
                                     InputDataSetter=None)

        ### filter on the IP of the velo tracks
        return Selection(
            "For%sSelVeloParts%s" % (self.name, name),
            Algorithm=FilterDesktop(
                name + "For%sFilterVeloTrackIP%s" % (self.name, name),
                Code="(MIPDV(PRIMARY) > %(VeloMINIP)s)" % self.__confdict__),
            RequiredSelections=[AllVeloParticles])
def makeAllParticles(name, trackcont, particle):
    particleMaker = NoPIDsParticleMaker(name, Particle=particle)
    particleMaker.Input = "Rec/ProtoP/" + trackcont + "ProtoPMaker"
    DataOnDemandSvc().AlgMap.update({
        "/Event/Phys/" + particleMaker.name() + '/Particles':
        particleMaker.getFullName(),
        "/Event/Phys/" + particleMaker.name() + '/Vertices':
        particleMaker.getFullName()
    })
def makeMyMuons(name, protoParticlesMaker):
    """
     Make Particles out of the muon ProtoParticles
   """
    particleMaker = NoPIDsParticleMaker(name + "ParticleMaker",
                                        Particle="Muon")
    particleMaker.Input = "Rec/ProtoP/" + name + "ProtoPMaker/ProtoParticles"
    #particleMaker.OutputLevel = 0

    DataOnDemandSvc().AlgMap.update({
        "/Event/Phys/" + particleMaker.name() + '/Particles':
        particleMaker.getFullName(),
        "/Event/Phys/" + particleMaker.name() + '/Vertices':
        particleMaker.getFullName()
    })

    return Selection(name + "SelVeloMuonParts",
                     Algorithm=particleMaker,
                     RequiredSelections=[protoParticlesMaker],
                     InputDataSetter=None)