CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
RPCPacManager< TPacType > Class Template Reference

#include <RPCPacManager.h>

Public Member Functions

TPacType * getPac (int m_tower, int logSector, int logSegment) const
 
TPacType * getPac (const RPCConst::l1RpcConeCrdnts &coneCrdnts) const
 
void init (std::string patFilesDirectory, L1RpcPACsCntEnum _PACsCnt)
 
void init (const L1RPCConfig *rpcconf)
 
 ~RPCPacManager ()
 

Private Member Functions

void destroy ()
 

Private Attributes

L1RpcPACsCntEnum m_PACsCnt
 
std::vector< std::vector
< std::vector< TPacType * > > > 
m_PacTab
 m_PacTab[m_tower][logSector][m_LogSegment] More...
 
int m_SectorsCnt
 Count of used differnt sectors. More...
 
int m_SegmentCnt
 Count of used differnt segments. More...
 

Detailed Description

template<class TPacType>
class RPCPacManager< TPacType >

The singleton object of thise class stores all PACs of L1RPC trigger. The tempalte type TPacTypeshould be derived from RPCPacBase, and containe the constructor: RPCPacData(std::string patFilesDir, int m_tower, int logSector, int logSegment). 3 configuration are suported: ONE_PAC_PER_TOWER - the same m_PAC (set of patterns etc.) for every LogCone in a m_tower _12_PACS_PER_TOWER - the same m_PAC in the same segment in every sector, (i.e. 12 PACs in sector (one for LogicCone (segment)), all sectors are treat as one) _144_PACS_PER_TOWER - one m_PAC for every LogicCone of given m_tower

Author
Karol Bunkowski (Warsaw)

Definition at line 42 of file RPCPacManager.h.

Constructor & Destructor Documentation

template<class TPacType>
RPCPacManager< TPacType >::~RPCPacManager ( )
inline

Definition at line 44 of file RPCPacManager.h.

Member Function Documentation

template<class TPacType>
void RPCPacManager< TPacType >::destroy ( )
inlineprivate

Definition at line 209 of file RPCPacManager.h.

template<class TPacType>
TPacType* RPCPacManager< TPacType >::getPac ( int  m_tower,
int  logSector,
int  logSegment 
) const
inline

Returns the pointer to m_PAC for given LogCone defined by m_tower, logSector, logSegment. Here you do not have to care, what configuration is curent used.

Parameters
m_tower-16 : 16,
logSector0 : 11,
logSegment0 : 11.

Definition at line 175 of file RPCPacManager.h.

Referenced by RPCBasicTrigConfig::getPac().

template<class TPacType>
TPacType* RPCPacManager< TPacType >::getPac ( const RPCConst::l1RpcConeCrdnts coneCrdnts) const
inline

Definition at line 196 of file RPCPacManager.h.

template<class TPacType>
void RPCPacManager< TPacType >::init ( std::string  patFilesDirectory,
L1RpcPACsCntEnum  _PACsCnt 
)
inline

Gets data for PACs.

Parameters
patFilesDirectoryThe directory where files defining PACs are stored. The files should be named acording to special convencion.
_PACsCntThe configuration version. Should be caled once, before using PACs

Definition at line 61 of file RPCPacManager.h.

template<class TPacType>
void RPCPacManager< TPacType >::init ( const L1RPCConfig rpcconf)
inline

Definition at line 95 of file RPCPacManager.h.

Member Data Documentation

template<class TPacType>
L1RpcPACsCntEnum RPCPacManager< TPacType >::m_PACsCnt
private

Definition at line 207 of file RPCPacManager.h.

template<class TPacType>
std::vector<std::vector<std::vector<TPacType*> > > RPCPacManager< TPacType >::m_PacTab
private

m_PacTab[m_tower][logSector][m_LogSegment]

Definition at line 201 of file RPCPacManager.h.

template<class TPacType>
int RPCPacManager< TPacType >::m_SectorsCnt
private

Count of used differnt sectors.

Definition at line 203 of file RPCPacManager.h.

template<class TPacType>
int RPCPacManager< TPacType >::m_SegmentCnt
private

Count of used differnt segments.

Definition at line 205 of file RPCPacManager.h.