Provide a new Client Wrapper API and reduce the number of client/server libraries
The objective is to add in S2OPC a client API at the same level as the server API.
The functionalities include:
- Add a XML configuration
- use internal types in API not to reduce the capacity by the user to extend the functionalities
- Subscription creation on demand and not on connect
- MonitoredItems management: provide custom user context and avoid user to manage internal ClientHandle
API:
- Initialize
- Clear
- Async service CB configuration
- Password (client key, user key, user/pwd) CBs configuration
- Get XML configuration
- Custom configuration API (without XML)
- Synchronous and Asynchronous services
- Subscription dedicated API
The number of libraries will be limited, the client/server library will now always include the common/client/server wrapper layers.
Several layers will disappear after a refactoring including the libsub (used by Python wrapper) in version 1.6.0, it is defined deprecated in 1.5.0.
Several enhancements identified to be treated later in #1201
Edited by Vincent Monfort