EmulatedWirelessInterface.ih
Go to the documentation of this file.
1 //
2 // Copyright (c) 2020 Fraunhofer Institute for Applied Information Technology (FIT)
3 // Network Research Group (NET)
4 // Schloss Birlinghoven, 53754 Sankt Augustin, GERMANY
5 // Contact: support@wiback.org
6 //
7 // This file is part of the SENF code tree.
8 // It is licensed under the 3-clause BSD License (aka New BSD License).
9 // See LICENSE.txt in the top level directory for details or visit
10 // https://opensource.org/licenses/BSD-3-Clause
11 //
12 
13 
14 /** \file
15  \brief EmulatedWirelessInterface internal header */
16 
17 #ifndef IH_SENF_Ext_NetEmu_EmulatedWirelessInterface_
18 #define IH_SENF_Ext_NetEmu_EmulatedWirelessInterface_ 1
19 
20 // Custom includes
21 #include "Packets.hh"
22 
23 //-/////////////////////////////////////////////////////////////////////////////////////////////////
24 
25 namespace senf {
26 namespace emu {
27 namespace detail {
28 
29  class EmulatedWirelessInterfaceTransmitFilter
30  : public ppi::module::Module
31  {
32  SENF_PPI_MODULE(EmulatedWirelessInterfaceTransmitFilter);
33  public:
34  ppi::connector::PassiveInput<> input;
35  ppi::connector::ActiveOutput<EmulatedWirelessPacketHeader> output;
36 
37  EmulatedWirelessInterfaceTransmitFilter(EmulatedWirelessTransmitter & iface);
38 
39  private:
40  void request();
41 
42  EmulatedWirelessTransmitter & iface_;
43  };
44 
45  class EmulatedWirelessInterfaceReceiveFilter
46  : public ppi::module::Module
47  {
48  SENF_PPI_MODULE(EmulatedWirelessInterfaceReceiveFilter);
49  public:
50  ppi::connector::PassiveInput<EmulatedWirelessPacketHeader> input;
51  ppi::connector::ActiveOutput<> output;
52 
53  EmulatedWirelessInterfaceReceiveFilter(EmulatedWirelessReceiver & iface);
54 
55  private:
56  void request();
57 
58  EmulatedWirelessReceiver & iface_;
59  };
60 
61 }}}
62 
63 //-/////////////////////////////////////////////////////////////////////////////////////////////////
64 #endif
65 
66 
67 // Local Variables:
68 // mode: c++
69 // fill-column: 100
70 // comment-column: 40
71 // c-file-style: "senf"
72 // indent-tabs-mode: nil
73 // ispell-local-dictionary: "american"
74 // compile-command: "scons -u test"
75 // End: