xApp SDK design
xApp SDK is built to be simple but also flexible to facilitate the xApp development to meet the user's needs.
Thanks to SWIG, xApps can be developed in multiple languages, including C/C++ and Python. The core of the xApp development is a set of functions provided by the C SDK, which utilize the available service models. These functions set the baseline by managing the complete xApp lifecycle and signaling presenting on the previous page. They also create fertile ground for further development of xApp letting space for innovation and creativity.
Figure 1 presents the structure of the xApp SDK. As we can see, the core is the C SDK which includes the main signatures in C that enable the xApp development. On top of it, a C++ wrapper is designed to wrap these signatures, creating another layer of abstraction with a new set of signatures that are a bit simpler but almost the same since they utilize the C SDK internally. This way, support for the C++ language is enabled. Then we wrap everything with the SWIG library, allowing the xApp development in other languages, such as Python.