#include <XrdCmsRTable.hh>
Definition at line 39 of file XrdCmsRTable.hh.
◆ XrdCmsRTable()
XrdCmsRTable::XrdCmsRTable |
( |
| ) |
|
|
inline |
Definition at line 55 of file XrdCmsRTable.hh.
55{memset(Rtable, 0, sizeof(Rtable)); Hwm = -1;}
◆ ~XrdCmsRTable()
XrdCmsRTable::~XrdCmsRTable |
( |
| ) |
|
|
inline |
◆ Add()
Definition at line 46 of file XrdCmsRTable.cc.
47{
48 int i;
49
50
51
52 myMutex.Lock();
53 for (i = 1; i <
maxRD; i++)
if (!Rtable[i])
break;
54
55
56
57 if (i >=
maxRD) i = 0;
58 else {Rtable[i] = nP;
59 if (i > Hwm) Hwm = i;
60 }
61
62
63
64 myMutex.UnLock();
65 return static_cast<short>(i);
66}
References maxRD.
◆ Del()
Definition at line 72 of file XrdCmsRTable.cc.
73{
74 int i;
75
76
77
78 myMutex.Lock();
79 for (i = 1; i <= Hwm; i++) if (Rtable[i] == nP) break;
80
81
82
83 if (i <= Hwm)
84 {Rtable[i] = 0;
85 if (i == Hwm) {while(--i) if (Rtable[i]) break; Hwm = i;}
86 }
87
88
89
90 myMutex.UnLock();
91}
◆ Find()
XrdCmsNode * XrdCmsRTable::Find |
( |
short | Num, |
|
|
int | Inst ) |
Definition at line 101 of file XrdCmsRTable.cc.
102{
103
104
105
106 if (Num <= Hwm && Rtable[Num] && Rtable[Num]->Inst() == Inst)
107 return Rtable[Num];
108 return (XrdCmsNode *)0;
109}
◆ Lock()
void XrdCmsRTable::Lock |
( |
| ) |
|
|
inline |
◆ Send()
void XrdCmsRTable::Send |
( |
const char * | What, |
|
|
const char * | data, |
|
|
int | dlen ) |
Definition at line 115 of file XrdCmsRTable.cc.
116{
118 int i;
119
120
121
122 myMutex.Lock();
123 for (i = 1; i <= Hwm; i++)
124 if (Rtable[i])
125 {
DEBUG(What <<
" to " <<Rtable[i]->Ident);
126 Rtable[i]->Send(data, dlen);
127 }
128 myMutex.UnLock();
129}
References DEBUG, and EPNAME.
◆ UnLock()
void XrdCmsRTable::UnLock |
( |
| ) |
|
|
inline |
The documentation for this class was generated from the following files: