CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_8_patch3/src/L1Trigger/DTTraco/interface/DTTracoTrig.h

Go to the documentation of this file.
00001 //-------------------------------------------------
00002 //
00015 //
00016 //--------------------------------------------------
00017 #ifndef DT_TRACO_TRIG_H
00018 #define DT_TRACO_TRIG_H
00019 
00020 //------------------------------------
00021 // Collaborating Class Declarations --
00022 //------------------------------------
00023 class DTBtiTrigData;
00024 class DTTracoChip;
00025 
00026 //----------------------
00027 // Base Class Headers --
00028 //----------------------
00029 #include "L1Trigger/DTUtilities/interface/DTTrigData.h"
00030 #include "L1Trigger/DTBti/interface/DTBtiTrig.h"
00031 #include "L1Trigger/DTTraco/interface/DTTracoTrigData.h"
00032 
00033 //---------------
00034 // C++ Headers --
00035 //---------------
00036 #include <vector>
00037 
00038 //              ---------------------
00039 //              -- Class Interface --
00040 //              ---------------------
00041 
00042 class DTTracoTrig : public DTTrigData {
00043 
00044   public:
00045 
00047     DTTracoTrig();
00048 
00050     DTTracoTrig(DTTracoChip*, int);
00051 
00053     DTTracoTrig(DTTracoChip*, DTTracoTrigData) ;
00054   
00056     ~DTTracoTrig();
00057 
00059     inline void setParent(DTTracoChip* parent) { 
00060       _tparent = parent; 
00061     }  
00062 
00064     inline void addDTBtiTrig(const DTBtiTrigData* btitrig) {
00065       _btitrig.push_back(btitrig); 
00066     }
00067 
00069     inline void setPV(int first, int code, int K, int io) { 
00070       _data.setPV(first,code,K,io); 
00071     }
00072   
00074     inline void setPVCorr(int ic) { 
00075       _data.setPVCorr(ic); 
00076     }
00077   
00079     inline void setCodeIn(int code) {
00080       _data.setCodeIn(code);
00081     }
00082 
00084     inline void setCodeOut(int code) {
00085       _data.setCodeOut(code);
00086     }
00087   
00089     inline void setPosIn(int pos) {
00090       _data.setPosIn(pos);
00091     }
00092   
00094     inline void setPosOut(int pos) {
00095       _data.setPosOut(pos);
00096     }
00097  
00099     inline void setEqIn(int eq) {
00100       _data.setEqIn(eq);
00101     }
00102   
00104     inline void setEqOut(int eq) {
00105       _data.setEqOut(eq);
00106     }
00107  
00109     inline void setK(int k) {
00110       _data.setK(k);
00111     }
00112   
00114     inline void setX(int x) {
00115       _data.setX(x);
00116     }
00117   
00119     inline void setAngles(int psi, int psir, int dpsir) {
00120       _data.setAngles(psi,psir,dpsir);
00121     }
00122   
00124     inline void resetVar() {
00125       _data.resetVar();
00126     }
00127   
00129     inline void resetPV() {
00130       _data.resetPV();
00131     }
00132   
00134     inline void clear() {
00135       _data.clear();
00136       _btitrig.clear();
00137     }
00138   
00140     inline DTChamberId ChamberId() const {
00141       return _data.ChamberId(); 
00142     }
00143 
00145     inline void print() const { 
00146       _data.print();
00147     }
00148 
00150     inline DTTracoChip* tParent() const { 
00151       return _tparent; 
00152     }
00153   
00155     inline DTTracoTrigData data() const {
00156       return _data;
00157     }
00158 
00160     inline int tracoNumber() const { 
00161       return _data.tracoNumber(); 
00162     }
00163 
00165     inline int step() const { 
00166       return _data.step(); 
00167     }
00168   
00170     inline int code() const { 
00171       return _data.code(); 
00172     }
00173   
00175     inline int posMask() const { 
00176       return _data.posMask(); 
00177     }
00178   
00180     inline int posIn() const { 
00181       return _data.posIn(); 
00182     }
00183   
00185     inline int posOut() const { 
00186       return _data.posOut(); 
00187     }
00188 
00190     inline int eqIn() {
00191       return _data.eqIn();
00192     }
00193   
00195     inline int eqOut() {
00196       return _data.eqOut();
00197     }
00198  
00200     inline int isFirst() const {
00201       return _data.isFirst();
00202     }
00203 
00205     inline int pvCode() const { 
00206       return _data.pvCode(); 
00207     }
00208   
00210     inline int pvK() const { 
00211       return _data.pvK(); 
00212     }
00213   
00215     inline int pvCorr() const { 
00216       return _data.pvCorr(); 
00217     }
00218   
00220     inline int K() const { 
00221       return _data.K(); 
00222     }
00223   
00225     inline int X() const { 
00226       return _data.X(); 
00227     }
00228   
00230     inline int psi() const { 
00231       return _data.psi(); 
00232     }
00233   
00235     inline int psiR() const { 
00236       return _data.psiR(); 
00237     }
00238   
00240     inline int DeltaPsiR() const {
00241       return _data.DeltaPsiR(); 
00242     }
00243   
00245     inline int qdec() const { 
00246       return _data.qdec(); 
00247     }
00248 
00250       std::vector<const DTBtiTrigData*> btiTrigList() const { 
00251       return _btitrig; 
00252     }
00253 
00255     bool operator == (const DTTracoTrig &) const;
00256 
00257 
00258   private:
00259 
00260     // parent TRACO
00261     DTTracoChip* _tparent;
00262 
00263     // Trigger data component
00264     DTTracoTrigData _data;
00265 
00266     // vector of BTI triggers which produce the DTTracoChip trigger (1 or 2)
00267         std::vector<const DTBtiTrigData*> _btitrig;
00268 
00269 };
00270 
00271 #endif