Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:19:50

0001 //-------------------------------------------------
0002 //
0003 //   Class: DTChambPhSegm.cpp
0004 //
0005 //   Description: Muon Chamber Trigger Phi candidate
0006 //
0007 //
0008 //   Author List:
0009 //   C. Grandi
0010 //   Modifications:
0011 //
0012 //
0013 //--------------------------------------------------
0014 
0015 //-----------------------
0016 // This Class's Header --
0017 //-----------------------
0018 #include "L1Trigger/DTBti/interface/DTBtiTrigData.h"
0019 #include "L1Trigger/DTTraco/interface/DTTracoTrig.h"
0020 #include "L1Trigger/DTTriggerServerPhi/interface/DTChambPhSegm.h"
0021 #include "L1TriggerConfig/DTTPGConfig/interface/DTConfigTSPhi.h"
0022 
0023 //-------------------------------
0024 // Collaborating Class Headers --
0025 //-------------------------------
0026 
0027 //---------------
0028 // C++ Headers --
0029 //---------------
0030 #include <iostream>
0031 
0032 //----------------
0033 // Constructors --
0034 //----------------
0035 DTChambPhSegm::DTChambPhSegm(DTChamberId chamberid, int step) : m_chamberid(chamberid), m_step(step) { clear(); }
0036 
0037 DTChambPhSegm::DTChambPhSegm(DTChamberId chamberid, int step, const DTTracoTrigData *tracotrig, int isfirst)
0038     : m_chamberid(chamberid), m_step(step), m_isFirst(isfirst), m_tracotrig(tracotrig) {}
0039 
0040 DTChambPhSegm::DTChambPhSegm(const DTChambPhSegm &seg)
0041     : m_chamberid(seg.m_chamberid), m_step(seg.m_step), m_isFirst(seg.m_isFirst), m_tracotrig(seg.m_tracotrig) {}
0042 
0043 //--------------
0044 // Destructor --
0045 //--------------
0046 DTChambPhSegm::~DTChambPhSegm() {}
0047 
0048 //--------------
0049 // Operations --
0050 //--------------
0051 
0052 DTChambPhSegm &DTChambPhSegm::operator=(const DTChambPhSegm &seg) {
0053   if (this != &seg) {
0054     m_chamberid = seg.m_chamberid;
0055     m_step = seg.m_step;
0056     m_tracotrig = seg.m_tracotrig;
0057     m_isFirst = seg.m_isFirst;
0058   }
0059   return *this;
0060 }
0061 
0062 void DTChambPhSegm::clear() {
0063   m_tracotrig = nullptr;
0064   m_isFirst = 0;
0065 }
0066 
0067 void DTChambPhSegm::print() const {
0068   std::cout << "TP at step " << step() << ", in wheel " << wheel();
0069   std::cout << ", station " << station() << ", sector " << sector() << std::endl;
0070   std::cout << "TSS " << (tracoTrig()->tracoNumber() - 1) / DTConfigTSPhi::NTCTSS + 1;
0071   std::cout << ", TRACO " << tracoNumber() << " : " << std::endl;
0072   std::cout << "  -->  code " << oldCode() << ", K " << K();
0073   std::cout << ", X " << X() << ", position mask " << posMask() << std::endl;
0074   std::cout << "inner bti equation=" << tracoTrig()->eqIn() << "    outer bti equation=" << tracoTrig()->eqOut()
0075             << std::endl;
0076   std::cout << "        psi " << psi() << ", psiR " << psiR();
0077   std::cout << ", DeltaPsiR " << DeltaPsiR() << std::endl;
0078 }