Intel OA&M API for Linux Operating Sleep Apnea Machine User Manual


 
20 OA&M API for Linux Programming Guide — August 2005
Application Development Guidelines
ICTClockAgent::SetTDMBusConfiguration( )
4.2 Designing CT Bus Clocking Applications
If you are using any of ICTClockAgent class member functions (for example, to develop a
customized system clocking daemon) you must disable the clocking daemon that is included with
the Intel
®
Dialogic system software by editing the ClockDaemonMode parameter in the dlgsys.cfg
file. Refer to either of the following documents for more information about disabling the
ClockDaemonMode parameter via the dlgsys.cfg file:
Intel
®
DM3 Architecture Products on Linux Configuration Guide
Intel
®
Springware Architecture Products on Linux Configuration Guide
Intel
®
Dialogic
®
System Release on Linux Administration Guide
Intel
NetStructure
®
IPT Series on Linux Configuration Guide
4.3 Designing High Availability into Applications
This section provides instructions for using various Intel
®
Dialogic libraries to develop
applications that support peripheral hot swap. The board replacement could be driven by an
application (for example, if statistics are showing a degradation of service) or could be driven by an
operator (for example, periodic hardware maintenance).
The following procedure provides information on developing applications that support Basic Hot
Swap:
1. Register your application to receive events from the OA&M event notification framework
according to the procedure outlined in Chapter 2, “Event Handling”.
2. When a CP/SP fault, CT Bus clocking fault or network alarm event is transmitted via the event
notification framework, the event’s payload contains the AUID of the board that generated the
event.
3. Once the application has a board’s AUID, use the
SRLGetVirtualBoardsOnPhysicalBoard( ) and SRLGetSubDevicesOnVirtualBoard( )
functions to retrieve the list of virtual devices (“dxxx”, “dti” etc.) on a board. This allows the
application to cross-reference physical boards with virtual devices. For more information
about these functions, see the Standard Runtime Library API for Linux and Windows
Operating Systems Library Reference.
Note: As a general HA application rule, you should design your application to
accommodate the dynamic removal/insertion of virtual devices. Do not include
permanent references to virtual device names within your application; instead,
depend on the SRL device mapper functions to get virtual device names.
4. The Standard Runtime Library functions can be used to determine the virtual devices on the
board with the specified AUID, and the devices can be closed using dx_close( ), dt_close( ),
etc.
5. When all virtual devices on a board have been closed, you can call the
stopbrd utility to stop
the board.