1 |
//--------------------------------------------------------------------------------------------------
|
2 |
// $Id: IsolationTools.h,v 1.2 2008/09/10 03:33:28 loizides Exp $
|
3 |
//
|
4 |
// IsolationTools
|
5 |
//
|
6 |
// Isolation functions to compute various kinds of isolation.
|
7 |
//
|
8 |
// Authors: S.Xie
|
9 |
//--------------------------------------------------------------------------------------------------
|
10 |
|
11 |
#ifndef MITANA_UTILS_ISOLATIONTOOLS_H
|
12 |
#define MITANA_UTILS_ISOLATIONTOOLS_H
|
13 |
|
14 |
#include <TMath.h>
|
15 |
#include "MitAna/DataTree/interface/Track.h"
|
16 |
#include "MitAna/DataTree/interface/BasicCluster.h"
|
17 |
#include "MitAna/DataTree/interface/SuperCluster.h"
|
18 |
#include "MitAna/DataTree/interface/CaloTower.h"
|
19 |
|
20 |
namespace mithep
|
21 |
{
|
22 |
class IsolationTools {
|
23 |
public:
|
24 |
static Double_t TrackIsolation(const mithep::Track *p, Double_t extRadius,
|
25 |
Double_t intRadius, Double_t ptLow, Double_t maxVtxZDist,
|
26 |
mithep::Collection<mithep::Track> *tracks);
|
27 |
static Double_t EcalIsolation(const SuperCluster *sc, Double_t coneSize, Double_t etLow,
|
28 |
mithep::Collection<mithep::BasicCluster> *basicClusters);
|
29 |
static Double_t CaloTowerHadIsolation(const ThreeVector *p, Double_t extRadius,
|
30 |
Double_t intRadius, Double_t etLow,
|
31 |
mithep::Collection<mithep::CaloTower> *caloTowers);
|
32 |
static Double_t CaloTowerEmIsolation(const ThreeVector *p, Double_t extRadius,
|
33 |
Double_t intRadius, Double_t etLow,
|
34 |
mithep::Collection<mithep::CaloTower> *caloTowers);
|
35 |
};
|
36 |
}
|
37 |
#endif
|