S2OPC OPCUA Toolkit
Loading...
Searching...
No Matches
subscription_mgr.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
20/******************************************************************************
21
22 File Name : subscription_mgr.h
23
24 Date : 27/11/2024 09:15:53
25
26 C Translator Version : tradc Java V1.2 (06/02/2022)
27
28******************************************************************************/
29
30#ifndef _subscription_mgr_h
31#define _subscription_mgr_h
32
33/*--------------------------
34 Added by the Translator
35 --------------------------*/
36#include "b2c.h"
37
38/*-----------------
39 IMPORTS Clause
40 -----------------*/
47#include "subscription_core.h"
49
50/*--------------
51 SEES Clause
52 --------------*/
53#include "address_space_itf.h"
54#include "channel_mgr.h"
55#include "constants.h"
57#include "message_in_bs.h"
58#include "message_out_bs.h"
59#include "request_handle_bs.h"
60#include "session_mgr.h"
62
63/*------------------------
64 INITIALISATION Clause
65 ------------------------*/
67
68/*-------------------------------
69 PROMOTES and EXTENDS Clauses
70 -------------------------------*/
71#define subscription_mgr__is_valid_subscription subscription_core__is_valid_subscription
72
73/*--------------------------
74 LOCAL_OPERATIONS Clause
75 --------------------------*/
77 const constants__t_monitoredItemQueue_i subscription_mgr__p_monitoredItemQueue,
78 const constants__t_WriteValuePointer_i subscription_mgr__p_old_wv_pointer,
79 const constants__t_WriteValuePointer_i subscription_mgr__p_new_wv_pointer);
81 const constants__t_monitoredItemQueue_i subscription_mgr__p_monitoredItemQueue,
82 const t_bool subscription_mgr__p_added);
84 const constants__t_msg_i subscription_mgr__p_req_msg,
85 const constants__t_msg_i subscription_mgr__p_resp_msg,
86 const t_bool subscription_mgr__p_has_sub,
87 const constants__t_subscription_i subscription_mgr__p_session_sub,
88 const t_entier4 subscription_mgr__p_nb_reqs);
90 const constants__t_msg_i subscription_mgr__p_resp_msg,
91 const constants__t_subscription_i subscription_mgr__p_subscription,
92 const t_bool subscription_mgr__p_moreNotifs);
94 const constants__t_session_i subscription_mgr__p_session,
95 const constants__t_msg_i subscription_mgr__p_req_msg,
96 const constants__t_msg_i subscription_mgr__p_resp_msg,
97 const t_entier4 subscription_mgr__p_nb_acks);
99 const constants__t_msg_i subscription_mgr__p_resp_msg,
100 const constants__t_notifRepublishQueue_i subscription_mgr__republishQueue,
101 const t_entier4 subscription_mgr__nb_seq_nums);
103 const constants__t_subscription_i subscription_mgr__p_subscription,
104 const constants__t_msg_i subscription_mgr__p_req_msg,
105 const constants__t_msg_i subscription_mgr__p_resp_msg,
106 const t_entier4 subscription_mgr__p_nb_monitored_items);
108 const constants__t_endpoint_config_idx_i subscription_mgr__p_endpoint_idx,
109 const constants__t_TimestampsToReturn_i subscription_mgr__p_tsToReturn,
110 const constants__t_msg_i subscription_mgr__p_req_msg,
111 const constants__t_msg_i subscription_mgr__p_resp_msg,
112 const t_entier4 subscription_mgr__p_nb_monitored_items);
114 const constants__t_monitoringMode_i subscription_mgr__p_monitoring_mode,
115 const constants__t_msg_i subscription_mgr__p_req_msg,
116 const constants__t_msg_i subscription_mgr__p_resp_msg,
117 const t_entier4 subscription_mgr__p_nb_monitored_items);
119 const constants__t_msg_i subscription_mgr__p_req_msg,
120 const constants__t_msg_i subscription_mgr__p_resp_msg,
121 const t_bool subscription_mgr__p_has_sub,
122 const constants__t_subscription_i subscription_mgr__p_session_sub,
123 const t_bool subscription_mgr__p_pub_enabled,
124 const t_entier4 subscription_mgr__p_nb_reqs);
126 const constants__t_subscription_i subscription_mgr__p_opt_sub_to_filter,
127 const constants__t_monitoredItemId_i subscription_mgr__p_opt_mi_to_fitler,
128 const constants__t_subscription_i subscription_mgr__p_sub,
129 const constants__t_monitoredItemId_i subscription_mgr__p_mi,
130 t_bool * const subscription_mgr__bres);
132 const constants__t_monitoredItemPointer_i subscription_mgr__p_monitoredItemPointer,
133 const constants__t_monitoringMode_i subscription_mgr__p_prevMonitMode,
134 const constants__t_monitoringMode_i subscription_mgr__p_newMonitMode);
136 const constants__t_monitoredItemPointer_i subscription_mgr__p_monitoredItemPointer,
137 const t_bool subscription_mgr__p_added_or_monitMode,
138 const t_bool subscription_mgr__p_monitMode_enabling);
140 const constants__t_monitoredItemPointer_i subscription_mgr__p_monitoredItemPointer,
141 const constants__t_Event_i subscription_mgr__p_event,
142 const constants__t_subscription_i subscription_mgr__p_sub_id,
143 const constants__t_monitoredItemId_i subscription_mgr__p_mi_id);
145 const constants__t_monitoredItemPointer_i subscription_mgr__p_monitoredItemPointer,
146 const constants__t_WriteValuePointer_i subscription_mgr__p_old_wv_pointer,
147 const constants__t_WriteValuePointer_i subscription_mgr__p_new_wv_pointer);
149 const constants__t_monitoredItemQueue_i subscription_mgr__p_monitoredItemQueue,
150 const constants__t_Event_i subscription_mgr__p_event,
151 const constants__t_subscription_i subscription_mgr__p_sub_id,
152 const constants__t_monitoredItemId_i subscription_mgr__p_mi_id);
154 const constants__t_session_i subscription_mgr__p_session,
155 const constants__t_subscription_i subscription_mgr__p_subscription,
156 const constants__t_TimestampsToReturn_i subscription_mgr__p_tsToReturn,
157 const constants__t_user_i subscription_mgr__p_user,
158 const constants__t_LocaleIds_i subscription_mgr__p_locales,
159 const constants__t_msg_i subscription_mgr__p_req_msg,
160 const constants__t_msg_i subscription_mgr__p_resp_msg,
161 const t_entier4 subscription_mgr__p_index);
163 const constants__t_session_i subscription_mgr__p_session,
164 const constants__t_subscription_i subscription_mgr__p_subscription,
165 const constants__t_TimestampsToReturn_i subscription_mgr__p_tsToReturn,
166 const constants__t_user_i subscription_mgr__p_user,
167 const constants__t_LocaleIds_i subscription_mgr__p_locales,
168 const constants__t_msg_i subscription_mgr__p_req_msg,
169 const constants__t_msg_i subscription_mgr__p_resp_msg,
170 const t_entier4 subscription_mgr__p_nb_monitored_items);
171
172/*--------------------
173 OPERATIONS Clause
174 --------------------*/
176 const constants__t_WriteValuePointer_i subscription_mgr__p_old_write_value_pointer,
177 const constants__t_WriteValuePointer_i subscription_mgr__p_new_write_value_pointer);
179 const constants__t_NodeId_i subscription_mgr__p_notifierId,
180 const constants__t_Event_i subscription_mgr__p_event,
181 const constants__t_subscription_i subscription_mgr__p_sub_id,
182 const constants__t_monitoredItemId_i subscription_mgr__p_mi_id,
183 t_bool * const subscription_mgr__bres);
185 const t_bool subscription_mgr__p_node_added,
186 const constants__t_NodeId_i subscription_mgr__p_nid);
188 const constants__t_subscription_i subscription_mgr__p_subscription);
190 const constants__t_session_i subscription_mgr__p_session,
191 const constants__t_sessionState_i subscription_mgr__p_newSessionState);
194 const constants__t_session_i subscription_mgr__p_session,
195 const constants__t_msg_i subscription_mgr__p_req_msg,
196 const constants__t_msg_i subscription_mgr__p_resp_msg,
197 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
199 const constants__t_session_i subscription_mgr__p_session,
200 const constants__t_msg_i subscription_mgr__p_req_msg,
201 const constants__t_msg_i subscription_mgr__p_resp_msg,
202 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
204 const constants__t_session_i subscription_mgr__p_session,
205 const constants__t_msg_i subscription_mgr__p_req_msg,
206 const constants__t_msg_i subscription_mgr__p_resp_msg,
207 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
209 const constants__t_session_i subscription_mgr__p_session,
210 const constants__t_msg_i subscription_mgr__p_req_msg,
211 const constants__t_msg_i subscription_mgr__p_resp_msg,
212 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
214 const constants__t_session_i subscription_mgr__p_session,
215 const constants__t_user_i subscription_mgr__p_user,
216 const constants__t_msg_i subscription_mgr__p_req_msg,
217 const constants__t_msg_i subscription_mgr__p_resp_msg,
218 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
220 const constants__t_session_i subscription_mgr__p_session,
221 const constants__t_msg_i subscription_mgr__p_req_msg,
222 const constants__t_msg_i subscription_mgr__p_resp_msg,
223 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
225 const constants__t_session_i subscription_mgr__p_session,
226 const constants__t_msg_i subscription_mgr__p_req_msg,
227 const constants__t_msg_i subscription_mgr__p_resp_msg,
228 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
230 const constants__t_session_i subscription_mgr__p_session,
231 const constants__t_msg_header_i subscription_mgr__p_req_header,
232 const constants__t_msg_i subscription_mgr__p_req_msg,
233 const constants__t_server_request_handle_i subscription_mgr__p_req_handle,
234 const constants__t_request_context_i subscription_mgr__p_req_ctx,
235 const constants__t_msg_i subscription_mgr__p_resp_msg,
236 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service,
237 t_bool * const subscription_mgr__async_resp_msg);
239 const constants__t_session_i subscription_mgr__p_session,
240 const constants__t_msg_i subscription_mgr__p_req_msg,
241 const constants__t_msg_i subscription_mgr__p_resp_msg,
242 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
244 const constants__t_session_i subscription_mgr__p_session,
245 const constants__t_msg_i subscription_mgr__p_req_msg,
246 const constants__t_msg_i subscription_mgr__p_resp_msg,
247 constants_statuscodes_bs__t_StatusCode_i * const subscription_mgr__StatusCode_service);
248
249#endif
int32_t t_entier4
Definition b2c.h:34
bool t_bool
Definition b2c.h:28
#define constants__t_endpoint_config_idx_i
Definition constants.h:94
#define constants__t_user_i
Definition constants.h:122
#define constants__t_notifRepublishQueue_i
Definition constants.h:106
constants__t_sessionState_i
Definition constants.h:308
#define constants__t_monitoredItemPointer_i
Definition constants.h:98
#define constants__t_msg_header_i
Definition constants.h:103
#define constants__t_session_i
Definition constants.h:116
#define constants__t_NodeId_i
Definition constants.h:69
#define constants__t_LocaleIds_i
Definition constants.h:65
#define constants__t_Event_i
Definition constants.h:61
#define constants__t_request_context_i
Definition constants.h:112
#define constants__t_WriteValuePointer_i
Definition constants.h:85
#define constants__t_msg_i
Definition constants.h:104
#define constants__t_subscription_i
Definition constants.h:119
#define constants__t_server_request_handle_i
Definition constants.h:114
#define constants__t_monitoredItemQueue_i
Definition constants.h:100
constants__t_monitoringMode_i
Definition constants.h:205
#define constants__t_monitoredItemId_i
Definition constants.h:97
constants__t_TimestampsToReturn_i
Definition constants.h:186
constants_statuscodes_bs__t_StatusCode_i
Definition constants_statuscodes_bs.h:46
void subscription_mgr__fill_set_publishing_mode_response(const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, const t_bool subscription_mgr__p_has_sub, const constants__t_subscription_i subscription_mgr__p_session_sub, const t_bool subscription_mgr__p_pub_enabled, const t_entier4 subscription_mgr__p_nb_reqs)
void subscription_mgr__server_subscription_node_changed(const t_bool subscription_mgr__p_node_added, const constants__t_NodeId_i subscription_mgr__p_nid)
void subscription_mgr__local_create_notification_on_monitored_item_if_event_selected(const constants__t_monitoredItemPointer_i subscription_mgr__p_monitoredItemPointer, const constants__t_Event_i subscription_mgr__p_event, const constants__t_subscription_i subscription_mgr__p_sub_id, const constants__t_monitoredItemId_i subscription_mgr__p_mi_id)
void subscription_mgr__server_subscription_session_inactive(const constants__t_session_i subscription_mgr__p_session, const constants__t_sessionState_i subscription_mgr__p_newSessionState)
void subscription_mgr__fill_publish_response_msg_ack_results(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, const t_entier4 subscription_mgr__p_nb_acks)
void subscription_mgr__fill_publish_response_msg(const constants__t_msg_i subscription_mgr__p_resp_msg, const constants__t_subscription_i subscription_mgr__p_subscription, const t_bool subscription_mgr__p_moreNotifs)
void subscription_mgr__local_create_notification_if_node_changed_or_monitMode_enabling(const constants__t_monitoredItemPointer_i subscription_mgr__p_monitoredItemPointer, const t_bool subscription_mgr__p_added_or_monitMode, const t_bool subscription_mgr__p_monitMode_enabling)
void subscription_mgr__local_create_delete_notification_on_set_monit_mode_change(const constants__t_monitoredItemPointer_i subscription_mgr__p_monitoredItemPointer, const constants__t_monitoringMode_i subscription_mgr__p_prevMonitMode, const constants__t_monitoringMode_i subscription_mgr__p_newMonitMode)
void subscription_mgr__treat_delete_subscriptions_request(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)
void subscription_mgr__INITIALISATION(void)
void subscription_mgr__treat_subscription_modify_monitored_items_req(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)
void subscription_mgr__server_subscription_event_triggered(const constants__t_NodeId_i subscription_mgr__p_notifierId, const constants__t_Event_i subscription_mgr__p_event, const constants__t_subscription_i subscription_mgr__p_sub_id, const constants__t_monitoredItemId_i subscription_mgr__p_mi_id, t_bool *const subscription_mgr__bres)
void subscription_mgr__local_create_notification_on_monitored_items_if_event_selected(const constants__t_monitoredItemQueue_i subscription_mgr__p_monitoredItemQueue, const constants__t_Event_i subscription_mgr__p_event, const constants__t_subscription_i subscription_mgr__p_sub_id, const constants__t_monitoredItemId_i subscription_mgr__p_mi_id)
void subscription_mgr__treat_create_subscription_request(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)
void subscription_mgr__local_treat_create_monitored_items(const constants__t_session_i subscription_mgr__p_session, const constants__t_subscription_i subscription_mgr__p_subscription, const constants__t_TimestampsToReturn_i subscription_mgr__p_tsToReturn, const constants__t_user_i subscription_mgr__p_user, const constants__t_LocaleIds_i subscription_mgr__p_locales, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, const t_entier4 subscription_mgr__p_nb_monitored_items)
void subscription_mgr__local_treat_create_monitored_item_index(const constants__t_session_i subscription_mgr__p_session, const constants__t_subscription_i subscription_mgr__p_subscription, const constants__t_TimestampsToReturn_i subscription_mgr__p_tsToReturn, const constants__t_user_i subscription_mgr__p_user, const constants__t_LocaleIds_i subscription_mgr__p_locales, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, const t_entier4 subscription_mgr__p_index)
void subscription_mgr__treat_subscription_republish_request(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)
void subscription_mgr__treat_publishing_mode_request(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)
void subscription_mgr__fill_response_subscription_modify_monitored_items(const constants__t_endpoint_config_idx_i subscription_mgr__p_endpoint_idx, const constants__t_TimestampsToReturn_i subscription_mgr__p_tsToReturn, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, const t_entier4 subscription_mgr__p_nb_monitored_items)
void subscription_mgr__subscription_mgr_UNINITIALISATION(void)
void subscription_mgr__local_create_notification_on_monitored_items_if_data_changed(const constants__t_monitoredItemPointer_i subscription_mgr__p_monitoredItemPointer, const constants__t_WriteValuePointer_i subscription_mgr__p_old_wv_pointer, const constants__t_WriteValuePointer_i subscription_mgr__p_new_wv_pointer)
void subscription_mgr__treat_subscription_publish_request(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_header_i subscription_mgr__p_req_header, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_server_request_handle_i subscription_mgr__p_req_handle, const constants__t_request_context_i subscription_mgr__p_req_ctx, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service, t_bool *const subscription_mgr__async_resp_msg)
void subscription_mgr__treat_subscription_set_monit_mode_monitored_items_req(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)
void subscription_mgr__local_check_filtered_subscription_and_monitored_item(const constants__t_subscription_i subscription_mgr__p_opt_sub_to_filter, const constants__t_monitoredItemId_i subscription_mgr__p_opt_mi_to_fitler, const constants__t_subscription_i subscription_mgr__p_sub, const constants__t_monitoredItemId_i subscription_mgr__p_mi, t_bool *const subscription_mgr__bres)
void subscription_mgr__fill_delete_subscriptions_response(const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, const t_bool subscription_mgr__p_has_sub, const constants__t_subscription_i subscription_mgr__p_session_sub, const t_entier4 subscription_mgr__p_nb_reqs)
void subscription_mgr__server_subscription_data_changed(const constants__t_WriteValuePointer_i subscription_mgr__p_old_write_value_pointer, const constants__t_WriteValuePointer_i subscription_mgr__p_new_write_value_pointer)
void subscription_mgr__create_notification_on_monitored_items_if_node_changed(const constants__t_monitoredItemQueue_i subscription_mgr__p_monitoredItemQueue, const t_bool subscription_mgr__p_added)
void subscription_mgr__create_notification_on_monitored_items_if_data_changed(const constants__t_monitoredItemQueue_i subscription_mgr__p_monitoredItemQueue, const constants__t_WriteValuePointer_i subscription_mgr__p_old_wv_pointer, const constants__t_WriteValuePointer_i subscription_mgr__p_new_wv_pointer)
void subscription_mgr__treat_modify_subscription_request(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)
void subscription_mgr__fill_publish_response_msg_available_seq_nums(const constants__t_msg_i subscription_mgr__p_resp_msg, const constants__t_notifRepublishQueue_i subscription_mgr__republishQueue, const t_entier4 subscription_mgr__nb_seq_nums)
void subscription_mgr__treat_subscription_create_monitored_items_req(const constants__t_session_i subscription_mgr__p_session, const constants__t_user_i subscription_mgr__p_user, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)
void subscription_mgr__fill_response_subscription_set_monit_mode_monitored_items(const constants__t_monitoringMode_i subscription_mgr__p_monitoring_mode, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, const t_entier4 subscription_mgr__p_nb_monitored_items)
void subscription_mgr__server_subscription_publish_timeout(const constants__t_subscription_i subscription_mgr__p_subscription)
void subscription_mgr__fill_response_subscription_delete_monitored_items(const constants__t_subscription_i subscription_mgr__p_subscription, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, const t_entier4 subscription_mgr__p_nb_monitored_items)
void subscription_mgr__treat_subscription_delete_monitored_items_req(const constants__t_session_i subscription_mgr__p_session, const constants__t_msg_i subscription_mgr__p_req_msg, const constants__t_msg_i subscription_mgr__p_resp_msg, constants_statuscodes_bs__t_StatusCode_i *const subscription_mgr__StatusCode_service)