open62541 1.3.14
Open source implementation of OPC UA
Loading...
Searching...
No Matches
client_highlevel_async.h
Go to the documentation of this file.
1/** This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
4 *
5 * Copyright 2018 (c) Thomas Stalder, Blue Time Concept SA
6 * Copyright 2018 (c) Fraunhofer IOSB (Author: Julius Pfrommer)
7 */
8
9#ifndef UA_CLIENT_HIGHLEVEL_ASYNC_H_
10#define UA_CLIENT_HIGHLEVEL_ASYNC_H_
11
12#include <open62541/client.h>
13
15
16
17
18typedef void (*UA_ClientAsyncReadCallback)(UA_Client *client, void *userdata,
19 UA_UInt32 requestId, UA_ReadResponse *rr);
20static UA_StatusCode
21UA_Client_sendAsyncReadRequest(UA_Client *client, UA_ReadRequest *request,
22 UA_ClientAsyncReadCallback readCallback, void *userdata,
23 UA_UInt32 *reqId) {
26 &UA_TYPES[UA_TYPES_READRESPONSE], userdata, reqId);
27}
28
29typedef void (*UA_ClientAsyncWriteCallback)(UA_Client *client, void *userdata,
30 UA_UInt32 requestId, UA_WriteResponse *wr);
31static UA_StatusCode
32UA_Client_sendAsyncWriteRequest(UA_Client *client, UA_WriteRequest *request,
33 UA_ClientAsyncWriteCallback writeCallback, void *userdata,
34 UA_UInt32 *reqId) {
36 (UA_ClientAsyncServiceCallback)writeCallback,
37 &UA_TYPES[UA_TYPES_WRITERESPONSE], userdata, reqId);
38}
39
40typedef void (*UA_ClientAsyncBrowseCallback)(UA_Client *client, void *userdata,
41 UA_UInt32 requestId, UA_BrowseResponse *wr);
42static UA_StatusCode
43UA_Client_sendAsyncBrowseRequest(UA_Client *client, UA_BrowseRequest *request,
44 UA_ClientAsyncBrowseCallback browseCallback,
45 void *userdata, UA_UInt32 *reqId) {
47 (UA_ClientAsyncServiceCallback)browseCallback,
49 reqId);
50}
51
52
53typedef void
54(*UA_ClientAsyncOperationCallback)(UA_Client *client, void *userdata,
56 void *result);
57
58
59
60/** Reading a single attribute */
61typedef void
62(*UA_ClientAsyncReadAttributeCallback)(UA_Client *client, void *userdata,
64 UA_DataValue *attribute);
67 UA_TimestampsToReturn timestampsToReturn,
69 void *userdata, UA_UInt32 *requestId);
70
71/** Read a single Value attribute */
72typedef void
75 UA_DataValue *value);
79 void *userdata, UA_UInt32 *requestId);
80
81/** Read a single DataType attribute */
82typedef void
85 UA_NodeId *dataType);
89 void *userdata, UA_UInt32 *requestId);
90
91/** Read a single ArrayDimensions attribute. If the status is good, the variant
92 * carries an UInt32 array. */
93typedef void
96 UA_Variant *arrayDimensions);
100 void *userdata, UA_UInt32 *requestId);
101
102/** Read a single NodeClass attribute */
103typedef void
105 UA_UInt32 requestId, UA_StatusCode status,
106 UA_NodeClass *nodeClass);
110 void *userdata, UA_UInt32 *requestId);
111
112/** Read a single BrowseName attribute */
113typedef void
115 UA_UInt32 requestId, UA_StatusCode status,
116 UA_QualifiedName *browseName);
120 void *userdata, UA_UInt32 *requestId);
121
122/** Read a single DisplayName attribute */
123typedef void
125 UA_UInt32 requestId, UA_StatusCode status,
126 UA_LocalizedText *displayName);
130 void *userdata, UA_UInt32 *requestId);
131
132/** Read a single Description attribute */
133typedef void
135 UA_UInt32 requestId, UA_StatusCode status,
136 UA_LocalizedText *description);
140 void *userdata, UA_UInt32 *requestId);
141
142/** Read a single WriteMask attribute */
143typedef void
145 UA_UInt32 requestId, UA_StatusCode status,
146 UA_UInt32 *writeMask);
150 void *userdata, UA_UInt32 *requestId);
151
152/** Read a single UserWriteMask attribute */
153typedef void
155 UA_UInt32 requestId, UA_StatusCode status,
156 UA_UInt32 *writeMask);
160 void *userdata, UA_UInt32 *requestId);
161
162/** Read a single IsAbstract attribute */
163typedef void
165 UA_UInt32 requestId, UA_StatusCode status,
166 UA_Boolean *isAbstract);
170 void *userdata, UA_UInt32 *requestId);
171
172/** Read a single Symmetric attribute */
173typedef void
175 UA_UInt32 requestId, UA_StatusCode status,
176 UA_Boolean *symmetric);
180 void *userdata, UA_UInt32 *requestId);
181
182/** Read a single InverseName attribute */
183typedef void
185 UA_UInt32 requestId, UA_StatusCode status,
186 UA_LocalizedText *inverseName);
190 void *userdata, UA_UInt32 *requestId);
191
192/** Read a single ContainsNoLoops attribute */
193typedef void
195 UA_UInt32 requestId, UA_StatusCode status,
196 UA_Boolean *containsNoLoops);
200 void *userdata, UA_UInt32 *requestId);
201
202/** Read a single EventNotifier attribute */
203typedef void
205 UA_UInt32 requestId, UA_StatusCode status,
206 UA_Byte *eventNotifier);
210 void *userdata, UA_UInt32 *requestId);
211
212/** Read a single ValueRank attribute */
213typedef void
215 UA_UInt32 requestId, UA_StatusCode status,
216 UA_Int32 *valueRank);
220 void *userdata, UA_UInt32 *requestId);
221
222/** Read a single AccessLevel attribute */
223typedef void
225 UA_UInt32 requestId, UA_StatusCode status,
226 UA_Byte *accessLevel);
230 void *userdata, UA_UInt32 *requestId);
231
232/** Read a single UserAccessLevel attribute */
233typedef void
235 UA_UInt32 requestId, UA_StatusCode status,
236 UA_Byte *userAccessLevel);
240 void *userdata, UA_UInt32 *requestId);
241
242/** Read a single MinimumSamplingInterval attribute */
243typedef void
245 UA_UInt32 requestId, UA_StatusCode status,
246 UA_Double *minimumSamplingInterval);
250 void *userdata, UA_UInt32 *requestId);
251
252/** Read a single Historizing attribute */
253typedef void
255 UA_UInt32 requestId, UA_StatusCode status,
256 UA_Boolean *historizing);
260 void *userdata, UA_UInt32 *requestId);
261
262/** Read a single Executable attribute */
263typedef void
265 UA_UInt32 requestId, UA_StatusCode status,
266 UA_Boolean *executable);
270 void *userdata, UA_UInt32 *requestId);
271
272/** Read a single UserExecutable attribute */
273typedef void
275 UA_UInt32 requestId, UA_StatusCode status,
276 UA_Boolean *userExecutable);
280 void *userdata, UA_UInt32 *requestId);
281
282
283
286 UA_AttributeId attributeId, const void *in,
287 const UA_DataType *inDataType,
288 UA_ClientAsyncServiceCallback callback, void *userdata,
289 UA_UInt32 *reqId);
290
291static UA_StatusCode
292UA_Client_writeValueAttribute_async(UA_Client *client, const UA_NodeId nodeId,
293 const UA_Variant *newValue,
294 UA_ClientAsyncWriteCallback callback, void *userdata,
295 UA_UInt32 *reqId) {
296
298 client, &nodeId, UA_ATTRIBUTEID_VALUE, newValue, &UA_TYPES[UA_TYPES_VARIANT],
299 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
300}
301
302static UA_StatusCode
303UA_Client_writeNodeIdAttribute_async(UA_Client *client, const UA_NodeId nodeId,
304 const UA_NodeId *outNodeId,
306 void *userdata, UA_UInt32 *reqId) {
308 outNodeId, &UA_TYPES[UA_TYPES_NODEID],
309 callback, userdata, reqId);
310}
311static UA_StatusCode
312UA_Client_writeNodeClassAttribute_async(UA_Client *client, const UA_NodeId nodeId,
313 const UA_NodeClass *outNodeClass,
315 void *userdata, UA_UInt32 *reqId) {
317 outNodeClass, &UA_TYPES[UA_TYPES_NODECLASS],
318 callback, userdata, reqId);
319}
320static UA_StatusCode
321UA_Client_writeBrowseNameAttribute_async(UA_Client *client, const UA_NodeId nodeId,
322 const UA_QualifiedName *outBrowseName,
324 void *userdata, UA_UInt32 *reqId) {
326 client, &nodeId, UA_ATTRIBUTEID_BROWSENAME, outBrowseName,
327 &UA_TYPES[UA_TYPES_QUALIFIEDNAME], callback, userdata, reqId);
328}
329static UA_StatusCode
330UA_Client_writeDisplayNameAttribute_async(UA_Client *client, const UA_NodeId nodeId,
331 const UA_LocalizedText *outDisplayName,
333 void *userdata, UA_UInt32 *reqId) {
335 client, &nodeId, UA_ATTRIBUTEID_DISPLAYNAME, outDisplayName,
336 &UA_TYPES[UA_TYPES_LOCALIZEDTEXT], callback, userdata, reqId);
337}
338static UA_StatusCode
339UA_Client_writeDescriptionAttribute_async(UA_Client *client, const UA_NodeId nodeId,
340 const UA_LocalizedText *outDescription,
342 void *userdata, UA_UInt32 *reqId) {
344 client, &nodeId, UA_ATTRIBUTEID_DESCRIPTION, outDescription,
345 &UA_TYPES[UA_TYPES_LOCALIZEDTEXT], callback, userdata, reqId);
346}
347static UA_StatusCode
348UA_Client_writeWriteMaskAttribute_async(UA_Client *client, const UA_NodeId nodeId,
349 const UA_UInt32 *outWriteMask,
351 void *userdata, UA_UInt32 *reqId) {
353 outWriteMask, &UA_TYPES[UA_TYPES_UINT32],
354 callback, userdata, reqId);
355}
356static UA_StatusCode
357UA_Client_writeUserWriteMaskAttribute_async(UA_Client *client, const UA_NodeId nodeId,
358 const UA_UInt32 *outUserWriteMask,
360 void *userdata, UA_UInt32 *reqId) {
362 outUserWriteMask, &UA_TYPES[UA_TYPES_UINT32],
363 callback, userdata, reqId);
364}
365static UA_StatusCode
366UA_Client_writeIsAbstractAttribute_async(UA_Client *client, const UA_NodeId nodeId,
367 const UA_Boolean *outIsAbstract,
369 void *userdata, UA_UInt32 *reqId) {
371 outIsAbstract, &UA_TYPES[UA_TYPES_BOOLEAN],
372 callback, userdata, reqId);
373}
374static UA_StatusCode
375UA_Client_writeSymmetricAttribute_async(UA_Client *client, const UA_NodeId nodeId,
376 const UA_Boolean *outSymmetric,
378 void *userdata, UA_UInt32 *reqId) {
380 outSymmetric, &UA_TYPES[UA_TYPES_BOOLEAN],
381 callback, userdata, reqId);
382}
383static UA_StatusCode
384UA_Client_writeInverseNameAttribute_async(UA_Client *client, const UA_NodeId nodeId,
385 const UA_LocalizedText *outInverseName,
387 void *userdata, UA_UInt32 *reqId) {
389 client, &nodeId, UA_ATTRIBUTEID_INVERSENAME, outInverseName,
390 &UA_TYPES[UA_TYPES_LOCALIZEDTEXT], callback, userdata, reqId);
391}
392static UA_StatusCode
393UA_Client_writeContainsNoLoopsAttribute_async(UA_Client *client, const UA_NodeId nodeId,
394 const UA_Boolean *outContainsNoLoops,
396 void *userdata, UA_UInt32 *reqId) {
398 client, &nodeId, UA_ATTRIBUTEID_CONTAINSNOLOOPS, outContainsNoLoops,
399 &UA_TYPES[UA_TYPES_BOOLEAN], callback, userdata, reqId);
400}
401static UA_StatusCode
402UA_Client_writeEventNotifierAttribute_async(UA_Client *client, const UA_NodeId nodeId,
403 const UA_Byte *outEventNotifier,
405 void *userdata, UA_UInt32 *reqId) {
407 outEventNotifier, &UA_TYPES[UA_TYPES_BYTE],
408 callback, userdata, reqId);
409}
410static UA_StatusCode
411UA_Client_writeDataTypeAttribute_async(UA_Client *client, const UA_NodeId nodeId,
412 const UA_NodeId *outDataType,
414 void *userdata, UA_UInt32 *reqId) {
416 outDataType, &UA_TYPES[UA_TYPES_NODEID],
417 callback, userdata, reqId);
418}
419static UA_StatusCode
420UA_Client_writeValueRankAttribute_async(UA_Client *client, const UA_NodeId nodeId,
421 const UA_Int32 *outValueRank,
423 void *userdata, UA_UInt32 *reqId) {
425 outValueRank, &UA_TYPES[UA_TYPES_INT32],
426 callback, userdata, reqId);
427}
428static UA_StatusCode
429UA_Client_writeAccessLevelAttribute_async(UA_Client *client, const UA_NodeId nodeId,
430 const UA_Byte *outAccessLevel,
432 void *userdata, UA_UInt32 *reqId) {
434 outAccessLevel, &UA_TYPES[UA_TYPES_BYTE],
435 callback, userdata, reqId);
436}
437static UA_StatusCode
438UA_Client_writeUserAccessLevelAttribute_async(UA_Client *client, const UA_NodeId nodeId,
439 const UA_Byte *outUserAccessLevel,
441 void *userdata, UA_UInt32 *reqId) {
443 client, &nodeId, UA_ATTRIBUTEID_USERACCESSLEVEL, outUserAccessLevel,
444 &UA_TYPES[UA_TYPES_BYTE], callback, userdata, reqId);
445}
446static UA_StatusCode
447UA_Client_writeMinimumSamplingIntervalAttribute_async(
448 UA_Client *client, const UA_NodeId nodeId,
449 const UA_Double *outMinimumSamplingInterval, UA_ClientAsyncServiceCallback callback,
450 void *userdata, UA_UInt32 *reqId) {
453 outMinimumSamplingInterval, &UA_TYPES[UA_TYPES_DOUBLE], callback, userdata,
454 reqId);
455}
456static UA_StatusCode
457UA_Client_writeHistorizingAttribute_async(UA_Client *client, const UA_NodeId nodeId,
458 const UA_Boolean *outHistorizing,
460 void *userdata, UA_UInt32 *reqId) {
462 outHistorizing, &UA_TYPES[UA_TYPES_BOOLEAN],
463 callback, userdata, reqId);
464}
465static UA_StatusCode
466UA_Client_writeExecutableAttribute_async(UA_Client *client, const UA_NodeId nodeId,
467 const UA_Boolean *outExecutable,
469 void *userdata, UA_UInt32 *reqId) {
471 outExecutable, &UA_TYPES[UA_TYPES_BOOLEAN],
472 callback, userdata, reqId);
473}
474static UA_StatusCode
475UA_Client_writeUserExecutableAttribute_async(UA_Client *client, const UA_NodeId nodeId,
476 const UA_Boolean *outUserExecutable,
478 void *userdata, UA_UInt32 *reqId) {
480 client, &nodeId, UA_ATTRIBUTEID_USEREXECUTABLE, outUserExecutable,
481 &UA_TYPES[UA_TYPES_BOOLEAN], callback, userdata, reqId);
482}
483
484
485#ifdef UA_ENABLE_METHODCALLS
488 const UA_NodeId methodId, size_t inputSize,
489 const UA_Variant *input, UA_ClientAsyncServiceCallback callback,
490 void *userdata, UA_UInt32 *reqId);
491
492typedef void (*UA_ClientAsyncCallCallback)(UA_Client *client, void *userdata,
493 UA_UInt32 requestId, UA_CallResponse *cr);
494
495static UA_StatusCode
496UA_Client_call_async(UA_Client *client, const UA_NodeId objectId,
497 const UA_NodeId methodId, size_t inputSize, const UA_Variant *input,
498 UA_ClientAsyncCallCallback callback, void *userdata,
499 UA_UInt32 *reqId) {
500 return __UA_Client_call_async(client, objectId, methodId, inputSize, input,
501 (UA_ClientAsyncServiceCallback)callback, userdata,
502 reqId);
503}
504#endif
505
506
507typedef void (*UA_ClientAsyncAddNodesCallback)(UA_Client *client, void *userdata,
508 UA_UInt32 requestId,
510
513 const UA_NodeId requestedNewNodeId,
514 const UA_NodeId parentNodeId, const UA_NodeId referenceTypeId,
515 const UA_QualifiedName browseName,
516 const UA_NodeId typeDefinition, const UA_NodeAttributes *attr,
517 const UA_DataType *attributeType, UA_NodeId *outNewNodeId,
518 UA_ClientAsyncServiceCallback callback, void *userdata,
519 UA_UInt32 *reqId);
520
521static UA_StatusCode
522UA_Client_addVariableNode_async(UA_Client *client, const UA_NodeId requestedNewNodeId,
523 const UA_NodeId parentNodeId,
524 const UA_NodeId referenceTypeId,
525 const UA_QualifiedName browseName,
526 const UA_NodeId typeDefinition,
527 const UA_VariableAttributes attr, UA_NodeId *outNewNodeId,
528 UA_ClientAsyncAddNodesCallback callback, void *userdata,
529 UA_UInt32 *reqId) {
531 client, UA_NODECLASS_VARIABLE, requestedNewNodeId, parentNodeId, referenceTypeId,
532 browseName, typeDefinition, (const UA_NodeAttributes *)&attr,
534 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
535}
536
537static UA_StatusCode
538UA_Client_addVariableTypeNode_async(
539 UA_Client *client, const UA_NodeId requestedNewNodeId, const UA_NodeId parentNodeId,
540 const UA_NodeId referenceTypeId, const UA_QualifiedName browseName,
541 const UA_VariableTypeAttributes attr, UA_NodeId *outNewNodeId,
542 UA_ClientAsyncAddNodesCallback callback, void *userdata, UA_UInt32 *reqId) {
544 client, UA_NODECLASS_VARIABLETYPE, requestedNewNodeId, parentNodeId,
545 referenceTypeId, browseName, UA_NODEID_NULL, (const UA_NodeAttributes *)&attr,
547 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
548}
549
550static UA_StatusCode
551UA_Client_addObjectNode_async(UA_Client *client, const UA_NodeId requestedNewNodeId,
552 const UA_NodeId parentNodeId,
553 const UA_NodeId referenceTypeId,
554 const UA_QualifiedName browseName,
555 const UA_NodeId typeDefinition,
556 const UA_ObjectAttributes attr, UA_NodeId *outNewNodeId,
557 UA_ClientAsyncAddNodesCallback callback, void *userdata,
558 UA_UInt32 *reqId) {
560 client, UA_NODECLASS_OBJECT, requestedNewNodeId, parentNodeId, referenceTypeId,
561 browseName, typeDefinition, (const UA_NodeAttributes *)&attr,
562 &UA_TYPES[UA_TYPES_OBJECTATTRIBUTES], outNewNodeId,
563 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
564}
565
566static UA_StatusCode
567UA_Client_addObjectTypeNode_async(
568 UA_Client *client, const UA_NodeId requestedNewNodeId, const UA_NodeId parentNodeId,
569 const UA_NodeId referenceTypeId, const UA_QualifiedName browseName,
570 const UA_ObjectTypeAttributes attr, UA_NodeId *outNewNodeId,
571 UA_ClientAsyncAddNodesCallback callback, void *userdata, UA_UInt32 *reqId) {
573 client, UA_NODECLASS_OBJECTTYPE, requestedNewNodeId, parentNodeId,
574 referenceTypeId, browseName, UA_NODEID_NULL, (const UA_NodeAttributes *)&attr,
576 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
577}
578
579static UA_StatusCode
580UA_Client_addViewNode_async(UA_Client *client, const UA_NodeId requestedNewNodeId,
581 const UA_NodeId parentNodeId, const UA_NodeId referenceTypeId,
582 const UA_QualifiedName browseName,
583 const UA_ViewAttributes attr, UA_NodeId *outNewNodeId,
584 UA_ClientAsyncAddNodesCallback callback, void *userdata,
585 UA_UInt32 *reqId) {
587 client, UA_NODECLASS_VIEW, requestedNewNodeId, parentNodeId, referenceTypeId,
588 browseName, UA_NODEID_NULL, (const UA_NodeAttributes *)&attr,
589 &UA_TYPES[UA_TYPES_VIEWATTRIBUTES], outNewNodeId,
590 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
591}
592
593static UA_StatusCode
594UA_Client_addReferenceTypeNode_async(
595 UA_Client *client, const UA_NodeId requestedNewNodeId, const UA_NodeId parentNodeId,
596 const UA_NodeId referenceTypeId, const UA_QualifiedName browseName,
597 const UA_ReferenceTypeAttributes attr, UA_NodeId *outNewNodeId,
598 UA_ClientAsyncAddNodesCallback callback, void *userdata, UA_UInt32 *reqId) {
600 client, UA_NODECLASS_REFERENCETYPE, requestedNewNodeId, parentNodeId,
601 referenceTypeId, browseName, UA_NODEID_NULL, (const UA_NodeAttributes *)&attr,
603 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
604}
605
606static UA_StatusCode
607UA_Client_addDataTypeNode_async(UA_Client *client, const UA_NodeId requestedNewNodeId,
608 const UA_NodeId parentNodeId,
609 const UA_NodeId referenceTypeId,
610 const UA_QualifiedName browseName,
611 const UA_DataTypeAttributes attr, UA_NodeId *outNewNodeId,
612 UA_ClientAsyncAddNodesCallback callback, void *userdata,
613 UA_UInt32 *reqId) {
615 client, UA_NODECLASS_DATATYPE, requestedNewNodeId, parentNodeId, referenceTypeId,
616 browseName, UA_NODEID_NULL, (const UA_NodeAttributes *)&attr,
618 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
619}
620
621static UA_StatusCode
622UA_Client_addMethodNode_async(UA_Client *client, const UA_NodeId requestedNewNodeId,
623 const UA_NodeId parentNodeId,
624 const UA_NodeId referenceTypeId,
625 const UA_QualifiedName browseName,
626 const UA_MethodAttributes attr, UA_NodeId *outNewNodeId,
627 UA_ClientAsyncAddNodesCallback callback, void *userdata,
628 UA_UInt32 *reqId) {
630 client, UA_NODECLASS_METHOD, requestedNewNodeId, parentNodeId, referenceTypeId,
631 browseName, UA_NODEID_NULL, (const UA_NodeAttributes *)&attr,
632 &UA_TYPES[UA_TYPES_METHODATTRIBUTES], outNewNodeId,
633 (UA_ClientAsyncServiceCallback)callback, userdata, reqId);
634}
635
636
637
638/** typedef void (*UA_ClientAsyncTranslateCallback)( */
639/** UA_Client *client, void *userdata, UA_UInt32 requestId, */
640/** UA_TranslateBrowsePathsToNodeIdsResponse *tr); */
641
642/** UA_DEPRECATED UA_StatusCode */
643/** UA_Cient_translateBrowsePathsToNodeIds_async(UA_Client *client, char **paths, */
644/** UA_UInt32 *ids, size_t pathSize, */
645/** UA_ClientAsyncTranslateCallback callback, */
646/** void *userdata, UA_UInt32 *reqId); */
647
649
650#endif /* UA_CLIENT_HIGHLEVEL_ASYNC_H_ */
void(* UA_ClientAsyncServiceCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, void *response)
Use the type versions of this method.
Definition client.h:486
UA_StatusCode UA_Client_sendAsyncRequest(UA_Client *client, const void *request, const UA_DataType *requestType, UA_ClientAsyncServiceCallback callback, const UA_DataType *responseType, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadNodeClassAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_NodeClass *nodeClass)
Read a single NodeClass attribute.
UA_StatusCode UA_Client_readWriteMaskAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadWriteMaskAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode UA_Client_readUserExecutableAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadUserExecutableAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode UA_Client_readNodeClassAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadNodeClassAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadUserExecutableAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Boolean *userExecutable)
Read a single UserExecutable attribute.
UA_StatusCode UA_Client_readSymmetricAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadSymmetricAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadInverseNameAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_LocalizedText *inverseName)
Read a single InverseName attribute.
void(* UA_ClientAsyncReadBrowseNameAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_QualifiedName *browseName)
Read a single BrowseName attribute.
void(* UA_ClientAsyncOperationCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, void *result)
void(* UA_ClientReadArrayDimensionsAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Variant *arrayDimensions)
Read a single ArrayDimensions attribute.
void(* UA_ClientAsyncReadValueRankAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Int32 *valueRank)
Read a single ValueRank attribute.
UA_StatusCode UA_Client_readValueAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadValueAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadDataTypeAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_NodeId *dataType)
Read a single DataType attribute.
UA_StatusCode UA_Client_readDisplayNameAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadDisplayNameAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode UA_Client_readUserAccessLevelAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadUserAccessLevelAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode __UA_Client_call_async(UA_Client *client, const UA_NodeId objectId, const UA_NodeId methodId, size_t inputSize, const UA_Variant *input, UA_ClientAsyncServiceCallback callback, void *userdata, UA_UInt32 *reqId)
void(* UA_ClientAsyncReadValueAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_DataValue *value)
Read a single Value attribute.
UA_StatusCode UA_Client_readIsAbstractAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadIsAbstractAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadEventNotifierAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Byte *eventNotifier)
Read a single EventNotifier attribute.
UA_StatusCode UA_Client_readAttribute_async(UA_Client *client, const UA_ReadValueId *rvi, UA_TimestampsToReturn timestampsToReturn, UA_ClientAsyncReadAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
_UA_BEGIN_DECLS typedef void(* UA_ClientAsyncReadCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_ReadResponse *rr)
This Source Code Form is subject to the terms of the Mozilla Public License, v.
UA_StatusCode UA_Client_readDescriptionAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadDescriptionAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadDisplayNameAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_LocalizedText *displayName)
Read a single DisplayName attribute.
void(* UA_ClientAsyncReadMinimumSamplingIntervalAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Double *minimumSamplingInterval)
Read a single MinimumSamplingInterval attribute.
UA_StatusCode UA_Client_readInverseNameAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadInverseNameAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode UA_Client_readEventNotifierAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadEventNotifierAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode UA_Client_readBrowseNameAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadBrowseNameAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadAccessLevelAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Byte *accessLevel)
Read a single AccessLevel attribute.
UA_StatusCode __UA_Client_addNode_async(UA_Client *client, const UA_NodeClass nodeClass, const UA_NodeId requestedNewNodeId, const UA_NodeId parentNodeId, const UA_NodeId referenceTypeId, const UA_QualifiedName browseName, const UA_NodeId typeDefinition, const UA_NodeAttributes *attr, const UA_DataType *attributeType, UA_NodeId *outNewNodeId, UA_ClientAsyncServiceCallback callback, void *userdata, UA_UInt32 *reqId)
UA_StatusCode UA_Client_readAccessLevelAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadAccessLevelAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode UA_Client_readUserWriteMaskAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadUserWriteMaskAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode UA_Client_readValueRankAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadValueRankAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadIsAbstractAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Boolean *isAbstract)
Read a single IsAbstract attribute.
void(* UA_ClientAsyncReadWriteMaskAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_UInt32 *writeMask)
Read a single WriteMask attribute.
void(* UA_ClientAsyncReadSymmetricAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Boolean *symmetric)
Read a single Symmetric attribute.
UA_StatusCode UA_Client_readArrayDimensionsAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientReadArrayDimensionsAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadHistorizingAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Boolean *historizing)
Read a single Historizing attribute.
UA_StatusCode UA_Client_readContainsNoLoopsAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadContainsNoLoopsAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadContainsNoLoopsAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Boolean *containsNoLoops)
Read a single ContainsNoLoops attribute.
void(* UA_ClientAsyncReadExecutableAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Boolean *executable)
Read a single Executable attribute.
void(* UA_ClientAsyncReadUserAccessLevelAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_Byte *userAccessLevel)
Read a single UserAccessLevel attribute.
UA_StatusCode UA_Client_readMinimumSamplingIntervalAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadMinimumSamplingIntervalAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
UA_StatusCode __UA_Client_writeAttribute_async(UA_Client *client, const UA_NodeId *nodeId, UA_AttributeId attributeId, const void *in, const UA_DataType *inDataType, UA_ClientAsyncServiceCallback callback, void *userdata, UA_UInt32 *reqId)
void(* UA_ClientAsyncReadUserWriteMaskAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_UInt32 *writeMask)
Read a single UserWriteMask attribute.
UA_StatusCode UA_Client_readDataTypeAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadDataTypeAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncReadDescriptionAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_LocalizedText *description)
Read a single Description attribute.
void(* UA_ClientAsyncWriteCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_WriteResponse *wr)
UA_StatusCode UA_Client_readExecutableAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadExecutableAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncBrowseCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_BrowseResponse *wr)
UA_StatusCode UA_Client_readHistorizingAttribute_async(UA_Client *client, const UA_NodeId nodeId, UA_ClientAsyncReadHistorizingAttributeCallback callback, void *userdata, UA_UInt32 *requestId)
void(* UA_ClientAsyncAddNodesCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_AddNodesResponse *ar)
void(* UA_ClientAsyncCallCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_CallResponse *cr)
void(* UA_ClientAsyncReadAttributeCallback)(UA_Client *client, void *userdata, UA_UInt32 requestId, UA_StatusCode status, UA_DataValue *attribute)
Reading a single attribute.
UA_AttributeId
This Source Code Form is subject to the terms of the Mozilla Public License, v.
Definition common.h:21
@ UA_ATTRIBUTEID_NODEID
Definition common.h:22
@ UA_ATTRIBUTEID_VALUERANK
Definition common.h:36
@ UA_ATTRIBUTEID_EXECUTABLE
Definition common.h:42
@ UA_ATTRIBUTEID_ACCESSLEVEL
Definition common.h:38
@ UA_ATTRIBUTEID_ISABSTRACT
Definition common.h:29
@ UA_ATTRIBUTEID_SYMMETRIC
Definition common.h:30
@ UA_ATTRIBUTEID_HISTORIZING
Definition common.h:41
@ UA_ATTRIBUTEID_CONTAINSNOLOOPS
Definition common.h:32
@ UA_ATTRIBUTEID_USEREXECUTABLE
Definition common.h:43
@ UA_ATTRIBUTEID_USERWRITEMASK
Definition common.h:28
@ UA_ATTRIBUTEID_DESCRIPTION
Definition common.h:26
@ UA_ATTRIBUTEID_WRITEMASK
Definition common.h:27
@ UA_ATTRIBUTEID_VALUE
Definition common.h:34
@ UA_ATTRIBUTEID_BROWSENAME
Definition common.h:24
@ UA_ATTRIBUTEID_MINIMUMSAMPLINGINTERVAL
Definition common.h:40
@ UA_ATTRIBUTEID_DATATYPE
Definition common.h:35
@ UA_ATTRIBUTEID_INVERSENAME
Definition common.h:31
@ UA_ATTRIBUTEID_USERACCESSLEVEL
Definition common.h:39
@ UA_ATTRIBUTEID_EVENTNOTIFIER
Definition common.h:33
@ UA_ATTRIBUTEID_DISPLAYNAME
Definition common.h:25
@ UA_ATTRIBUTEID_NODECLASS
Definition common.h:23
#define _UA_BEGIN_DECLS
#undef UA_DEBUG_DUMP_PKGS
Definition config.h:89
#define _UA_END_DECLS
Definition config.h:96
int32_t UA_Int32
Definition types.h:51
_UA_BEGIN_DECLS typedef bool UA_Boolean
This Source Code Form is subject to the terms of the Mozilla Public License, v.
Definition types.h:26
UA_EXPORT const UA_NodeId UA_NODEID_NULL
uint32_t UA_UInt32
Definition types.h:56
uint32_t UA_StatusCode
Definition types.h:77
double UA_Double
Definition types.h:74
uint8_t UA_Byte
Definition types.h:36
#define UA_TYPES_WRITERESPONSE
#define UA_TYPES_NODEID
#define UA_TYPES_VARIANT
#define UA_TYPES_UINT32
#define UA_TYPES_NODECLASS
#define UA_TYPES_VIEWATTRIBUTES
#define UA_TYPES_BROWSEREQUEST
#define UA_TYPES_LOCALIZEDTEXT
#define UA_TYPES_REFERENCETYPEATTRIBUTES
#define UA_TYPES_INT32
#define UA_TYPES_BOOLEAN
#define UA_TYPES_QUALIFIEDNAME
#define UA_TYPES_DOUBLE
#define UA_TYPES_DATATYPEATTRIBUTES
#define UA_TYPES_READREQUEST
#define UA_TYPES_WRITEREQUEST
#define UA_TYPES_VARIABLEATTRIBUTES
#define UA_TYPES_OBJECTTYPEATTRIBUTES
#define UA_TYPES_VARIABLETYPEATTRIBUTES
UA_TimestampsToReturn
const UA_DataType UA_TYPES[191]
#define UA_TYPES_BROWSERESPONSE
#define UA_TYPES_READRESPONSE
#define UA_TYPES_OBJECTATTRIBUTES
#define UA_TYPES_BYTE
UA_NodeClass
@ UA_NODECLASS_OBJECTTYPE
@ UA_NODECLASS_REFERENCETYPE
@ UA_NODECLASS_OBJECT
@ UA_NODECLASS_DATATYPE
@ UA_NODECLASS_VIEW
@ UA_NODECLASS_VARIABLETYPE
@ UA_NODECLASS_METHOD
@ UA_NODECLASS_VARIABLE
#define UA_TYPES_METHODATTRIBUTES
UA_StatusCode status