Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:04:02

0001 #ifndef DTLocalTrigger_DTLocalTrigger_h
0002 #define DTLocalTrigger_DTLocalTrigger_h
0003 
0004 /** \class DTLocalTrigger
0005  *
0006  * Trigger from DT chamber
0007  *  
0008  *
0009  * \author FRC
0010  *
0011  */
0012 
0013 #include <cstdint>
0014 
0015 class DTLocalTrigger {
0016 public:
0017   /// Constructor
0018   explicit DTLocalTrigger(int eventBx, int bx, int data);
0019 
0020   /// Default construction.
0021   DTLocalTrigger();
0022 
0023   /// triggers are equal if they are in the same chamber and have same BX count (??)
0024   bool operator==(const DTLocalTrigger& trig) const;
0025 
0026   uint16_t eventBx() const;
0027   uint16_t bx() const;
0028   uint16_t quality() const;
0029   uint16_t trTheta() const;
0030   bool secondTrack() const;
0031   bool trOut() const;
0032 
0033   /// Print content of trigger
0034   void print() const;
0035 
0036 private:
0037   uint16_t theEventBX;
0038   uint16_t theBX;
0039   uint16_t theData;
0040 };
0041 
0042 #include <iostream>
0043 inline std::ostream& operator<<(std::ostream& o, const DTLocalTrigger& trig) {
0044   return o << " BX: " << trig.bx() << " quality: " << trig.quality();
0045 }
0046 #endif