opc_tcp_async.h
Go to the documentation of this file.
00001 /******************************************************************************
00002  *   Copyright (C) 2013-2014 by Alexander Rykovanov                        *
00003  *   rykovanov.as@gmail.com                                                   *
00004  *                                                                            *
00005  *   This library is free software; you can redistribute it and/or modify     *
00006  *   it under the terms of the GNU Lesser General Public License as           *
00007  *   published by the Free Software Foundation; version 3 of the License.     *
00008  *                                                                            *
00009  *   This library is distributed in the hope that it will be useful,          *
00010  *   but WITHOUT ANY WARRANTY; without even the implied warranty of           *
00011  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            *
00012  *   GNU Lesser General Public License for more details.                      *
00013  *                                                                            *
00014  *   You should have received a copy of the GNU Lesser General Public License *
00015  *   along with this library; if not, write to the                            *
00016  *   Free Software Foundation, Inc.,                                          *
00017  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.                *
00018  ******************************************************************************/
00019 
00020 #pragma once
00021 
00022 #include <opc/ua/services/services.h>
00023 #include <opc/common/interface.h>
00024 
00025 namespace boost
00026 {
00027   namespace asio
00028   {
00029     class io_service;
00030   }
00031 }
00032 
00033 namespace OpcUa
00034 {
00035   namespace Server
00036   {
00037 
00038     class AsyncOpcTcp : private Common::Interface
00039     {
00040     public:
00041       DEFINE_CLASS_POINTERS(AsyncOpcTcp);
00042 
00043     public:
00044       struct Parameters
00045       {
00046         std::string Host;
00047         unsigned Port = 4840;
00048         bool DebugMode = false;
00049       };
00050 
00051     public:
00052       virtual void Listen() = 0;
00053       virtual void Shutdown() = 0;
00054     };
00055 
00056     AsyncOpcTcp::UniquePtr CreateAsyncOpcTcp(const AsyncOpcTcp::Parameters& params, Services::SharedPtr server, boost::asio::io_service& io);
00057 
00058   }
00059 }


ros_opcua_impl_freeopcua
Author(s): Denis Štogl
autogenerated on Sat Jun 8 2019 18:24:56