ATLAS Offline Software
Loading...
Searching...
No Matches
IConstituentUserInfo.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5// IConstituentUserInfo.h
6
7#ifndef jet__IConstituentUserInfo_H
8#define jet__IConstituentUserInfo_H
9
10// David Adams
11// January 2014
12//
13// Interface for ATLAS user info for fastjet pseudojet.
14// The user info includes a pointer to an IParticle and a label
15// for the collection from which the pseudojet was constructed.
16// The labels may be indexed (mapped to integer indices).
17
18#include "fastjet/PseudoJet.hh"
20#include "xAODJet/JetTypes.h"
21
22namespace jet {
23
24class LabelIndex;
25
26class IConstituentUserInfo : public fastjet::PseudoJet::UserInfoBase {
27
28public:
29
30 typedef int Index;
31 typedef std::string Label;
32
33 // Return the particle pointer.
34 virtual const SG::AuxElement* element() const =0;
35 virtual const xAOD::IParticle* particle() const =0;
36
37 // Return the label.
38 virtual Label label() const =0;
39
40 // Return the index.
41 // Returns 0 if undefined.
42 virtual Index index() const;
43
44 // Return the index-to-label map.
45 // Returns null if undefined.
46 virtual const LabelIndex* labelMap() const;
47
49 virtual bool isGhost() const ;
50
52 virtual xAOD::JetConstitScale constitScale() const ;
53
54
55};
56
57} // end jet namespace
58
59#endif
Base class for elements of a container that can have aux data.
Definition AuxElement.h:483
virtual const LabelIndex * labelMap() const
virtual xAOD::JetConstitScale constitScale() const
Return the constituent scale used to build the PseudoJet.
virtual Label label() const =0
virtual bool isGhost() const
Returns true if this constituent is a ghost.
virtual const xAOD::IParticle * particle() const =0
virtual const SG::AuxElement * element() const =0
Class providing the definition of the 4-vector interface.
JetConstitScale
Definition JetTypes.h:20