channel.h
Go to the documentation of this file.
1 
11 #pragma once
12 
13 #include <cstddef>
14 #include <functional>
15 #include <memory>
16 #include <system_error>
17 
19 
20 namespace OpcUa
21 {
22 
24 {
25 public:
26  virtual ~BreakableChannel() {}
28  BreakableChannel(const BreakableChannel &) = delete;
30  BreakableChannel & operator=(const BreakableChannel &) = delete;
31 
32 public:
33  virtual void Stop() = 0;
34 };
35 
36 
37 class InputChannel : public virtual BreakableChannel
38 {
39 public:
41 
42 public:
43  virtual ~InputChannel() {}
45  InputChannel(const InputChannel &) = delete;
46  InputChannel(InputChannel &&) = delete;
47  InputChannel & operator=(const InputChannel &) = delete;
48 
49 public:
54  virtual std::size_t Receive(char * data, std::size_t size) = 0;
55 };
56 
57 
58 class OutputChannel : public virtual BreakableChannel
59 {
60 public:
62 
63 public:
64  virtual ~OutputChannel() {}
65 
67  OutputChannel(const OutputChannel &) = delete;
68  OutputChannel(OutputChannel &&) = delete;
69  OutputChannel & operator=(const OutputChannel &) = delete;
70 
71 public:
72  virtual void Send(const char * message, std::size_t size) = 0;
73 };
74 
75 
76 class IOChannel :
77  public InputChannel,
78  public OutputChannel
79 {
80 public:
82 };
83 
84 }
85 
BreakableChannel & operator=(const BreakableChannel &)=delete
message
Definition: server.py:50
OPC UA Address space part. GNU LGPL.
virtual void Stop()=0
virtual ~BreakableChannel()
Definition: channel.h:26
virtual ~InputChannel()
Definition: channel.h:43
#define DEFINE_CLASS_POINTERS(ClassName)
Exception declarations GNU LGPL.
virtual ~OutputChannel()
Definition: channel.h:64


ros_opcua_impl_freeopcua
Author(s): Denis Štogl
autogenerated on Tue Jan 19 2021 03:06:04