Go to the documentation of this file.
22 #ifndef L1MUDT_TRACK_ASSEMBLER_H
23 #define L1MUDT_TRACK_ASSEMBLER_H
61 void reset()
override;
TrackClass trackClass(int id) const
return Track Class of found track
static const std::string input
void reset() override
reset Track Assembler
unsigned int m_theLastAddressI[12]
unsigned short station(int stat) const
get address of a given station [1-4]
std::bitset< 4 > m_theBitMaps[2]
void print() const
print result of Track Assembler
int address(int id, int stat) const
get address of a single station of selected track candidate
static std::bitset< 56 > getCancelationTable(unsigned int)
cancel Out Table
L1MuDTAddressArray address(int id) const
get address-array of selected track candidate
static unsigned int priorityEncoder21(const std::bitset< 21 > &input)
21 bit priority encoder
void runAddressAssignment2(int global, int group)
run the second Address Assignment Sub-Unit
static unsigned long subBitset56(const std::bitset< 56 > &input, int pos, int length)
get sub-bitmap of a 56-bit word
std::bitset< 68 > m_thePriorityTable1
std::bitset< 56 > m_thePriorityTable2
L1MuDTTrackAssembler(const L1MuDTSectorProcessor &)
constructor
void runEncoderSubUnit1(unsigned &global, unsigned &group, unsigned &priority)
run the first Priority Encoder Sub-Unit
static unsigned int priorityEncoder12(const std::bitset< 12 > &input)
12 bit priority encoder
bool isEmpty(int id) const
is it a valid Track Class?
const std::bitset< 4 > & trackBitMap(int id) const
return bitmap of found track
static unsigned int priorityEncoder4(const std::bitset< 4 > &input)
4 bit priority encoder
unsigned int m_theLastAddress[68]
void runAddressAssignment1(int global, int group)
run the first Address Assignment Sub-Unit
static unsigned long subBitset68(const std::bitset< 68 > &input, int pos, int length)
get sub-bitmap of a 68-bit word
~L1MuDTTrackAssembler() override
destructor
void runEncoderSubUnit2(unsigned &global, unsigned &group, unsigned &priority)
run the second Priority Encoder Sub-Unit
const L1MuDTSectorProcessor & m_sp
static unsigned int addressEncoder12(const std::bitset< 12 > &input)
12 bit address encoder
static unsigned int addressEncoder12s(const std::bitset< 12 > &input)
special 12 bit address encoder
void run() override
run Track Assembler
static unsigned int priorityEncoder22(const std::bitset< 22 > &input)
22 bit priority encoder
L1MuDTAddressArray m_theAddresses[2]