00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 #pragma once 00013 00014 #include "opcua_protocol.h" 00015 #include "tcp_server.h" 00016 00017 #include <opc/common/interface.h> 00018 #include <opc/ua/server/services_registry.h> 00019 00020 00021 namespace OpcUa 00022 { 00023 namespace Server 00024 { 00025 00026 class OpcUaProtocol : public Common::Interface 00027 { 00028 public: 00029 DEFINE_CLASS_POINTERS(OpcUaProtocol); 00030 00031 virtual void StartEndpoints(const std::vector<EndpointDescription>& Endpoints, Services::SharedPtr server) = 0; 00032 virtual void StopEndpoints() = 0; 00033 }; 00034 00035 OpcUaProtocol::UniquePtr CreateOpcUaProtocol(TcpServer& tcpServer, bool debug); 00036 00037 } // namespace UaServer 00038 } // nmespace OpcUa