Unpacker

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
#ifndef EventFilter_L1TRawToDigi_Unpacker_h
#define EventFilter_L1TRawToDigi_Unpacker_h

#include "EventFilter/L1TRawToDigi/interface/Block.h"

namespace l1t {
  class UnpackerCollections;

  void getBXRange(int nbx, int& first, int& last);

  class Unpacker {
  public:
    Unpacker() : algoVersion_(0) {}
    virtual ~Unpacker() = default;
    virtual bool unpack(const Block& block, UnpackerCollections* coll) = 0;

    // Modeled on plugins/implementations_stage2/MuonUnpacker.h
    inline unsigned int getAlgoVersion() { return algoVersion_; };
    inline void setAlgoVersion(const unsigned int version) { algoVersion_ = version; };

  private:
    unsigned int algoVersion_;
  };
}  // namespace l1t

#endif