The WinCC OA API (Application Programming Interface) offers a number of functions adding special Managers to this process control system. A manager is a program that communicates with the system via a protocol defined by WinCC OA.

Note: Please consider the requirements for API development when creating custom components.

API Documentation

Documentation of the API functions can be found in your installation directory
<wincc_oa_path>/api/ docu

The documentation is only available if the API installation has been selected within the WinCC OA setup.

Classes, Include files

In order to facilitate work with the large number of C++ classes available in WinCC OA, all include files are named exactly the same as the class name with the extension ".hxx". A class called "ManagerIdentifier", for example, can be found in the file "ManagerIdentifier.hxx". I.e., for each class you use, you must include the appropriate include file using the #include directive.

Many classes can also be used without an explicit #include, for example because Manager.hxx already includes many other files.

Event and Data manager

The central manager in WinCC OA is the Event Manager that is the center of communications of the control system. As soon as a manager is loaded, it usually just exchanges messages with the Event Manager.

The second key manager is the Data Manager that takes care of all data management tasks. When the program is launched, every manager connects to the Data Manager to obtain initialization data. After successful initialization, the program connects to the Event Manager (except for the Event Manager itself, of course). The connections to the Data and Event Manager are maintained until the Manager is terminated.

The program can only connect to the Data and Event Manager if there is no other connection by a manager with the same manager identifier. Especially with API managers, make sure that all managers have the same manager type and only differ in terms of their manager number.


ALWAYS recompile custom managers built with a particular WinCC OA version when using a more recent version (also applies to branch versions!).


The managers communicate with each other using messages. WinCC OA defines a fixed set of messages used for communication.

The majority of API functions are used to generate and send messages. The managers receive messages using the doReceive() function that is applied to all ingoing messages.

FunctionVar Header File

The FunctionVar.hxx header file is available in WinCC OA. However, it must be taken into account that Qt headers are included with this file, which are not deployed with the WinCC OA API. Thus the installation of the Qt development files is essential.