OpenCPN Partial API docs
Loading...
Searching...
No Matches
comm_drv_file.h
Go to the documentation of this file.
1/***************************************************************************
2 * Copyright (C) 2022 by David Register *
3 * Copyright (C) 2022 Alec Leamas *
4 * *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
9 * *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
14 * *
15 * You should have received a copy of the GNU General Public License *
16 * along with this program; if not, see <https://www.gnu.org/licenses/>. *
17 **************************************************************************/
18
25#ifndef _COMM_DRV_FILE_H
26#define _COMM_DRV_FILE_H
27
28#include <memory>
29#include <sstream>
30#include <vector>
31#include <string>
32
33#include "model/comm_driver.h"
34
37public:
39 FileCommDriver(const std::string& opath, const std::string& ipath,
41
43 FileCommDriver(const std::string& opath);
44
45 virtual ~FileCommDriver() = default;
46
47 bool SendMessage(std::shared_ptr<const NavMsg> msg,
48 std::shared_ptr<const NavAddr> addr) override;
49
50 virtual std::shared_ptr<NavAddr> GetAddress();
51
52private:
53 std::string output_path;
54 std::string input_path;
55 DriverListener& listener;
56};
57
58#endif // COMM_DRV_FILE_H
Common interface for all drivers.
Definition comm_driver.h:65
Interface for handling incoming messages.
Definition comm_driver.h:50
Read and write data to/from files test driver
FileCommDriver(const std::string &opath, const std::string &ipath, DriverListener &l)
An instance which can write to file and play data from another.
FileCommDriver(const std::string &opath)
A write-only instance writing to file.
Communication driver layer.