GNU Radio's SATNOGS Package
multi_format_msg_sink_impl.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * gr-satnogs: SatNOGS GNU Radio Out-Of-Tree Module
4  *
5  * Copyright (C) 2016,2017, Libre Space Foundation <http://librespacefoundation.org/>
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  */
20 
21 #ifndef INCLUDED_SATNOGS_MULTI_FORMAT_MSG_SINK_IMPL_H
22 #define INCLUDED_SATNOGS_MULTI_FORMAT_MSG_SINK_IMPL_H
23 
25 #include <fstream>
26 
27 namespace gr {
28 namespace satnogs {
29 
31 private:
32  void
33  msg_handler_stdout(pmt::pmt_t msg);
34  void
35  msg_handler_file(pmt::pmt_t msg);
36 
37  const size_t d_format;
38  const bool d_timestamp;
39  const bool d_stdout;
40  std::ofstream d_fos;
41 
42 public:
43  multi_format_msg_sink_impl(size_t format, bool timestamp,
44  bool out_stdout, const std::string &filepath);
45 
47 
48 };
49 
50 } // namespace satnogs
51 } // namespace gr
52 
53 #endif /* INCLUDED_SATNOGS_multi_format_MSG_SINK_IMPL_H */
54 
auto format(const std::locale &loc, const CharT *fmt, const Streamable &tp) -> decltype(to_stream(std::declval< std::basic_ostream< CharT > &>(), fmt, tp), std::basic_string< CharT >
Definition: date.h:5927
Block accepting clear text messages from various decoders. Its purpose is to forward these messages a...
Definition: multi_format_msg_sink.h:38
Definition: multi_format_msg_sink_impl.h:30
Definition: amsat_duv_decoder.h:29
multi_format_msg_sink_impl(size_t format, bool timestamp, bool out_stdout, const std::string &filepath)