Using SwitchKit API

 

SwitchKit application developers require the SwitchKit API to allow their application to connect to the LLC. Sample applications are provided for guidance and review. Additionally, UNIX makefiles and Microsoft Visual Studio project workspaces are included in the installation. These examples provide information on necessary libraries that are required for all SwitchKit applications.

 

For the UNIX operating environments, SwitchKit API is available in two sets of libraries: standard SK API and threadsafe SK API. Both APIs offer the same basic functionality to the application developer, with one major difference. The standard SK API allows single- threaded applications to be developed to connect to the LLC. The threadsafe SK API allows multi-threaded applications to be developed to connect to LLC. For maximum flexibility in application functionality today and in the future, it is recommended that all new development occur on the threadsafe SK API.

All SK API libraries are found in the SK_LIB_DIR\lib directory. See Development Libraries.

Important! The threadsafe libraries are not available in the Windows development environment.

Solaris

If you are using the Solaris operating systems, you have the option of using the Forte compiler available through Sun Microsystems, or GNU gcc version 3.1. You also have the option of using the standard version of SK API or the threadsafe version of the SK API. SwitchKit API is available to support these situations.

Linux

If you are using Red Hat Linux operating systems, you have the option of using the threadsafe library or not. SwitchKit API is available to support both.

HP-UX

If you are using the HP-UX operating system, you have the option of using the threadsafe library or not. SwitchKit API is available to support both. If you want to use the standard libraries, use libskapAAi.sl and libskcapiAA.sl for your development. If you want to use the threadsafe libraries, use libskapiAA_ts.sl, libskcapiAA.sl, and libAce.so.5.3.3 for your development.

Development Libraries

The next table shows which libraries are required for development on each UNIX platform supported. Be certain to include all libraries in your makefile for proper SwitchKit application development.

Operating System

Libraries

Solaris

 

Non Threadsafe Development
libskapi.a
libskcapi.a
libskapiGCC.a
libskcapiGCC.a

Threadsafe Development
libskapi_ts.a
libskcapi_ts.a
l
ibskapiGCC_ts.a
l
ibskcapiGCC_ts.a
lib/libACE.so.5.3.3
libACE.so (soft link to libACE.so.5.3.3)

Linux

 

Non Threadsafe Development
libskapi.a
libskcapi.a

Threadsafe Development
libskapi_ts.a
libskcapi_ts.a
lib/libACE.so.5.3.3
libACE.so (soft link to libACE.so.5.3.3)

HP-UX

 

Non Threadsafe Development
libskapiAA.sl
libskapi.sl (soft link to libskapiAA.sl)
libskcapiAA.sl
libskcapi.sl (soft link to libskcapiAA.sl)
*libskcommonAA.sl
*libskcommon.sl (soft link to libskcommonAA.sl)
*libstateAA.sl (required for LLC functionality)
*
libstate.sl (soft link to libstateAA.sl)


Threadsafe Development
libskapiAA_ts.sl
libskcapiAA_ts.
a
*libskcommonAA.sl
*libskcommon.sl (soft link to libskcommonAA.sl)
libACE.sl

*LLC and SwitchManager require libskcommonAA.sl, libskcommon.sl, libstateAA.sl and libstate.sl to remain in SK_LIB_DIR/lib. Removing these libraries will result in LLC and SwitchManager failures.

Microsoft Windows NT and Windows XP

If you are using a Windows NT or WIndows XP operating system to develop your application, the following files must be included in your workspace.

Source Files

BaseClasses.cpp
Cmessages.api.cpp

Development Library

SKApi.lib

Run-time Library

SKApi.dll