9#include "open62541pp/config.hpp"
19namespace opcua::detail {
22 UniqueOrRawPtr<ValueCallbackBase> valueCallback;
23 UniqueOrRawPtr<DataSourceBase> dataSource;
24#ifdef UA_ENABLE_METHODCALLS
25 std::function<void(Span<const Variant> input, Span<Variant> output)> methodCallback;
29struct SessionRegistry {
30 using Context =
void*;
34 std::map<NodeId, Context> sessions;
42 ExceptionCatcher exceptionCatcher;
43 SessionRegistry sessionRegistry;
44 std::atomic<bool> running{
false};
47#ifdef UA_ENABLE_SUBSCRIPTIONS
50 using SubMonId = std::pair<SubId, MonId>;
51 ContextMap<SubMonId, services::detail::MonitoredItemContext> monitoredItems;
54 ContextMap<NodeId, NodeContext> nodeContexts;
uint32_t IntegerId
IntegerId.
void(* closeSession)(UA_Server *server, UA_AccessControl *ac, const UA_NodeId *sessionId, void *sessionContext)
UA_StatusCode(* activateSession)(UA_Server *server, UA_AccessControl *ac, const UA_EndpointDescription *endpointDescription, const UA_ByteString *secureChannelRemoteCertificate, const UA_NodeId *sessionId, const UA_ExtensionObject *userIdentityToken, void **sessionContext)