ATLAS Offline Software
IJetDecorator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef IJetDecorator_H
6 #define IJetDecorator_H
7 
8 // Bill Balunas
9 // February 2019
10 
18 
20 
21 class IJetDecorator : virtual public IJetModifier {
22 
23 // From AsgTools/AsgToolMacros.h
25 
26 public:
27 
29  virtual StatusCode decorate(const xAOD::JetContainer& jets) const = 0;
30 
32  virtual StatusCode modify(xAOD::JetContainer& jets) const override final {return decorate(jets);};
33 
34 };
35 
36 #endif
IJetDecorator
Interface for adding a decoration to a jet container.
Definition: IJetDecorator.h:21
IJetDecorator::modify
virtual StatusCode modify(xAOD::JetContainer &jets) const override final
Concrete implementation of the function inherited from IJetModifier.
Definition: IJetDecorator.h:32
IJetModifier.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition: AsgToolMacros.h:40
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
IJetDecorator::decorate
virtual StatusCode decorate(const xAOD::JetContainer &jets) const =0
Decorate a jet collection without otherwise modifying it.
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24
IJetModifier
IJetModifier is a dual-use tool interface for a tool that modifies a jet collection.
Definition: IJetModifier.h:20