Abstract:
An API is provided to an optical networking apparatus to facilitate uniform access, control or interaction with its multi-protocol optical networking modules (MPONM) by its applications. Each of the MPONM has a number of function blocks having corresponding drivers. In response to an application's request to initialize a MPONM, the module initialization function of the API cooperates with the function block drivers to create a data structure for the MPONM, and returns a handle of the data structure to the application. Thereafter, in response to a need to have an operation performed in a function block of a MPONM, such as a capture and/or insertion resource, the application makes the request with the API, including with the request an identification of the function block, and the handle of the data structure of the MPONM. Once a capture/insertion resource has been allocated, the API returns a handle corresponding to the allocated resource to the application for use in further requests.