CMS 3D CMS Logo

List of all members | Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends
L1TMuonOverlapParams Class Reference

#include <L1TMuonOverlapParams.h>

Classes

class  LayerInputNode
 
class  LayerMapNode
 
class  Node
 
class  RefHitNode
 
class  RefLayerMapNode
 

Public Types

enum  { Version = 1 }
 
enum  {
  CHARGE = 0, ETA = 1, PT = 2, PDF = 3,
  MEANDISTPHI = 4, GENERAL = 5, SECTORS_START = 6, SECTORS_END = 7,
  DIST_PHI_SHIFT = 8, NUM_OMTFPARAMNODES = 9
}
 
enum  {
  GENERAL_ADDRBITS = 0, GENERAL_VALBITS = 1, GENERAL_HITSPERLAYER = 2, GENERAL_PHIBITS = 3,
  GENERAL_PHIBINS = 4, GENERAL_NREFHITS = 5, GENERAL_NTESTREFHITS = 6, GENERAL_NPROCESSORS = 7,
  GENERAL_NLOGIC_REGIONS = 8, GENERAL_NINPUTS = 9, GENERAL_NLAYERS = 10, GENERAL_NREFLAYERS = 11,
  GENERAL_NGOLDENPATTERNS = 12, GENERAL_NCONFIG = 13
}
 

Public Member Functions

const l1t::LUTchargeLUT () const
 Golden Patterns definitions. More...
 
const std::vector< int > * connectedSectorsEnd () const
 
const std::vector< int > * connectedSectorsStart () const
 
const l1t::LUTdistPhiShiftLUT () const
 
const l1t::LUTetaLUT () const
 
unsigned fwVersion () const
 
const std::vector< int > * generalParams () const
 General definitions. More...
 
const std::vector< int > * globalPhiStartMap () const
 
 L1TMuonOverlapParams ()
 
const std::vector< LayerInputNode > * layerInputMap () const
 
const std::vector< LayerMapNode > * layerMap () const
 
const l1t::LUTmeanDistPhiLUT () const
 
int nGoldenPatterns () const
 
int nHitsPerLayer () const
 
int nInputs () const
 
int nLayers () const
 
int nLogicRegions () const
 
int nPdfAddrBits () const
 Access to specific general settings. More...
 
int nPdfValBits () const
 
int nPhiBins () const
 
int nPhiBits () const
 
int nProcessors () const
 
int nRefHits () const
 
int nRefLayers () const
 
int nTestRefHits () const
 
const l1t::LUTpdfLUT () const
 
const l1t::LUTptLUT () const
 
const std::vector< RefHitNode > * refHitMap () const
 
const std::vector< RefLayerMapNode > * refLayerMap () const
 
void setChargeLUT (const l1t::LUT &lut)
 
void setConnectedSectorsEnd (const std::vector< int > &aVector)
 
void setConnectedSectorsStart (const std::vector< int > &aVector)
 
void setDistPhiShiftLUT (const l1t::LUT &lut)
 
void setEtaLUT (const l1t::LUT &lut)
 
void setFwVersion (unsigned fwVersion)
 
void setGeneralParams (const std::vector< int > &paramsVec)
 
void setGlobalPhiStartMap (const std::vector< int > &aVector)
 
void setLayerInputMap (const std::vector< LayerInputNode > &aVector)
 
void setLayerMap (const std::vector< LayerMapNode > &aVector)
 Connections definitions. More...
 
void setMeanDistPhiLUT (const l1t::LUT &lut)
 
void setPdfLUT (const l1t::LUT &lut)
 
void setPtLUT (const l1t::LUT &lut)
 
void setRefHitMap (const std::vector< RefHitNode > &aVector)
 
void setRefLayerMap (const std::vector< RefLayerMapNode > &aVector)
 
 ~L1TMuonOverlapParams ()
 

Private Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Attributes

unsigned fwVersion_
 Version of firmware configuration. More...
 
std::vector< int > globalPhiStart_
 
std::vector< LayerInputNodelayerInputMap_
 
std::vector< LayerMapNodelayerMap_
 Vector of structs representing definitions of measurement layers. More...
 
std::vector< Nodepnodes_
 vector of LUT like parameters More...
 
std::vector< RefHitNoderefHitMap_
 
std::vector< RefLayerMapNoderefLayerMap_
 

Friends

class boost::serialization::access
 
template<typename CondSerializationT , typename Enabled >
struct cond::serialization::access
 

Detailed Description

Definition at line 14 of file L1TMuonOverlapParams.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Version 

Definition at line 89 of file L1TMuonOverlapParams.h.

89 { Version = 1 };

◆ anonymous enum

anonymous enum

◆ anonymous enum

anonymous enum
Enumerator
GENERAL_ADDRBITS 
GENERAL_VALBITS 
GENERAL_HITSPERLAYER 
GENERAL_PHIBITS 
GENERAL_PHIBINS 
GENERAL_NREFHITS 
GENERAL_NTESTREFHITS 
GENERAL_NPROCESSORS 
GENERAL_NLOGIC_REGIONS 
GENERAL_NINPUTS 
GENERAL_NLAYERS 
GENERAL_NREFLAYERS 
GENERAL_NGOLDENPATTERNS 
GENERAL_NCONFIG 

Definition at line 106 of file L1TMuonOverlapParams.h.

106  {
107  GENERAL_ADDRBITS = 0,
108  GENERAL_VALBITS = 1,
110  GENERAL_PHIBITS = 3,
111  GENERAL_PHIBINS = 4,
112  GENERAL_NREFHITS = 5,
116  GENERAL_NINPUTS = 9,
117  GENERAL_NLAYERS = 10,
118  GENERAL_NREFLAYERS = 11,
120  GENERAL_NCONFIG = 13
121  };

Constructor & Destructor Documentation

◆ L1TMuonOverlapParams()

L1TMuonOverlapParams::L1TMuonOverlapParams ( )
inline

Definition at line 123 of file L1TMuonOverlapParams.h.

References fwVersion_, NUM_OMTFPARAMNODES, pnodes_, and Version.

123  {
125  pnodes_.resize(NUM_OMTFPARAMNODES);
126  }
unsigned fwVersion_
Version of firmware configuration.
std::vector< Node > pnodes_
vector of LUT like parameters

◆ ~L1TMuonOverlapParams()

L1TMuonOverlapParams::~L1TMuonOverlapParams ( )
inline

Definition at line 127 of file L1TMuonOverlapParams.h.

127 {}

Member Function Documentation

◆ chargeLUT()

const l1t::LUT* L1TMuonOverlapParams::chargeLUT ( ) const
inline

Golden Patterns definitions.

Definition at line 203 of file L1TMuonOverlapParams.h.

References CHARGE, and pnodes_.

Referenced by OMTFProcessor< GoldenPatternType >::configure(), and ProcessorBase< GoldenPatternType >::configure().

203 { return &pnodes_[CHARGE].LUT_; }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ connectedSectorsEnd()

const std::vector<int>* L1TMuonOverlapParams::connectedSectorsEnd ( ) const
inline

Definition at line 200 of file L1TMuonOverlapParams.h.

References pnodes_, and SECTORS_END.

200 { return &pnodes_[SECTORS_END].iparams_; };
std::vector< Node > pnodes_
vector of LUT like parameters

◆ connectedSectorsStart()

const std::vector<int>* L1TMuonOverlapParams::connectedSectorsStart ( ) const
inline

Definition at line 198 of file L1TMuonOverlapParams.h.

References pnodes_, and SECTORS_START.

198 { return &pnodes_[SECTORS_START].iparams_; };
std::vector< Node > pnodes_
vector of LUT like parameters

◆ distPhiShiftLUT()

const l1t::LUT* L1TMuonOverlapParams::distPhiShiftLUT ( ) const
inline

return nullptr if the DistPhiShiftLUT is not available in the given L1TMuonOverlapParamsRcd, which is the case for the fwVersion <= 0x6

Definition at line 213 of file L1TMuonOverlapParams.h.

References DIST_PHI_SHIFT, and pnodes_.

Referenced by ProcessorBase< GoldenPatternType >::configure().

213  {
214  if (pnodes_.size() >= (DIST_PHI_SHIFT + 1))
215  return &pnodes_[DIST_PHI_SHIFT].LUT_;
216  else
217  return nullptr;
218  }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ etaLUT()

const l1t::LUT* L1TMuonOverlapParams::etaLUT ( ) const
inline

Definition at line 204 of file L1TMuonOverlapParams.h.

References ETA, and pnodes_.

Referenced by OMTFProcessor< GoldenPatternType >::configure(), and ProcessorBase< GoldenPatternType >::configure().

204 { return &pnodes_[ETA].LUT_; }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ fwVersion()

unsigned L1TMuonOverlapParams::fwVersion ( ) const
inline

◆ generalParams()

const std::vector<int>* L1TMuonOverlapParams::generalParams ( ) const
inline

General definitions.

Definition at line 134 of file L1TMuonOverlapParams.h.

References GENERAL, and pnodes_.

Referenced by OMTFPatternMaker::beginRun(), and OMTFPatternMaker::endJob().

134 { return &pnodes_[GENERAL].iparams_; }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ globalPhiStartMap()

const std::vector<int>* L1TMuonOverlapParams::globalPhiStartMap ( ) const
inline

Definition at line 194 of file L1TMuonOverlapParams.h.

References globalPhiStart_.

194 { return &globalPhiStart_; };
std::vector< int > globalPhiStart_

◆ layerInputMap()

const std::vector<LayerInputNode>* L1TMuonOverlapParams::layerInputMap ( ) const
inline

Definition at line 196 of file L1TMuonOverlapParams.h.

References layerInputMap_.

196 { return &layerInputMap_; };
std::vector< LayerInputNode > layerInputMap_

◆ layerMap()

const std::vector<LayerMapNode>* L1TMuonOverlapParams::layerMap ( ) const
inline

Definition at line 188 of file L1TMuonOverlapParams.h.

References layerMap_.

188 { return &layerMap_; };
std::vector< LayerMapNode > layerMap_
Vector of structs representing definitions of measurement layers.

◆ meanDistPhiLUT()

const l1t::LUT* L1TMuonOverlapParams::meanDistPhiLUT ( ) const
inline

Definition at line 207 of file L1TMuonOverlapParams.h.

References MEANDISTPHI, and pnodes_.

Referenced by OMTFProcessor< GoldenPatternType >::configure(), and ProcessorBase< GoldenPatternType >::configure().

207 { return &pnodes_[MEANDISTPHI].LUT_; }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ nGoldenPatterns()

int L1TMuonOverlapParams::nGoldenPatterns ( ) const
inline

◆ nHitsPerLayer()

int L1TMuonOverlapParams::nHitsPerLayer ( ) const
inline

◆ nInputs()

int L1TMuonOverlapParams::nInputs ( ) const
inline

Definition at line 159 of file L1TMuonOverlapParams.h.

References GENERAL, GENERAL_NINPUTS, and pnodes_.

Referenced by OMTFConfiguration::nInputs().

◆ nLayers()

int L1TMuonOverlapParams::nLayers ( ) const
inline

◆ nLogicRegions()

int L1TMuonOverlapParams::nLogicRegions ( ) const
inline

◆ nPdfAddrBits()

int L1TMuonOverlapParams::nPdfAddrBits ( ) const
inline

Access to specific general settings.

Definition at line 141 of file L1TMuonOverlapParams.h.

References GENERAL, GENERAL_ADDRBITS, and pnodes_.

Referenced by XMLConfigReader::buildGP(), OMTFConfiguration::nPdfAddrBits(), and XMLConfigReader::readLUTs().

◆ nPdfValBits()

int L1TMuonOverlapParams::nPdfValBits ( ) const
inline

Definition at line 143 of file L1TMuonOverlapParams.h.

References GENERAL, GENERAL_VALBITS, and pnodes_.

Referenced by OMTFConfiguration::nPdfValBits().

◆ nPhiBins()

int L1TMuonOverlapParams::nPhiBins ( ) const
inline

Definition at line 149 of file L1TMuonOverlapParams.h.

References GENERAL, GENERAL_PHIBINS, and pnodes_.

Referenced by OMTFConfiguration::nPhiBins().

◆ nPhiBits()

int L1TMuonOverlapParams::nPhiBits ( ) const
inline

Definition at line 147 of file L1TMuonOverlapParams.h.

References GENERAL, GENERAL_PHIBITS, and pnodes_.

Referenced by OMTFConfiguration::nPhiBits().

◆ nProcessors()

int L1TMuonOverlapParams::nProcessors ( ) const
inline

◆ nRefHits()

int L1TMuonOverlapParams::nRefHits ( ) const
inline

Definition at line 151 of file L1TMuonOverlapParams.h.

References GENERAL, GENERAL_NREFHITS, and pnodes_.

Referenced by OMTFConfiguration::nRefHits().

◆ nRefLayers()

int L1TMuonOverlapParams::nRefLayers ( ) const
inline

◆ nTestRefHits()

int L1TMuonOverlapParams::nTestRefHits ( ) const
inline

◆ pdfLUT()

const l1t::LUT* L1TMuonOverlapParams::pdfLUT ( ) const
inline

Definition at line 206 of file L1TMuonOverlapParams.h.

References PDF, and pnodes_.

Referenced by OMTFProcessor< GoldenPatternType >::configure(), and ProcessorBase< GoldenPatternType >::configure().

206 { return &pnodes_[PDF].LUT_; }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ ptLUT()

const l1t::LUT* L1TMuonOverlapParams::ptLUT ( ) const
inline

Definition at line 205 of file L1TMuonOverlapParams.h.

References pnodes_, and PT.

Referenced by OMTFProcessor< GoldenPatternType >::configure(), and ProcessorBase< GoldenPatternType >::configure().

205 { return &pnodes_[PT].LUT_; }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ refHitMap()

const std::vector<RefHitNode>* L1TMuonOverlapParams::refHitMap ( ) const
inline

Definition at line 192 of file L1TMuonOverlapParams.h.

References refHitMap_.

192 { return &refHitMap_; };
std::vector< RefHitNode > refHitMap_

◆ refLayerMap()

const std::vector<RefLayerMapNode>* L1TMuonOverlapParams::refLayerMap ( ) const
inline

Definition at line 190 of file L1TMuonOverlapParams.h.

References refLayerMap_.

190 { return &refLayerMap_; };
std::vector< RefLayerMapNode > refLayerMap_

◆ serialize()

template<class Archive >
void L1TMuonOverlapParams::serialize ( Archive &  ar,
const unsigned int  version 
)
private

◆ setChargeLUT()

void L1TMuonOverlapParams::setChargeLUT ( const l1t::LUT lut)
inline

Definition at line 220 of file L1TMuonOverlapParams.h.

References CHARGE, and pnodes_.

Referenced by L1TMuonOverlapParamsESProducer::readPatternsXML(), and L1TMuonOverlapPhase1ParamsESProducer::readPatternsXML().

220  {
221  pnodes_[CHARGE].type_ = "LUT";
222  pnodes_[CHARGE].LUT_ = lut;
223  }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setConnectedSectorsEnd()

void L1TMuonOverlapParams::setConnectedSectorsEnd ( const std::vector< int > &  aVector)
inline

Definition at line 183 of file L1TMuonOverlapParams.h.

References pnodes_, and SECTORS_END.

Referenced by XMLConfigReader::readConfig().

183  {
184  pnodes_[SECTORS_END].type_ = "INT";
185  pnodes_[SECTORS_END].iparams_ = aVector;
186  };
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setConnectedSectorsStart()

void L1TMuonOverlapParams::setConnectedSectorsStart ( const std::vector< int > &  aVector)
inline

Definition at line 178 of file L1TMuonOverlapParams.h.

References pnodes_, and SECTORS_START.

Referenced by XMLConfigReader::readConfig().

178  {
179  pnodes_[SECTORS_START].type_ = "INT";
180  pnodes_[SECTORS_START].iparams_ = aVector;
181  };
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setDistPhiShiftLUT()

void L1TMuonOverlapParams::setDistPhiShiftLUT ( const l1t::LUT lut)
inline

Definition at line 240 of file L1TMuonOverlapParams.h.

References DIST_PHI_SHIFT, and pnodes_.

Referenced by L1TMuonOverlapPhase1ParamsESProducer::readPatternsXML().

240  {
241  pnodes_[DIST_PHI_SHIFT].type_ = "LUT";
242  pnodes_[DIST_PHI_SHIFT].LUT_ = lut;
243  }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setEtaLUT()

void L1TMuonOverlapParams::setEtaLUT ( const l1t::LUT lut)
inline

Definition at line 224 of file L1TMuonOverlapParams.h.

References ETA, and pnodes_.

Referenced by L1TMuonOverlapParamsESProducer::readPatternsXML(), and L1TMuonOverlapPhase1ParamsESProducer::readPatternsXML().

224  {
225  pnodes_[ETA].type_ = "LUT";
226  pnodes_[ETA].LUT_ = lut;
227  }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setFwVersion()

void L1TMuonOverlapParams::setFwVersion ( unsigned  fwVersion)
inline

◆ setGeneralParams()

void L1TMuonOverlapParams::setGeneralParams ( const std::vector< int > &  paramsVec)
inline

Definition at line 135 of file L1TMuonOverlapParams.h.

References GENERAL, and pnodes_.

Referenced by OMTFPatternMaker::beginRun(), OMTFPatternMaker::endJob(), and XMLConfigReader::readConfig().

135  {
136  pnodes_[GENERAL].type_ = "INT";
137  pnodes_[GENERAL].iparams_ = paramsVec;
138  }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setGlobalPhiStartMap()

void L1TMuonOverlapParams::setGlobalPhiStartMap ( const std::vector< int > &  aVector)
inline

Definition at line 174 of file L1TMuonOverlapParams.h.

References globalPhiStart_.

Referenced by XMLConfigReader::readConfig().

174 { globalPhiStart_ = aVector; };
std::vector< int > globalPhiStart_

◆ setLayerInputMap()

void L1TMuonOverlapParams::setLayerInputMap ( const std::vector< LayerInputNode > &  aVector)
inline

Definition at line 176 of file L1TMuonOverlapParams.h.

References layerInputMap_.

Referenced by XMLConfigReader::readConfig().

176 { layerInputMap_ = aVector; };
std::vector< LayerInputNode > layerInputMap_

◆ setLayerMap()

void L1TMuonOverlapParams::setLayerMap ( const std::vector< LayerMapNode > &  aVector)
inline

Connections definitions.

Definition at line 168 of file L1TMuonOverlapParams.h.

References layerMap_.

Referenced by XMLConfigReader::readConfig().

168 { layerMap_ = aVector; }
std::vector< LayerMapNode > layerMap_
Vector of structs representing definitions of measurement layers.

◆ setMeanDistPhiLUT()

void L1TMuonOverlapParams::setMeanDistPhiLUT ( const l1t::LUT lut)
inline

Definition at line 236 of file L1TMuonOverlapParams.h.

References MEANDISTPHI, and pnodes_.

Referenced by L1TMuonOverlapParamsESProducer::readPatternsXML(), and L1TMuonOverlapPhase1ParamsESProducer::readPatternsXML().

236  {
237  pnodes_[MEANDISTPHI].type_ = "LUT";
238  pnodes_[MEANDISTPHI].LUT_ = lut;
239  }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setPdfLUT()

void L1TMuonOverlapParams::setPdfLUT ( const l1t::LUT lut)
inline

Definition at line 232 of file L1TMuonOverlapParams.h.

References PDF, and pnodes_.

Referenced by L1TMuonOverlapParamsESProducer::readPatternsXML(), and L1TMuonOverlapPhase1ParamsESProducer::readPatternsXML().

232  {
233  pnodes_[PDF].type_ = "LUT";
234  pnodes_[PDF].LUT_ = lut;
235  }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setPtLUT()

void L1TMuonOverlapParams::setPtLUT ( const l1t::LUT lut)
inline

Definition at line 228 of file L1TMuonOverlapParams.h.

References pnodes_, and PT.

Referenced by L1TMuonOverlapParamsESProducer::readPatternsXML(), and L1TMuonOverlapPhase1ParamsESProducer::readPatternsXML().

228  {
229  pnodes_[PT].type_ = "LUT";
230  pnodes_[PT].LUT_ = lut;
231  }
std::vector< Node > pnodes_
vector of LUT like parameters

◆ setRefHitMap()

void L1TMuonOverlapParams::setRefHitMap ( const std::vector< RefHitNode > &  aVector)
inline

Definition at line 172 of file L1TMuonOverlapParams.h.

References refHitMap_.

Referenced by XMLConfigReader::readConfig().

172 { refHitMap_ = aVector; };
std::vector< RefHitNode > refHitMap_

◆ setRefLayerMap()

void L1TMuonOverlapParams::setRefLayerMap ( const std::vector< RefLayerMapNode > &  aVector)
inline

Definition at line 170 of file L1TMuonOverlapParams.h.

References refLayerMap_.

Referenced by XMLConfigReader::readConfig().

170 { refLayerMap_ = aVector; }
std::vector< RefLayerMapNode > refLayerMap_

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 273 of file L1TMuonOverlapParams.h.

◆ cond::serialization::access

template<typename CondSerializationT , typename Enabled >
friend struct cond::serialization::access
friend

Definition at line 273 of file L1TMuonOverlapParams.h.

Member Data Documentation

◆ fwVersion_

unsigned L1TMuonOverlapParams::fwVersion_
private

Version of firmware configuration.

Definition at line 247 of file L1TMuonOverlapParams.h.

Referenced by fwVersion(), L1TMuonOverlapParams(), and setFwVersion().

◆ globalPhiStart_

std::vector<int> L1TMuonOverlapParams::globalPhiStart_
private

Vector of global phi of processor beggining in each reference layer. All processors are serialized in a single vector.

Definition at line 266 of file L1TMuonOverlapParams.h.

Referenced by globalPhiStartMap(), and setGlobalPhiStartMap().

◆ layerInputMap_

std::vector<LayerInputNode> L1TMuonOverlapParams::layerInputMap_
private

Vector of all definitions of input ranges for given logic region. All processors and all regions are serialized in a single vector.

Definition at line 271 of file L1TMuonOverlapParams.h.

Referenced by layerInputMap(), and setLayerInputMap().

◆ layerMap_

std::vector<LayerMapNode> L1TMuonOverlapParams::layerMap_
private

Vector of structs representing definitions of measurement layers.

Definition at line 253 of file L1TMuonOverlapParams.h.

Referenced by layerMap(), and setLayerMap().

◆ pnodes_

std::vector<Node> L1TMuonOverlapParams::pnodes_
private

◆ refHitMap_

std::vector<RefHitNode> L1TMuonOverlapParams::refHitMap_
private

Vector of RefHitNode defining assignenemt of reference hits to logical regions. definitions for all processor are serialized in a single vector.

Definition at line 262 of file L1TMuonOverlapParams.h.

Referenced by refHitMap(), and setRefHitMap().

◆ refLayerMap_

std::vector<RefLayerMapNode> L1TMuonOverlapParams::refLayerMap_
private

Vector of structs representing definitins of reference layers in terms of logic measurement layers numbers.

Definition at line 257 of file L1TMuonOverlapParams.h.

Referenced by refLayerMap(), and setRefLayerMap().