ATLAS Offline Software
Loading...
Searching...
No Matches
TGCPatchPanel.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TGCPatchPanel_hh
6#define TGCPatchPanel_hh
7
11#include <fstream>
12#include <string>
13
14namespace LVL1TGCTrigger {
15
17class TGCASDOut;
18class TGCBIDOut;
21
28
29
31const int NumberOfASDOut = 4;
33const int NumberOfASDChannel = 16;
35const int MaxNumberOfConnector = 10;
37
39public:
40 void clockIn(int bunch, TGCDatabaseManager* db=0);
41
42 TGCPatchPanelOut* getOutput(int SBId);
43 void eraseOutput(int SBId);
44
45 int getIdSlaveBoard(int port) const;
46 void setIdSlaveBoard(int port,int id);
47
48 // pointer to adjacent Patch Panel board.
49 TGCPatchPanel* getAdjacentPP(int side) { return m_PPAdj[side]; };
50 const TGCPatchPanel* getAdjacentPP(int side) const { return m_PPAdj[side]; };
51 void setAdjacentPP(int side, TGCPatchPanel* PP);
52
53 void setASDOut(int ch, int connector, const TGCASDOut* asdOut);
54
55 TGCBIDOut* getBIDOut(int ch, int connector, int bunch);
56
57 void dumpPPOut(); // print output of Patch Panel
58 void dumpPPOut(int i); // bit pattern is separated by underscore
59
60 void showProperty();
61
62 int getId() const;
63 void setId(int idIn);
64 int getType() const { return m_type; };
65 void setType(int typeIn) { m_type=typeIn; };
66 TGCRegionType getRegion() const { return m_region; };
67 void setRegion(TGCRegionType regionIn) { m_region=regionIn; };
68
69 void connect();
70 std::string getTypeName(int typeIn) const;
71
74 TGCPatchPanel(const TGCPatchPanel& right) = delete;
76
77 const TGCArguments* tgcArgs() const { return m_tgcArgs; }
78
79private:
80 void showResult() const;
81 void doBID();
82 int doOrLogic();
83 int createOutput();
84 int getInputConnectorIndex(const int connectorId) const;
85 void clearASDOut();
86 void deleteBIDOut();
87
88 int m_id;
90 int m_type;
95 int m_nHit; // 18-Jan-01 Added by KH
96
100 TGCPatchPanel* m_PPAdj[2]; // pointer to adjacent board.
102
104
105};
106
107} //end of namespace bracket
108
109#endif // TGCPatchPanel_hh
TGCPatchPanel * getAdjacentPP(int side)
TGCPatchPanelOut * m_PPOut[NumberOfPatchPanelOut]
int m_idSlaveBoard[NumberOfPatchPanelOut]
const TGCArguments * tgcArgs() const
void setASDOut(int ch, int connector, const TGCASDOut *asdOut)
TGCPatchPanel(const TGCPatchPanel &right)=delete
TGCBIDOut * m_BIDOut[NChOfPPOutputConnector][MaxNumberOfConnector][NumberOfBunchKeptInPP]
TGCPatchPanelOut * getOutput(int SBId)
TGCConnectionInPP * m_connectionInPP
std::string getTypeName(int typeIn) const
void setIdSlaveBoard(int port, int id)
const TGCASDOut * m_ASDOut[NChOfPPOutputConnector][MaxNumberOfConnector]
void setAdjacentPP(int side, TGCPatchPanel *PP)
TGCBIDOut * getBIDOut(int ch, int connector, int bunch)
int getIdSlaveBoard(int port) const
int getInputConnectorIndex(const int connectorId) const
TGCRegionType getRegion() const
void setRegion(TGCRegionType regionIn)
const TGCPatchPanel * getAdjacentPP(int side) const
void clockIn(int bunch, TGCDatabaseManager *db=0)
TGCPatchPanel & operator=(const TGCPatchPanel &right)
class TGCPatchPanel TGCStripTripletPP
class TGCPatchPanel TGCStripInnerPP
class TGCPatchPanel TGCWireTripletPP
class TGCPatchPanel TGCWireInnerPP
const int NumberOfBunchKeptInPP
const int NumberOfASDOut
const int NumberOfASDChannel
class TGCPatchPanel TGCStripDoubletPP
const int NumberOfPatchPanelOut
const int MaxNumberOfConnector
const int NumberOfPPOutputConnector
const int NChOfPPOutputConnector
class TGCPatchPanel TGCWireDoubletPP