00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 #ifndef OPC_UA_Client_ENDPOINTS_H 00012 #define OPC_UA_Client_ENDPOINTS_H 00013 00014 #include <opc/common/interface.h> 00015 #include <opc/common/class_pointers.h> 00016 #include <opc/ua/protocol/endpoints.h> 00017 #include <opc/ua/protocol/protocol.h> 00018 #include <vector> 00019 00020 namespace OpcUa 00021 { 00022 00023 struct ApplicationFilter 00024 { 00025 }; 00026 struct ServerParameters 00027 { 00028 }; 00029 00030 class EndpointServices : private Common::Interface 00031 { 00032 public: 00033 DEFINE_CLASS_POINTERS(EndpointServices); 00034 00035 public: 00036 virtual std::vector<ApplicationDescription> FindServers(const FindServersParameters& params) const = 0; 00037 // TODO Here all structuresmust be in one namespace. 00038 virtual std::vector<EndpointDescription> GetEndpoints(const GetEndpointsParameters& filter) const = 0; 00039 virtual void RegisterServer(const ServerParameters& parameters) = 0; 00040 }; 00041 00042 } // namespace OpcUa 00043 00044 #endif // OPC_UA_Client_ENDPOINTS_H 00045