CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_13_patch3/src/L1Trigger/RPCTechnicalTrigger/src/TTUInput.cc

Go to the documentation of this file.
00001 // $Id: TTUInput.cc,v 1.7 2009/08/19 15:04:01 aosorio Exp $
00002 // Include files 
00003 
00004 
00005 
00006 // local
00007 #include "L1Trigger/RPCTechnicalTrigger/interface/TTUInput.h"
00008 #include <iostream>
00009 
00010 //-----------------------------------------------------------------------------
00011 // Implementation file for class : TTUInput
00012 //
00013 // 2008-10-16 : Andres Osorio
00014 //-----------------------------------------------------------------------------
00015 
00016 //=============================================================================
00017 // Standard constructor, initializes variables
00018 //=============================================================================
00019 TTUInput::TTUInput(  ) {
00020 
00021   m_bx = 0;
00022   m_wheelId = 0;
00023   m_hasHits = false;
00024   input_sec = new std::bitset<6>[12];
00025   m_rbcDecision.reset();
00026   
00027   for(int i=0; i < 12; ++i)
00028     input_sec[i].reset();
00029   
00030   m_debug = false;
00031 
00032 }
00033 //=============================================================================
00034 // Destructor
00035 //=============================================================================
00036 TTUInput::~TTUInput() {
00037 
00038   m_hasHits = false;
00039   if ( input_sec ) delete[] input_sec;
00040 
00041 } 
00042 //=============================================================================
00043 
00044 void TTUInput::reset() 
00045 {
00046   
00047   m_bx = 0;
00048   m_wheelId = 0;
00049   m_hasHits = false;
00050   
00051   for(int i=0; i < 12; ++i)
00052     input_sec[i].reset();
00053 
00054   m_rbcDecision.reset();
00055     
00056 }
00057 
00058 void TTUInput::mask( const std::vector<int> & maskvec )
00059 {
00060   
00061   //for(int i=0; i < 15; ++i) 
00062   //  if ( maskvec[i] ) input_sec[0].set(i,0);
00063   
00064   //for(int i=15; i < 30; ++i)
00065   //  if ( maskvec[i] ) input_sec[1].set( (i-15),0);
00066   
00067 }
00068 
00069 void TTUInput::force( const std::vector<int> & forcevec )
00070 {
00071   
00072   //if( m_debug ) std::cout << forcevec.size() << std::endl;
00073   
00074   //std::bitset<15> tmp;
00075   
00076   //for(int i=0; i < 15; ++i)
00077   //  tmp.set(i,forcevec[i]);
00078   
00079   //... operate on the first sector
00080   //input_sec[0]|=tmp;
00081   //tmp.reset();
00082   
00083   //for(int i=15; i < 30; ++i)
00084   //  tmp.set( (i-15),forcevec[i]);
00085   
00086   //input_sec[1]|=tmp;
00087   
00088   //tmp.reset();
00089   
00090 }
00091