S2OPC OPCUA Toolkit
Loading...
Searching...
No Matches
sopc_call_method_manager.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
28#ifndef SOPC_CALL_METHOD_MANAGER_H_
29#define SOPC_CALL_METHOD_MANAGER_H_
30
31#include "sopc_builtintypes.h"
33
36
63 const SOPC_NodeId* objectId,
64 uint32_t nbInputArgs,
65 const SOPC_Variant* inputArgs,
66 uint32_t* nbOutputArgs,
67 SOPC_Variant** outputArgs,
68 void* param);
69
75typedef void SOPC_MethodCallFunc_Free_Func(void* data);
76
97
99typedef void SOPC_MethodCallManager_Free_Func(void* data);
100
103
136
145
151
166 const SOPC_NodeId* methodId,
167 SOPC_MethodCallFunc_Ptr* methodFunc,
168 void* param,
170
190 const SOPC_NodeId* methodInstanceId,
191 const SOPC_NodeId* methodTypeId,
192 SOPC_MethodCallFunc_Ptr* methodFunc,
193 void* param,
195
196#endif /* SOPC_CALL_METHOD_MANAGER_H_ */
uint32_t SOPC_StatusCode
Definition sopc_builtintypes.h:36
void SOPC_MethodCallFunc_Free_Func(void *data)
Type of the function to free param of SOPC_MethodCallFunc.
Definition sopc_call_method_manager.h:75
void SOPC_MethodCallManager_Free(SOPC_MethodCallManager *mcm)
Free MethodCallManager created with SOPC_MethodCallManager_Create.
void SOPC_MethodCallManager_Free_Func(void *data)
Definition sopc_call_method_manager.h:99
SOPC_StatusCode SOPC_MethodCallFunc_Ptr(const SOPC_CallContext *callContextPtr, const SOPC_NodeId *objectId, uint32_t nbInputArgs, const SOPC_Variant *inputArgs, uint32_t *nbOutputArgs, SOPC_Variant **outputArgs, void *param)
Type of the function to call associated to a method.
Definition sopc_call_method_manager.h:62
SOPC_ReturnStatus SOPC_MethodCallManager_AddMethod(SOPC_MethodCallManager *mcm, const SOPC_NodeId *methodId, SOPC_MethodCallFunc_Ptr *methodFunc, void *param, SOPC_MethodCallFunc_Free_Func *fnFree)
Associates a C function to a NodeId of a Method. This function should be used only with the basic imp...
SOPC_ReturnStatus SOPC_MethodCallManager_AddMethodWithType(SOPC_MethodCallManager *mcm, const SOPC_NodeId *methodInstanceId, const SOPC_NodeId *methodTypeId, SOPC_MethodCallFunc_Ptr *methodFunc, void *param, SOPC_MethodCallFunc_Free_Func *fnFree)
Associates a C function to two NodeId of a Method (one for method instance and one for method in obje...
SOPC_MethodCallManager * SOPC_MethodCallManager_Create(void)
Provide a basic implementation of MethodCallManager. This implementation can be used with SOPC_Method...
SOPC_MethodCallFunc * SOPC_MethodCallManager_Get_Func(SOPC_MethodCallManager *mcm, SOPC_NodeId *methodId)
Definition sopc_call_method_manager.h:102
enum _SOPC_ReturnStatus SOPC_ReturnStatus
Common enumerations for S2OPC.
Defines abstract context type that can be use to obtain context associated to a service call (write,...
Definition app_cb_call_context_internal.h:28
Object to describe of function associated to a method and user parameter.
Definition sopc_call_method_manager.h:81
void * pParam
parameter to give when call pMethodFunc. Can be NULL
Definition sopc_call_method_manager.h:95
SOPC_MethodCallFunc_Free_Func * pFnFree
a pointer on a function to clear pParam. Can be NULL
Definition sopc_call_method_manager.h:85
SOPC_MethodCallFunc_Ptr * pMethodFunc
a valid pointer on the function to call
Definition sopc_call_method_manager.h:90
The SOPC_MethodCallManager object defines the common interface for the method manager.
Definition sopc_call_method_manager.h:114
void * pUserData
internal data of the manager.
Definition sopc_call_method_manager.h:134
SOPC_MethodCallManager_Get_Func *const pFnGetMethod
Function to get a function pointer corresponding to an object Method of the Address Space.
Definition sopc_call_method_manager.h:129
SOPC_MethodCallManager_Free_Func *const pFnFree
The free function, called upon generic SOPC_MethodCallManager destruction.
Definition sopc_call_method_manager.h:119
This structure describes a basic NodeID in OPC UA.
Definition sopc_builtintypes.h:189
This structure provides variant encapsulation.
Definition sopc_builtintypes.h:374