11#include "open62541pp/config.hpp"
21namespace opcua::detail {
24 ValueCallbackBase* valueCallback{
nullptr};
25 DataSourceBase* dataSource{
nullptr};
26#ifdef UA_ENABLE_METHODCALLS
32struct SessionRegistry {
33 using Context =
void*;
37 std::map<NodeId, Context> sessions;
45 ExceptionCatcher exceptionCatcher;
46 SessionRegistry sessionRegistry;
47 std::atomic<bool> running{
false};
50 std::vector<DataType> dataTypes;
51 std::unique_ptr<UA_DataTypeArray> dataTypeArray;
53#ifdef UA_ENABLE_SUBSCRIPTIONS
56 using SubMonId = std::pair<SubId, MonId>;
57 ContextMap<SubMonId, services::detail::MonitoredItemContext> monitoredItems;
60 ContextMap<NodeId, NodeContext> nodeContexts;
Span(Container &) -> Span< typename Container::value_type >
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)