File: TelEngine__SignallingCircuit.html

package info (click to toggle)
yate 2.2.0-1~dfsg-1.1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 17,496 kB
  • ctags: 21,687
  • sloc: cpp: 126,248; ansic: 11,462; sh: 3,573; php: 3,229; python: 2,014; makefile: 1,504; perl: 465; awk: 8
file content (500 lines) | stat: -rw-r--r-- 27,505 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
<HTML>
<HEAD>
<TITLE>class SignallingCircuit</TITLE>

<META NAME="Generator" CONTENT="KDOC ">
</HEAD>
<BODY bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#000099" alink= "#ffffff">
<TABLE WIDTH="100%" BORDER="0">
<TR>
<TD>
	<TABLE BORDER="0">
		<TR><TD valign="top" align="left" cellspacing="10">
		<h1>class SignallingCircuit</h1>
		</TD>
		<TD valign="top" align="right" colspan="1">Abstract data circuit used by signalling. <small><A HREF="#longdesc">More...</A></small></TD></TR>
	</TABLE>
	<HR>
	<TABLE BORDER="0">
		<TR><TH>Full name</TH><TD><code><A HREF="TelEngine.html">TelEngine</A>::SignallingCircuit</code></TD></TR>
<TR><TH>Definition</TH><TD><code>#include &lt;<A HREF="libs___ysig___yatesig_h.html">libs/ysig/yatesig.h</A>&gt;</code></TD></TR>
<TR><TH>Inherits</TH><TD><A HREF="TelEngine__RefObject.html">TelEngine::RefObject</A> <small>[public ]</small></TD></TR>
<TR><TH><A HREF="full-list-TelEngine__SignallingCircuit.html">List of all Methods</A></TH></TR>
	</TABLE>
	</TD>
<TD align="right"><TABLE BORDER="0"><TR><TD><small><A HREF="index-long.html">Annotated List</A></small></TD></TR>
<TR><TD><small><A HREF="header-list.html">Files</A></small></TD></TR>
<TR><TD><small><A HREF="all-globals.html">Globals</A></small></TD></TR>
<TR><TD><small><A HREF="hier.html">Hierarchy</A></small></TD></TR>
<TR><TD><small><A HREF="index.html">Index</A></small></TD></TR>
</TABLE></TD></TR></TABLE>
<h4>Public Types</h4><ul><LI>enum <A HREF="#ref3">Type</A> {	Unknown = 0,
	Local, 
	TDM,
	RTP,
	IAX,
    }
</LI>
<LI>enum <A HREF="#ref4">Status</A> {	Missing = 0,
	Disabled,
	Idle,
	Reserved,
	Starting,
	Stopping,
	Connected,
    }
</LI>
<LI>enum <A HREF="#ref5">LockFlags</A> {	LockLocalHWFail       = 0x0001,  
	LockLocalMaint        = 0x0002,  
	LockLocalHWFailChg    = 0x0010,  
	LockLocalMaintChg     = 0x0020,  
	LockRemoteHWFail      = 0x0100,  
	LockRemoteMaint       = 0x0200,  
	LockRemoteHWFailChg   = 0x1000,  
	LockRemoteMaintChg    = 0x2000,  
	LockLocal             = LockLocalHWFail | LockLocalMaint,
	LockRemote            = LockRemoteHWFail | LockRemoteMaint,
	LockLocked            = LockLocal | LockRemote,
	LockLocalChg          = LockLocalHWFailChg | LockLocalMaintChg,
	LockRemoteChg         = LockRemoteHWFailChg | LockRemoteMaintChg,
	LockChanged           = LockLocalChg | LockRemoteChg,
    }
</LI>
</ul><h4>Public Methods</h4><ul><LI>virtual  &nbsp;<b><A HREF="#ref6">~SignallingCircuit</A></b> () 
</LI>
<LI>virtual  bool &nbsp;<b><A HREF="#ref7">status</A></b> (Status newStat, bool sync = false) 
</LI>
<LI>inline Type &nbsp;<b><A HREF="#ref8">type</A></b> ()  const
</LI>
<LI>inline Status &nbsp;<b><A HREF="#ref9">status</A></b> ()  const
</LI>
<LI>inline int &nbsp;<b><A HREF="#ref10">locked</A></b> (int flags = -1)  const
</LI>
<LI>inline void &nbsp;<b><A HREF="#ref11">setLock</A></b> (int flags) 
</LI>
<LI>inline void &nbsp;<b><A HREF="#ref12">resetLock</A></b> (int flags) 
</LI>
<LI>virtual  bool &nbsp;<b><A HREF="#ref13">updateFormat</A></b> (const char* format, int direction) 
</LI>
<LI>virtual  bool &nbsp;<b><A HREF="#ref14">setParam</A></b> (const String& param, const String& value) 
</LI>
<LI>virtual  bool &nbsp;<b><A HREF="#ref15">setParams</A></b> (const NamedList& params) 
</LI>
<LI>virtual  bool &nbsp;<b><A HREF="#ref16">getParam</A></b> (const String& param, String& value)  const
</LI>
<LI>virtual  bool &nbsp;<b><A HREF="#ref17">getBoolParam</A></b> (const String& param, bool defValue = false)  const
</LI>
<LI>virtual  int &nbsp;<b><A HREF="#ref18">getIntParam</A></b> (const String& param, int defValue = 0)  const
</LI>
<LI>virtual  bool &nbsp;<b><A HREF="#ref19">getParams</A></b> (NamedList& params, const String& category = String::empty()) 
</LI>
<LI>inline SignallingCircuitGroup* &nbsp;<b><A HREF="#ref20">group</A></b> () 
</LI>
<LI>inline SignallingCircuitSpan* &nbsp;<b><A HREF="#ref21">span</A></b> () 
</LI>
<LI>inline const SignallingCircuitGroup* &nbsp;<b><A HREF="#ref22">group</A></b> ()  const
</LI>
<LI>inline const SignallingCircuitSpan* &nbsp;<b><A HREF="#ref23">span</A></b> ()  const
</LI>
<LI>inline unsigned int &nbsp;<b><A HREF="#ref24">code</A></b> ()  const
</LI>
<LI>inline bool &nbsp;<b><A HREF="#ref25">available</A></b> ()  const
</LI>
<LI>inline bool &nbsp;<b><A HREF="#ref26">connected</A></b> ()  const
</LI>
<LI>inline bool &nbsp;<b><A HREF="#ref27">reserve</A></b> () 
</LI>
<LI>inline bool &nbsp;<b><A HREF="#ref28">connect</A></b> (const char* format = 0) 
</LI>
<LI>inline bool &nbsp;<b><A HREF="#ref29">disconnect</A></b> () 
</LI>
<LI>inline bool &nbsp;<b><A HREF="#ref30">disable</A></b> () 
</LI>
<LI>bool &nbsp;<b><A HREF="#ref31">hwLock</A></b> (bool set, bool remote, bool changed = false, bool setChanged = false) 
</LI>
<LI>bool &nbsp;<b><A HREF="#ref32">maintLock</A></b> (bool set, bool remote, bool changed = false, bool setChanged = false) 
</LI>
<LI>void &nbsp;<b><A HREF="#ref33">addEvent</A></b> (SignallingCircuitEvent* event) 
</LI>
<LI>SignallingCircuitEvent* &nbsp;<b><A HREF="#ref34">getEvent</A></b> (const Time& when) 
</LI>
<LI>virtual  bool &nbsp;<b><A HREF="#ref35">sendEvent</A></b> (SignallingCircuitEvent::Type type, NamedList* params = 0) 
</LI>
</ul><h4>Public Static Methods</h4><ul><LI>static  const char* &nbsp;<b><A HREF="#ref36">lookupType</A></b> (int type) 
</LI>
<LI>static  const char* &nbsp;<b><A HREF="#ref37">lookupStatus</A></b> (int status) 
</LI>
</ul><h4>Public Members</h4><ul><LI>static TokenDict <b><A HREF="#ref38">s_lockNames[]</A></b></LI>
</ul><h4>Protected Methods</h4><ul><LI>&nbsp;<b><A HREF="#ref39">SignallingCircuit</A></b> (Type type, unsigned int code, SignallingCircuitGroup* group = 0,
	SignallingCircuitSpan* span = 0) 
</LI>
<LI>&nbsp;<b><A HREF="#ref40">SignallingCircuit</A></b> (Type type, unsigned int code, Status status,
	SignallingCircuitGroup* group = 0, SignallingCircuitSpan* span = 0) 
</LI>
<LI>virtual  void &nbsp;<b><A HREF="#ref41">clearEvents</A></b> () 
</LI>
<LI>void &nbsp;<b><A HREF="#ref42">eventTerminated</A></b> (SignallingCircuitEvent* event) 
</LI>
</ul><h4>Protected Members</h4><ul><LI>Mutex <b><A HREF="#ref43">m_mutex</A></b></LI>
</ul><HR><H2><A NAME="longdesc">Detailed Description</A></H2><p>
 Interface to an abstract voice/data circuit referenced by signalling
</p>
<A NAME="Type"></A><A NAME="ref3"></A><table width="100%"><tr bgcolor="#eeeeee"><td>enum <strong>Type</strong> {	Unknown = 0,
	Local, 
	TDM,
	RTP,
	IAX,
    }
</td><td align="right"><h3><strong>Type</strong></h3></td></tr></table><p></p><p>
 Type of the circuit hardware or transport
     </p>
<A NAME="Status"></A><A NAME="ref4"></A><table width="100%"><tr bgcolor="#eeeeee"><td>enum <strong>Status</strong> {	Missing = 0,
	Disabled,
	Idle,
	Reserved,
	Starting,
	Stopping,
	Connected,
    }
</td><td align="right"><h3><strong>Status</strong></h3></td></tr></table><p></p><p>
 Status of the circuit
     </p>
<A NAME="LockFlags"></A><A NAME="ref5"></A><table width="100%"><tr bgcolor="#eeeeee"><td>enum <strong>LockFlags</strong> {	LockLocalHWFail       = 0x0001,  
	LockLocalMaint        = 0x0002,  
	LockLocalHWFailChg    = 0x0010,  
	LockLocalMaintChg     = 0x0020,  
	LockRemoteHWFail      = 0x0100,  
	LockRemoteMaint       = 0x0200,  
	LockRemoteHWFailChg   = 0x1000,  
	LockRemoteMaintChg    = 0x2000,  
	LockLocal             = LockLocalHWFail | LockLocalMaint,
	LockRemote            = LockRemoteHWFail | LockRemoteMaint,
	LockLocked            = LockLocal | LockRemote,
	LockLocalChg          = LockLocalHWFailChg | LockLocalMaintChg,
	LockRemoteChg         = LockRemoteHWFailChg | LockRemoteMaintChg,
	LockChanged           = LockLocalChg | LockRemoteChg,
    }
</td><td align="right"><h3><strong>LockFlags</strong></h3></td></tr></table><p></p><p>
 Lock circuit flags
     </p>
<A NAME="~SignallingCircuit"></A><A NAME="ref6"></A><table width="100%"><tr bgcolor="#eeeeee"><td> &nbsp;<strong>~SignallingCircuit</strong> ()
<br></td><td align="right"><h3><strong>~SignallingCircuit</strong></h3></td></tr></table><p> <small>[virtual]</small></p><p>
 Destructor. Clear event list
     </p>
<A NAME="status"></A><A NAME="ref7"></A><table width="100%"><tr bgcolor="#eeeeee"><td> bool &nbsp;<strong>status</strong> (Status newStat, bool sync = false)
<br></td><td align="right"><h3><strong>status</strong></h3></td></tr></table><p> <small>[virtual]</small></p><p>
 Initiate a status transition
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>newStat</i></TD><TD align="left" valign="top">Desired new status
</TD></TR>
<TR><TD align="left" valign="top"><i>sync</i></TD><TD align="left" valign="top">Synchronous status change requested
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if status change has been initiated
     </p>
<A NAME="type"></A><A NAME="ref8"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline Type &nbsp;<strong>type</strong> ()
<br></td><td align="right"><h3><strong>type</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
 Get the type of this circuit
</p>
<p><b>Returns</b>: Enumerated type of circuit
     </p>
<A NAME="status"></A><A NAME="ref9"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline Status &nbsp;<strong>status</strong> ()
<br></td><td align="right"><h3><strong>status</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
 Get the status of this circuit
</p>
<p><b>Returns</b>: Enumerated status of circuit
     </p>
<A NAME="locked"></A><A NAME="ref10"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline int &nbsp;<strong>locked</strong> (int flags = -1)
<br></td><td align="right"><h3><strong>locked</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
 Check if the given lock flags are set
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>flags</i></TD><TD align="left" valign="top">The lock flags to check. -1 to check all flags
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: The lock flags of this circuit masked by the given flags
     </p>
<A NAME="setLock"></A><A NAME="ref11"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline void &nbsp;<strong>setLock</strong> (int flags)
<br></td><td align="right"><h3><strong>setLock</strong></h3></td></tr></table><p></p><p>
 Set the given lock flags of this circuit
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>flags</i></TD><TD align="left" valign="top">The lock flags to set
     </TD></TR>
</TABLE></P>
<A NAME="resetLock"></A><A NAME="ref12"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline void &nbsp;<strong>resetLock</strong> (int flags)
<br></td><td align="right"><h3><strong>resetLock</strong></h3></td></tr></table><p></p><p>
 Reset the given lock flags of this circuit
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>flags</i></TD><TD align="left" valign="top">The lock flags to reset
     </TD></TR>
</TABLE></P>
<A NAME="updateFormat"></A><A NAME="ref13"></A><table width="100%"><tr bgcolor="#eeeeee"><td> bool &nbsp;<strong>updateFormat</strong> (const char* format, int direction)
<br></td><td align="right"><h3><strong>updateFormat</strong></h3></td></tr></table><p> <small>[virtual]</small></p><p>
 Set the format of the data transported through this circuit
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>format</i></TD><TD align="left" valign="top">The new data format
</TD></TR>
<TR><TD align="left" valign="top"><i>direction</i></TD><TD align="left" valign="top">The direction to be updated. -1 means to the lower layer, 1 from the lower layer, 0 both directions
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if the operation succeedded (format changed)
     </p>
<A NAME="setParam"></A><A NAME="ref14"></A><table width="100%"><tr bgcolor="#eeeeee"><td> bool &nbsp;<strong>setParam</strong> (const String& param, const String& value)
<br></td><td align="right"><h3><strong>setParam</strong></h3></td></tr></table><p> <small>[virtual]</small></p><p>
 Set circuit data or trigger some action
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>param</i></TD><TD align="left" valign="top">The data to update or the action to trigger
</TD></TR>
<TR><TD align="left" valign="top"><i>value</i></TD><TD align="left" valign="top">The data value or action parameter
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True on success
     </p>
<A NAME="setParams"></A><A NAME="ref15"></A><table width="100%"><tr bgcolor="#eeeeee"><td> bool &nbsp;<strong>setParams</strong> (const NamedList& params)
<br></td><td align="right"><h3><strong>setParams</strong></h3></td></tr></table><p> <small>[virtual]</small></p><p>
 Set circuit data from a list of parameters
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>params</i></TD><TD align="left" valign="top">Parameter list to set in the circuit
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if all parameters were succesfully set
     </p>
<A NAME="getParam"></A><A NAME="ref16"></A><table width="100%"><tr bgcolor="#eeeeee"><td> bool &nbsp;<strong>getParam</strong> (const String& param, String& value)
<br></td><td align="right"><h3><strong>getParam</strong></h3></td></tr></table><p> <small>[const virtual]</small></p><p>
 Get circuit parameter
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>param</i></TD><TD align="left" valign="top">The parameter to get
</TD></TR>
<TR><TD align="left" valign="top"><i>value</i></TD><TD align="left" valign="top">The value of the parameter
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True on success. False if the parameter doesn't exist
     </p>
<A NAME="getBoolParam"></A><A NAME="ref17"></A><table width="100%"><tr bgcolor="#eeeeee"><td> bool &nbsp;<strong>getBoolParam</strong> (const String& param, bool defValue = false)
<br></td><td align="right"><h3><strong>getBoolParam</strong></h3></td></tr></table><p> <small>[const virtual]</small></p><p>
 Get boolean circuit parameter
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>param</i></TD><TD align="left" valign="top">The parameter to get
</TD></TR>
<TR><TD align="left" valign="top"><i>defValue</i></TD><TD align="left" valign="top">The default returned value
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: Value from circuit, devValue if the parameter doesn't exist
     </p>
<A NAME="getIntParam"></A><A NAME="ref18"></A><table width="100%"><tr bgcolor="#eeeeee"><td> int &nbsp;<strong>getIntParam</strong> (const String& param, int defValue = 0)
<br></td><td align="right"><h3><strong>getIntParam</strong></h3></td></tr></table><p> <small>[const virtual]</small></p><p>
 Get integer circuit parameter
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>param</i></TD><TD align="left" valign="top">The parameter to get
</TD></TR>
<TR><TD align="left" valign="top"><i>defValue</i></TD><TD align="left" valign="top">The default returned value
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: Value from circuit, devValue if the parameter doesn't exist
     </p>
<A NAME="getParams"></A><A NAME="ref19"></A><table width="100%"><tr bgcolor="#eeeeee"><td> bool &nbsp;<strong>getParams</strong> (NamedList& params, const String& category = String::empty())
<br></td><td align="right"><h3><strong>getParams</strong></h3></td></tr></table><p> <small>[virtual]</small></p><p>
 Get circuit parameters
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>params</i></TD><TD align="left" valign="top">Parameter list to fill from the circuit
</TD></TR>
<TR><TD align="left" valign="top"><i>category</i></TD><TD align="left" valign="top">Optional category used to select desired parameters
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if handled
     </p>
<A NAME="group"></A><A NAME="ref20"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline SignallingCircuitGroup* &nbsp;<strong>group</strong> ()
<br></td><td align="right"><h3><strong>group</strong></h3></td></tr></table><p></p><p>
 Get the group of circuits this one belongs to
</p>
<p><b>Returns</b>: Pointer to circuit group
     </p>
<A NAME="span"></A><A NAME="ref21"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline SignallingCircuitSpan* &nbsp;<strong>span</strong> ()
<br></td><td align="right"><h3><strong>span</strong></h3></td></tr></table><p></p><p>
 Get the circuit span this one belongs to
</p>
<p><b>Returns</b>: Pointer to circuit span
     </p>
<A NAME="group"></A><A NAME="ref22"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline const SignallingCircuitGroup* &nbsp;<strong>group</strong> ()
<br></td><td align="right"><h3><strong>group</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
 Get the group of circuits this one belongs to - const version
</p>
<p><b>Returns</b>: Pointer to const circuit group
     </p>
<A NAME="span"></A><A NAME="ref23"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline const SignallingCircuitSpan* &nbsp;<strong>span</strong> ()
<br></td><td align="right"><h3><strong>span</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
 Get the circuit span this one belongs to - const version
</p>
<p><b>Returns</b>: Pointer to const circuit span
     </p>
<A NAME="code"></A><A NAME="ref24"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline unsigned int &nbsp;<strong>code</strong> ()
<br></td><td align="right"><h3><strong>code</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
 Get the group-local code of this circuit
</p>
<p><b>Returns</b>: Identification code within group
     </p>
<A NAME="available"></A><A NAME="ref25"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline bool &nbsp;<strong>available</strong> ()
<br></td><td align="right"><h3><strong>available</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
 Get the available status of the circuit
</p>
<p><b>Returns</b>: True if the circuit is available for use
     </p>
<A NAME="connected"></A><A NAME="ref26"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline bool &nbsp;<strong>connected</strong> ()
<br></td><td align="right"><h3><strong>connected</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
 Get the connected status of the circuit
</p>
<p><b>Returns</b>: True if the circuit is connected (in use)
     </p>
<A NAME="reserve"></A><A NAME="ref27"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline bool &nbsp;<strong>reserve</strong> ()
<br></td><td align="right"><h3><strong>reserve</strong></h3></td></tr></table><p></p><p>
 Reserve this circuit for later use
</p>
<p><b>Returns</b>: True if the circuit was changed from Idle to Reserved
     </p>
<A NAME="connect"></A><A NAME="ref28"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline bool &nbsp;<strong>connect</strong> (const char* format = 0)
<br></td><td align="right"><h3><strong>connect</strong></h3></td></tr></table><p></p><p>
 Connect this circuit
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>format</i></TD><TD align="left" valign="top">Optional data format to update for both directions
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if the circuit state was changed to Connected
     </p>
<A NAME="disconnect"></A><A NAME="ref29"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline bool &nbsp;<strong>disconnect</strong> ()
<br></td><td align="right"><h3><strong>disconnect</strong></h3></td></tr></table><p></p><p>
 Disconnect (set state to Reserved) this circuit if connected
</p>
<p><b>Returns</b>: True if the circuit was changed from Connected to Reserved
     </p>
<A NAME="disable"></A><A NAME="ref30"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline bool &nbsp;<strong>disable</strong> ()
<br></td><td align="right"><h3><strong>disable</strong></h3></td></tr></table><p></p><p>
 Disable this circuit for maintenance
</p>
<p><b>Returns</b>: True if the circuit was changed from Idle to Reserved
     </p>
<A NAME="hwLock"></A><A NAME="ref31"></A><table width="100%"><tr bgcolor="#eeeeee"><td>bool &nbsp;<strong>hwLock</strong> (bool set, bool remote, bool changed = false, bool setChanged = false)
<br></td><td align="right"><h3><strong>hwLock</strong></h3></td></tr></table><p></p><p>
 Set/reset HW failure lock flag
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>set</i></TD><TD align="left" valign="top">True to set, false to reset the flag
</TD></TR>
<TR><TD align="left" valign="top"><i>remote</i></TD><TD align="left" valign="top">True to use remote side of the circuit, false to use the local one
</TD></TR>
<TR><TD align="left" valign="top"><i>changed</i></TD><TD align="left" valign="top">Set/reset changed flag. If false the changed flag won't be affected
</TD></TR>
<TR><TD align="left" valign="top"><i>setChanged</i></TD><TD align="left" valign="top">The value of the changed flag. gnored if changed is false
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if the flag's state changed
     </p>
<A NAME="maintLock"></A><A NAME="ref32"></A><table width="100%"><tr bgcolor="#eeeeee"><td>bool &nbsp;<strong>maintLock</strong> (bool set, bool remote, bool changed = false, bool setChanged = false)
<br></td><td align="right"><h3><strong>maintLock</strong></h3></td></tr></table><p></p><p>
 Set/reset maintenance lock flag
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>set</i></TD><TD align="left" valign="top">True to set, false to reset the flag
</TD></TR>
<TR><TD align="left" valign="top"><i>remote</i></TD><TD align="left" valign="top">True to use remote side of the circuit, false to use the local one
</TD></TR>
<TR><TD align="left" valign="top"><i>changed</i></TD><TD align="left" valign="top">Set/reset changed flag. If false the changed flag won't be affected
</TD></TR>
<TR><TD align="left" valign="top"><i>setChanged</i></TD><TD align="left" valign="top">The value of the changed flag. gnored if changed is false
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if the flag's state changed
     </p>
<A NAME="addEvent"></A><A NAME="ref33"></A><table width="100%"><tr bgcolor="#eeeeee"><td>void &nbsp;<strong>addEvent</strong> (SignallingCircuitEvent* event)
<br></td><td align="right"><h3><strong>addEvent</strong></h3></td></tr></table><p></p><p>
 Add an event to the queue
 This method is thread safe
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>event</i></TD><TD align="left" valign="top">The event to enqueue
     </TD></TR>
</TABLE></P>
<A NAME="getEvent"></A><A NAME="ref34"></A><table width="100%"><tr bgcolor="#eeeeee"><td>SignallingCircuitEvent* &nbsp;<strong>getEvent</strong> (const Time& when)
<br></td><td align="right"><h3><strong>getEvent</strong></h3></td></tr></table><p></p><p>
 Get an event from queue
 This method is thread safe
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>when</i></TD><TD align="left" valign="top">The current time
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: SignallingCircuitEvent pointer or 0 if no events
     </p>
<A NAME="sendEvent"></A><A NAME="ref35"></A><table width="100%"><tr bgcolor="#eeeeee"><td> bool &nbsp;<strong>sendEvent</strong> (SignallingCircuitEvent::Type type, NamedList* params = 0)
<br></td><td align="right"><h3><strong>sendEvent</strong></h3></td></tr></table><p> <small>[virtual]</small></p><p>
 Send an event through this circuit
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>type</i></TD><TD align="left" valign="top">The type of the event to send
</TD></TR>
<TR><TD align="left" valign="top"><i>params</i></TD><TD align="left" valign="top">Optional event parameters
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True on success
     </p>
<A NAME="lookupType"></A><A NAME="ref36"></A><table width="100%"><tr bgcolor="#eeeeee"><td> const char* &nbsp;<strong>lookupType</strong> (int type)
<br></td><td align="right"><h3><strong>lookupType</strong></h3></td></tr></table><p> <small>[static]</small></p><p>
 Get the text associated with a circuit type
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>type</i></TD><TD align="left" valign="top">Circuit type used to retrive the text
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: Pointer to the string associated with the given circuit type
     </p>
<A NAME="lookupStatus"></A><A NAME="ref37"></A><table width="100%"><tr bgcolor="#eeeeee"><td> const char* &nbsp;<strong>lookupStatus</strong> (int status)
<br></td><td align="right"><h3><strong>lookupStatus</strong></h3></td></tr></table><p> <small>[static]</small></p><p>
 Get the text associated with a circuit status
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>status</i></TD><TD align="left" valign="top">Circuit status used to retrive the text
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: Pointer to the string associated with the given circuit status
     </p>
<A NAME="s_lockNames[]"></A><A NAME="ref38"></A><table width="100%"><tr bgcolor="#eeeeee"><td>static TokenDict  <strong>s_lockNames[]</strong>
</td><td align="right"><h3><strong>s_lockNames[]</strong></h3></td></tr></table><p></p><A NAME="SignallingCircuit"></A><A NAME="ref39"></A><table width="100%"><tr bgcolor="#eeeeee"><td>&nbsp;<strong>SignallingCircuit</strong> (Type type, unsigned int code, SignallingCircuitGroup* group = 0,
	SignallingCircuitSpan* span = 0)
<br></td><td align="right"><h3><strong>SignallingCircuit</strong></h3></td></tr></table><p> <small>[protected]</small></p><p>
 Constructor
     </p>
<A NAME="SignallingCircuit"></A><A NAME="ref40"></A><table width="100%"><tr bgcolor="#eeeeee"><td>&nbsp;<strong>SignallingCircuit</strong> (Type type, unsigned int code, Status status,
	SignallingCircuitGroup* group = 0, SignallingCircuitSpan* span = 0)
<br></td><td align="right"><h3><strong>SignallingCircuit</strong></h3></td></tr></table><p> <small>[protected]</small></p><p>
 Constructor
     </p>
<A NAME="clearEvents"></A><A NAME="ref41"></A><table width="100%"><tr bgcolor="#eeeeee"><td> void &nbsp;<strong>clearEvents</strong> ()
<br></td><td align="right"><h3><strong>clearEvents</strong></h3></td></tr></table><p> <small>[protected virtual]</small></p><p>
 Clear event queue
 This method is thread safe
     </p>
<A NAME="eventTerminated"></A><A NAME="ref42"></A><table width="100%"><tr bgcolor="#eeeeee"><td>void &nbsp;<strong>eventTerminated</strong> (SignallingCircuitEvent* event)
<br></td><td align="right"><h3><strong>eventTerminated</strong></h3></td></tr></table><p> <small>[protected]</small></p><p>
 Event termination notification
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>event</i></TD><TD align="left" valign="top">The terminated event
     </TD></TR>
</TABLE></P>
<A NAME="m_mutex"></A><A NAME="ref43"></A><table width="100%"><tr bgcolor="#eeeeee"><td>Mutex  <strong>m_mutex</strong>
</td><td align="right"><h3><strong>m_mutex</strong></h3></td></tr></table><p> <small>[protected]</small></p><HR>
	<table>
	<tr><td><small>Generated by: paulc on bussard on Mon Mar  8 12:18:15 2010, using kdoc 2.0a54.</small></td></tr>
	</table>
</BODY>
</HTML>