Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 12:53:55

0001 #ifndef DataFormat_L1TMuon_Omtf_DataWord64_H
0002 #define DataFormat_L1TMuon_Omtf_DataWord64_H
0003 
0004 #include <cstdint>
0005 #include <iostream>
0006 #include <vector>
0007 #include <map>
0008 
0009 namespace omtf {
0010 
0011   typedef uint64_t Word64;
0012 
0013   typedef std::map<std::pair<unsigned int, unsigned int>, std::vector<Word64> > FedAmcRawsMap;
0014 
0015   namespace DataWord64 {
0016     enum Type { csc = 0xC, dt = 0xD, rpc = 0xE, omtf = 0xF };
0017     template <typename T>
0018     Type type(const T &);
0019     template <>
0020     inline Type type<Word64>(const Word64 &data) {
0021       return static_cast<Type>(data >> 60);
0022     }
0023     template <>
0024     inline Type type<unsigned int>(const unsigned int &intType) {
0025       return static_cast<Type>(intType);
0026     }
0027     std::ostream &operator<<(std::ostream &out, const Type &o);
0028   };  // namespace DataWord64
0029 
0030 }  // namespace omtf
0031 #endif