/src/ocudu/lib/ofh/ethernet/ethernet_factories.cpp
Line | Count | Source |
1 | | // SPDX-FileCopyrightText: Copyright (C) 2021-2026 Software Radio Systems Limited |
2 | | // SPDX-FileCopyrightText: Copyright (C) 2026 OCUDU contributors |
3 | | // SPDX-License-Identifier: BSD-3-Clause-Open-MPI |
4 | | |
5 | | #include "ocudu/ofh/ethernet/ethernet_factories.h" |
6 | | #include "ethernet_frame_builder_impl.h" |
7 | | #include "ethernet_receiver_impl.h" |
8 | | #include "ethernet_transmitter_impl.h" |
9 | | #include "vlan_ethernet_frame_builder_impl.h" |
10 | | #include "vlan_ethernet_frame_decoder_impl.h" |
11 | | |
12 | | using namespace ocudu; |
13 | | using namespace ether; |
14 | | |
15 | | std::unique_ptr<transmitter> ocudu::ether::create_transmitter(const transmitter_config& config, |
16 | | ocudulog::basic_logger& logger) |
17 | 0 | { |
18 | 0 | return std::make_unique<transmitter_impl>(config, logger); |
19 | 0 | } |
20 | | |
21 | | std::unique_ptr<receiver> |
22 | | ocudu::ether::create_receiver(const receiver_config& config, task_executor& executor, ocudulog::basic_logger& logger) |
23 | 0 | { |
24 | 0 | return std::make_unique<receiver_impl>(config, executor, logger); |
25 | 0 | } |
26 | | |
27 | | std::unique_ptr<frame_builder> ocudu::ether::create_vlan_frame_builder(const vlan_frame_params& eth_params) |
28 | 0 | { |
29 | 0 | return std::make_unique<vlan_frame_builder_impl>(eth_params); |
30 | 0 | } |
31 | | |
32 | | std::unique_ptr<frame_builder> ocudu::ether::create_frame_builder(const vlan_frame_params& eth_params) |
33 | 0 | { |
34 | 0 | return std::make_unique<frame_builder_impl>(eth_params); |
35 | 0 | } |
36 | | |
37 | | std::unique_ptr<vlan_frame_decoder> ocudu::ether::create_vlan_frame_decoder(ocudulog::basic_logger& logger, |
38 | | unsigned sector_id) |
39 | 1 | { |
40 | 1 | return std::make_unique<vlan_frame_decoder_impl>(logger, sector_id); |
41 | 1 | } |