CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10/src/L1Trigger/DTBti/interface/DTBtiTrig.h

Go to the documentation of this file.
00001 //-------------------------------------------------
00002 //
00016 //
00017 //--------------------------------------------------
00018 #ifndef DT_BTI_TRIG_H
00019 #define DT_BTI_TRIG_H
00020 
00021 //------------------------------------
00022 // Collaborating Class Declarations --
00023 //------------------------------------
00024 class DTDigi;
00025 class DTBtiChip;
00026 
00027 //----------------------
00028 // Base Class Headers --
00029 //----------------------
00030 #include "L1Trigger/DTUtilities/interface/DTTrigData.h"
00031 #include "L1Trigger/DTBti/interface/DTBtiTrigData.h"
00032 
00033 
00034 //---------------
00035 // C++ Headers --
00036 //---------------
00037 #include <vector>
00038 
00039 //              ---------------------
00040 //              -- Class Interface --
00041 //              ---------------------
00042 
00043 class DTBtiTrig : public DTTrigData {
00044 
00045   public:
00046 
00048   DTBtiTrig();
00049 
00051   DTBtiTrig(DTBtiChip*, int);
00052 
00054   DTBtiTrig(DTBtiChip* tparent, int, int, int, int, int);
00055  
00057   DTBtiTrig(DTBtiChip* tparent, int, int, int, int, int, int, float*);
00058 
00060   DTBtiTrig(DTBtiChip*, DTBtiTrigData);
00061   
00063   ~DTBtiTrig();
00064 
00066   inline void setParent(DTBtiChip* parent) { 
00067     _tparent = parent; 
00068   }  
00069 
00071   inline void addDigi(const DTDigi* digi) { 
00072     _digi.push_back(digi); 
00073   }
00074 
00076   inline void setStep(int step) {
00077     _data.setStep(step);
00078   }
00079 
00081   inline void setCode(int code) {
00082     _data.setCode(code);
00083   }
00084 
00086   inline void setK(int k) {
00087     _data.setK(k);
00088   }
00089 
00091   inline void setX(int x) {
00092     _data.setX(x);
00093   }
00094 
00096   inline void setEq(int eq) {
00097     _data.setEq(eq);
00098   }
00099 
00101   inline void clear() {
00102     _data.clear();
00103     _digi.clear();
00104   }    
00105 
00106   // Const methods
00107 
00109   inline DTChamberId ChamberId() const {
00110     return _data.ChamberId(); 
00111   }
00112 
00114   inline void print() const { 
00115     _data.print();
00116   }
00117 
00119   inline DTBtiChip* tParent() const { 
00120     return _tparent; 
00121   }
00122   
00124   inline DTBtiTrigData data() const {
00125     return _data;
00126   }
00127 
00129   inline int btiNumber() const { 
00130     return _data.btiNumber(); 
00131   }
00132   
00134   inline int btiSL() const { 
00135     return _data.btiSL(); 
00136   }
00137   
00139   inline int step() const { 
00140     return _data.step(); 
00141   }
00142 
00144   inline int code() const { 
00145     return _data.code(); 
00146   }
00147   
00149   inline int K() const { 
00150     return _data.K(); 
00151   }
00152   
00154   inline int X() const { 
00155     return _data.X(); 
00156   }
00157 
00159   inline int eq() const { 
00160     return _data.eq(); 
00161   }
00162 
00164   std::vector<const DTDigi*> digiList() const { 
00165     return _digi; 
00166   }
00167 
00168   private:
00169 
00170   // Parent BTI
00171   DTBtiChip* _tparent;
00172 
00173   // Trigger data component
00174   DTBtiTrigData _data;
00175 
00176   // vector of digi in the cells of the DTBtiChip trigger
00177   std::vector<const DTDigi*> _digi;
00178 
00179 };
00180 #endif