CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
l1t::Stage1Layer2SingleTrackHI Class Reference

#include <Stage1Layer2TauAlgorithmImp.h>

Inheritance diagram for l1t::Stage1Layer2SingleTrackHI:
l1t::Stage1Layer2TauAlgorithm

Public Member Functions

virtual void processEvent (const std::vector< l1t::CaloEmCand > &clusters, const std::vector< l1t::CaloRegion > &regions, std::vector< l1t::Tau > *isoTaus, std::vector< l1t::Tau > *taus)
 
 Stage1Layer2SingleTrackHI (CaloParamsHelper *params)
 
virtual ~Stage1Layer2SingleTrackHI ()
 
- Public Member Functions inherited from l1t::Stage1Layer2TauAlgorithm
virtual ~Stage1Layer2TauAlgorithm ()
 

Private Attributes

CaloParamsHelper *const params_
 

Additional Inherited Members

- Public Attributes inherited from l1t::Stage1Layer2TauAlgorithm
std::vector< double > regionPUSParams
 
std::string regionPUSType
 

Detailed Description

Definition at line 15 of file Stage1Layer2TauAlgorithmImp.h.

Constructor & Destructor Documentation

l1t::Stage1Layer2SingleTrackHI::Stage1Layer2SingleTrackHI ( CaloParamsHelper params)

Definition at line 19 of file Stage1Layer2SingleTrackHI.cc.

19 : params_(params) {}
l1t::Stage1Layer2SingleTrackHI::~Stage1Layer2SingleTrackHI ( )
virtual

Definition at line 21 of file Stage1Layer2SingleTrackHI.cc.

21 {};

Member Function Documentation

void l1t::Stage1Layer2SingleTrackHI::processEvent ( const std::vector< l1t::CaloEmCand > &  clusters,
const std::vector< l1t::CaloRegion > &  regions,
std::vector< l1t::Tau > *  isoTaus,
std::vector< l1t::Tau > *  taus 
)
virtual

Implements l1t::Stage1Layer2TauAlgorithm.

Definition at line 25 of file Stage1Layer2SingleTrackHI.cc.

References gather_cfg::cout, findRegions(), l1t::HICaloRingSubtraction(), l1t::pack15bits(), l1t::pack16bits(), l1t::SortTaus(), l1t::TauToGtEtaScales(), l1t::TauToGtPtScales(), and cond::to_string().

29 {
30  int etaMask = params_->tauRegionMask();
31 
32  std::vector<l1t::CaloRegion> *subRegions = new std::vector<l1t::CaloRegion>();
33  std::vector<l1t::Tau> *preGtEtaTaus = new std::vector<l1t::Tau>();
34  std::vector<l1t::Tau> *preGtTaus = new std::vector<l1t::Tau>();
35  std::vector<l1t::Tau> *unsortedTaus = new std::vector<l1t::Tau>();
36 
37 
38  HICaloRingSubtraction(regions, subRegions, params_);
39  findRegions(subRegions, preGtTaus, etaMask);
40  TauToGtPtScales(params_, preGtTaus, unsortedTaus);
41  SortTaus(unsortedTaus, preGtEtaTaus);
42  //SortTaus(preGtTaus, unsortedTaus);
43  //TauToGtPtScales(params_, unsortedTaus, preGtEtaTaus);
44  TauToGtEtaScales(params_, preGtEtaTaus, taus);
45 
46  delete subRegions;
47  delete preGtTaus;
48 
49  isoTaus->resize(4);
50  //taus->resize(4);
51 
52  const bool verbose = false;
53  const bool hex = true;
54  if(verbose)
55  {
56  if(hex)
57  {
58  std::cout << "Taus" << std::endl;
59  l1t::Tau ataus[8];
60  for(std::vector<l1t::Tau>::const_iterator itTau = taus->begin();
61  itTau != taus->end(); ++itTau){
62  ataus[itTau - taus->begin()] = *itTau;
63  }
64  //std::cout << "Taus (hex)" << std::endl;
65  std::cout << std::hex << pack16bits(ataus[0].hwPt(), ataus[0].hwEta(), ataus[0].hwPhi());
66  std::cout << " ";
67  std::cout << std::hex << pack16bits(ataus[1].hwPt(), ataus[1].hwEta(), ataus[1].hwPhi());
68  // std::cout << " ";
69  // std::cout << std::hex << pack16bits(ataus[4].hwPt(), ataus[4].hwEta(), ataus[4].hwPhi());
70  // std::cout << " ";
71  // std::cout << std::hex << pack16bits(ataus[5].hwPt(), ataus[5].hwEta(), ataus[5].hwPhi());
72  std::cout << std::endl;
73  std::cout << std::hex << pack16bits(ataus[2].hwPt(), ataus[2].hwEta(), ataus[2].hwPhi());
74  std::cout << " ";
75  std::cout << std::hex << pack16bits(ataus[3].hwPt(), ataus[3].hwEta(), ataus[3].hwPhi());
76  // std::cout << " ";
77  // std::cout << std::hex << pack16bits(ataus[6].hwPt(), ataus[6].hwEta(), ataus[6].hwPhi());
78  // std::cout << " ";
79  // std::cout << std::hex << pack16bits(ataus[7].hwPt(), ataus[7].hwEta(), ataus[7].hwPhi());
80  std::cout << std::endl;
81  } else {
82  std::cout << "Taus" << std::endl;
83  for(std::vector<l1t::Tau>::const_iterator iTau = taus->begin(); iTau != taus->end(); ++iTau)
84  {
85  unsigned int packed = pack15bits(iTau->hwPt(), iTau->hwEta(), iTau->hwPhi());
86  std::cout << bitset<15>(packed).to_string() << std::endl;
87  }
88  std::cout << "Isolated Taus" << std::endl;
89  for(std::vector<l1t::Tau>::const_iterator iTau = isoTaus->begin(); iTau != isoTaus->end(); ++iTau)
90  {
91  unsigned int packed = pack15bits(iTau->hwPt(), iTau->hwEta(), iTau->hwPhi());
92  std::cout << bitset<15>(packed).to_string() << std::endl;
93  }
94  }
95  }
96 }
void TauToGtEtaScales(CaloParamsHelper *params, const std::vector< l1t::Tau > *input, std::vector< l1t::Tau > *output)
Definition: Tau.h:13
void SortTaus(std::vector< l1t::Tau > *input, std::vector< l1t::Tau > *output)
std::string to_string(const T &t)
Definition: Logger.cc:26
void findRegions(const std::vector< l1t::CaloRegion > *sr, std::vector< l1t::Tau > *t, const int etaMask)
unsigned int pack15bits(int pt, int eta, int phi)
unsigned int pack16bits(int pt, int eta, int phi)
tuple cout
Definition: gather_cfg.py:121
void TauToGtPtScales(CaloParamsHelper *params, const std::vector< l1t::Tau > *input, std::vector< l1t::Tau > *output)
void HICaloRingSubtraction(const std::vector< l1t::CaloRegion > &regions, std::vector< l1t::CaloRegion > *subRegions, CaloParamsHelper *params)
------------— For heavy ion ----------------------------------—

Member Data Documentation

CaloParamsHelper* const l1t::Stage1Layer2SingleTrackHI::params_
private

Definition at line 25 of file Stage1Layer2TauAlgorithmImp.h.