S2OPC OPCUA Toolkit
libs2opc_new_client.h
Go to the documentation of this file.
1 /*
2  * Licensed to Systerel under one or more contributor license
3  * agreements. See the NOTICE file distributed with this work
4  * for additional information regarding copyright ownership.
5  * Systerel licenses this file to you under the Apache
6  * License, Version 2.0 (the "License"); you may not use this
7  * file except in compliance with the License. You may obtain
8  * a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15  * KIND, either express or implied. See the License for the
16  * specific language governing permissions and limitations
17  * under the License.
18  */
19 
43 #ifndef LIBS2OPC_NEW_CLIENT_H_
44 #define LIBS2OPC_NEW_CLIENT_H_
45 
46 #include <stdbool.h>
47 #include <stdint.h>
48 
49 #include "sopc_types.h"
50 
51 #include "libs2opc_client_config.h"
52 
57 
58 typedef enum
59 {
74 
86  SOPC_StatusCode status);
87 
118  void* request,
119  uintptr_t userContext);
120 
162  void* request,
163  void** response);
179  SOPC_ClientConnectionEvent_Fct* connectEventCb,
180  SOPC_ClientConnection** secureConnection);
181 
191 
227  void* request,
228  uintptr_t userContext);
229 
280  void* request,
281  void** response);
282 
284 
308  SOPC_StatusCode status,
309  SOPC_EncodeableType* notificationType,
310  uint32_t nbNotifElts,
311  const void* notification,
312  uintptr_t* monitoredItemCtxArray);
313 
330  SOPC_ClientConnection* secureConnection,
333  uintptr_t userParam);
334 
345 
362  uint32_t nbPublishTokens);
363 
376  double* revisedPublishingInterval,
377  uint32_t* revisedLifetimeCount,
378  uint32_t* revisedMaxKeepAliveCount);
379 
389 
398 
419  const SOPC_ClientHelper_Subscription* subscription,
420  OpcUa_CreateMonitoredItemsRequest* monitoredItemsReq,
421  const uintptr_t* monitoredItemCtxArray,
422  OpcUa_CreateMonitoredItemsResponse* monitoredItemsResp);
423 
436  const SOPC_ClientHelper_Subscription* subscription,
437  OpcUa_DeleteMonitoredItemsRequest* delMonitoredItemsReq,
438  OpcUa_DeleteMonitoredItemsResponse* delMonitoredItemsResp);
439 
478  void* subOrMIrequest,
479  void** subOrMIresponse);
480 
513  void* subOrMIrequest,
514  uintptr_t userContext);
515 
516 #endif
libs2opc_client_config.h
High level interface to configure an OPC UA client.
SOPC_ClientHelper_Subscription
struct SOPC_ClientHelper_Subscription SOPC_ClientHelper_Subscription
Definition: libs2opc_new_client.h:283
_OpcUa_CreateSubscriptionRequest
Definition: sopc_types.h:5868
SOPC_ClientHelperNew_Disconnect
SOPC_ReturnStatus SOPC_ClientHelperNew_Disconnect(SOPC_ClientConnection **secureConnection)
Disconnects the connection established with SOPC_ClientHelperNew_Connect in a blocking way (synchrono...
sopc_types.h
SOPC_ClientHelperNew_Subscription_CreateMonitoredItems
SOPC_ReturnStatus SOPC_ClientHelperNew_Subscription_CreateMonitoredItems(const SOPC_ClientHelper_Subscription *subscription, OpcUa_CreateMonitoredItemsRequest *monitoredItemsReq, const uintptr_t *monitoredItemCtxArray, OpcUa_CreateMonitoredItemsResponse *monitoredItemsResp)
Creates new monitored items on the given subscription. A context array might be provided and context ...
SOPC_StatusCode
uint32_t SOPC_StatusCode
Definition: libs2opc_client.h:60
SOPC_ClientHelperNew_Subscription_AsyncService
SOPC_ReturnStatus SOPC_ClientHelperNew_Subscription_AsyncService(const SOPC_ClientHelper_Subscription *subscription, void *subOrMIrequest, uintptr_t userContext)
Executes an OPC UA service on server related to the given subscription asynchronously....
SOPC_ClientConnectionEvent_Disconnected
@ SOPC_ClientConnectionEvent_Disconnected
Definition: libs2opc_new_client.h:60
_OpcUa_DeleteMonitoredItemsRequest
Definition: sopc_types.h:5818
SOPC_ClientHelperNew_ServiceSync
SOPC_ReturnStatus SOPC_ClientHelperNew_ServiceSync(SOPC_ClientConnection *secureConnection, void *request, void **response)
Executes an OPC UA service on server (read, write, browse, discovery service, etc....
SOPC_ClientConnection
struct SOPC_ClientConnection SOPC_ClientConnection
Structure representing a secure connection to a server.
Definition: libs2opc_new_client.h:56
SOPC_ClientConnectionEvent_Reconnecting
@ SOPC_ClientConnectionEvent_Reconnecting
Definition: libs2opc_new_client.h:70
SOPC_ClientHelperNew_DeleteSubscription
SOPC_ReturnStatus SOPC_ClientHelperNew_DeleteSubscription(SOPC_ClientHelper_Subscription **subscription)
Deletes a subscription on the server.
SOPC_ClientHelperNew_Subscription_DeleteMonitoredItems
SOPC_ReturnStatus SOPC_ClientHelperNew_Subscription_DeleteMonitoredItems(const SOPC_ClientHelper_Subscription *subscription, OpcUa_DeleteMonitoredItemsRequest *delMonitoredItemsReq, OpcUa_DeleteMonitoredItemsResponse *delMonitoredItemsResp)
Deletes monitored items on the given subscription using the server monitored item ids....
SOPC_ClientHelperNew_Subscription_SyncService
SOPC_ReturnStatus SOPC_ClientHelperNew_Subscription_SyncService(const SOPC_ClientHelper_Subscription *subscription, void *subOrMIrequest, void **subOrMIresponse)
Executes an OPC UA service on server related to the given subscription synchronously.
SOPC_ClientSubscriptionNotification_Fct
void SOPC_ClientSubscriptionNotification_Fct(const SOPC_ClientHelper_Subscription *subscription, SOPC_StatusCode status, SOPC_EncodeableType *notificationType, uint32_t nbNotifElts, const void *notification, uintptr_t *monitoredItemCtxArray)
Type of callback called on Subscription Notification.
Definition: libs2opc_new_client.h:307
SOPC_ClientConnectionEvent_Fct
void SOPC_ClientConnectionEvent_Fct(SOPC_ClientConnection *config, SOPC_ClientConnectionEvent event, SOPC_StatusCode status)
Type of callback called on client connection event.
Definition: libs2opc_new_client.h:84
SOPC_ClientHelperNew_CreateSubscription
SOPC_ClientHelper_Subscription * SOPC_ClientHelperNew_CreateSubscription(SOPC_ClientConnection *secureConnection, OpcUa_CreateSubscriptionRequest *subParams, SOPC_ClientSubscriptionNotification_Fct *subNotifCb, uintptr_t userParam)
Creates a subscription on the server.
SOPC_ClientHelperNew_GetSecureConnection
SOPC_ClientConnection * SOPC_ClientHelperNew_GetSecureConnection(const SOPC_ClientHelper_Subscription *subscription)
Gets the secure connection on which the subscription rely on.
_OpcUa_DeleteMonitoredItemsResponse
Definition: sopc_types.h:5841
SOPC_ClientHelperNew_DiscoveryServiceSync
SOPC_ReturnStatus SOPC_ClientHelperNew_DiscoveryServiceSync(SOPC_SecureConnection_Config *secConnConfig, void *request, void **response)
Send a discovery request without user session creation and activation and retrieve response synchrono...
SOPC_ClientHelperNew_Subscription_SetAvailableTokens
SOPC_ReturnStatus SOPC_ClientHelperNew_Subscription_SetAvailableTokens(SOPC_ClientHelper_Subscription *subscription, uint32_t nbPublishTokens)
Sets the number of publish tokens to be used for the subscription. This number shall be greater than ...
SOPC_ClientConnectionEvent
SOPC_ClientConnectionEvent
Definition: libs2opc_new_client.h:59
SOPC_ClientHelperNew_Subscription_GetRevisedParameters
SOPC_ReturnStatus SOPC_ClientHelperNew_Subscription_GetRevisedParameters(SOPC_ClientHelper_Subscription *subscription, double *revisedPublishingInterval, uint32_t *revisedLifetimeCount, uint32_t *revisedMaxKeepAliveCount)
Gets the created subscription parameters values revised by the server.
_OpcUa_CreateMonitoredItemsRequest
Definition: sopc_types.h:5562
SOPC_ClientHelperNew_DiscoveryServiceAsync
SOPC_ReturnStatus SOPC_ClientHelperNew_DiscoveryServiceAsync(SOPC_SecureConnection_Config *secConnConfig, void *request, uintptr_t userContext)
Send a discovery request without user session creation and activation and retrieve response asynchron...
_OpcUa_CreateMonitoredItemsResponse
Definition: sopc_types.h:5586
SOPC_SecureConnection_Config
Structure representing a secure connection configuration (secure channel + session) which allow to es...
Definition: sopc_user_app_itf.h:221
SOPC_ClientHelperNew_Subscription_GetUserParam
uintptr_t SOPC_ClientHelperNew_Subscription_GetUserParam(const SOPC_ClientHelper_Subscription *subscription)
Returns the user parameter defined in SOPC_ClientHelperNew_CreateSubscription.
SOPC_ClientHelperNew_ServiceAsync
SOPC_ReturnStatus SOPC_ClientHelperNew_ServiceAsync(SOPC_ClientConnection *secureConnection, void *request, uintptr_t userContext)
Executes an OPC UA service on server (read, write, browse, discovery service, etc....
SOPC_ClientConnectionEvent_Connected
@ SOPC_ClientConnectionEvent_Connected
Definition: libs2opc_new_client.h:66
SOPC_EncodeableType_Struct
Encodeable object type structure definition. It provides all the services functions associated with t...
Definition: sopc_encodeabletype.h:161
SOPC_ClientHelperNew_Connect
SOPC_ReturnStatus SOPC_ClientHelperNew_Connect(SOPC_SecureConnection_Config *secConnConfig, SOPC_ClientConnectionEvent_Fct *connectEventCb, SOPC_ClientConnection **secureConnection)
Establishes the connection in a blocking way (synchronously).
SOPC_ReturnStatus
SOPC_ReturnStatus
Definition: libs2opc_client.h:64