ATLAS Offline Software
Loading...
Searching...
No Matches
FatVertex.h File Reference
#include <TLorentzVector.h>
#include <optional>
#include "AthContainers/AuxElement.h"
#include "xAODTruth/TruthParticleContainer.h"
#include "xAODTruth/TruthParticle.h"
#include "xAODTruth/TruthVertexContainerFwd.h"
Include dependency graph for FatVertex.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ParticleJetTools::FatVertex::VertexType
struct  ParticleJetTools::FatVertex::FatVertex

Namespaces

namespace  ParticleJetTools
namespace  ParticleJetTools::FatVertex

Enumerations

enum class  ParticleJetTools::FatVertex::DetailedVertexType {
  ParticleJetTools::FatVertex::PrimaryVertex , ParticleJetTools::FatVertex::BHadronDecay , ParticleJetTools::FatVertex::CHadronDecay , ParticleJetTools::FatVertex::CHadronDecayFromBHadron ,
  ParticleJetTools::FatVertex::TauDecay , ParticleJetTools::FatVertex::TauDecayFromBHadron , ParticleJetTools::FatVertex::StrangeDecay , ParticleJetTools::FatVertex::StrangeFromBHadron ,
  ParticleJetTools::FatVertex::StrangeFromCHadron , ParticleJetTools::FatVertex::StrangeFromCFromBHadron , ParticleJetTools::FatVertex::StrangeFromTau , ParticleJetTools::FatVertex::StrangeFromTauFromBHadron ,
  ParticleJetTools::FatVertex::PionDecay , ParticleJetTools::FatVertex::MaterialInteraction , ParticleJetTools::FatVertex::MaybeMaterialInteraction , ParticleJetTools::FatVertex::StrangeOscillation ,
  ParticleJetTools::FatVertex::OtherSecondaryVertex , ParticleJetTools::FatVertex::PhotoelectricEmission , ParticleJetTools::FatVertex::ComptonScattering , ParticleJetTools::FatVertex::EPAnnihilation ,
  ParticleJetTools::FatVertex::Bremsstrahlung , ParticleJetTools::FatVertex::Conversion , ParticleJetTools::FatVertex::Other , ParticleJetTools::FatVertex::OtherNInparts ,
  ParticleJetTools::FatVertex::OtherNoOutparts , ParticleJetTools::FatVertex::OtherSingleOutpart
}
enum class  ParticleJetTools::FatVertex::SimpleVertexType {
  ParticleJetTools::FatVertex::PrimaryVertex , ParticleJetTools::FatVertex::BHadronDecay , ParticleJetTools::FatVertex::CHadronDecay , ParticleJetTools::FatVertex::TauDecay ,
  ParticleJetTools::FatVertex::StrangeDecay , ParticleJetTools::FatVertex::PionDecay , ParticleJetTools::FatVertex::MaterialInteraction , ParticleJetTools::FatVertex::OtherSecondaryVertex ,
  ParticleJetTools::FatVertex::Other
}

Functions

TLorentzVector ParticleJetTools::FatVertex::sum_4vec (const std::vector< const xAOD::TruthParticle * > &parts)
float ParticleJetTools::FatVertex::vertex_distance (const xAOD::TruthVertex *v1, const xAOD::TruthVertex *v2)
float ParticleJetTools::FatVertex::vertex_distance_xy (const xAOD::TruthVertex *v1, const xAOD::TruthVertex *v2)
int ParticleJetTools::FatVertex::num_valid_children (const xAOD::TruthParticle *part)
bool ParticleJetTools::FatVertex::has_valid_child (const xAOD::TruthParticle *part)
std::vector< const xAOD::TruthParticle * > ParticleJetTools::FatVertex::get_valid_children_by_pt (const xAOD::TruthParticle *part)
void ParticleJetTools::FatVertex::generateFatVertex (const xAOD::TruthVertex *vertex, std::vector< const xAOD::TruthParticle * > &fat_inparts, std::vector< const xAOD::TruthParticle * > &fat_internal, std::vector< const xAOD::TruthParticle * > &fat_outparts, bool internal, const float truthVertexMergeDistance, const std::vector< const xAOD::TruthParticle * > &additional_in_parts)
 Generates a fat vertex by recursively searching children of the provided truth vertex and adding them to either the in parts, internal parts, or out parts.
std::vector< FatVertexParticleJetTools::FatVertex::generateFatVertices (const xAOD::TruthVertex *pv, const float truthVertexMergeDistance, const std::vector< const xAOD::TruthParticle * > &truth_particles)