blob: b62cadc951e5b5294a6561c226172309acffa0ad [file] [log] [blame]
Roman Khassrafe5ddab32016-12-04 16:19:40 +01001/* -*- c++ -*- */
2/*
3 * @file
Piotr Krysika6268a52017-08-23 16:02:19 +02004 * @author (C) 2016 by Roman Khassraf <rkhassraf@gmail.com>
Roman Khassrafe5ddab32016-12-04 16:19:40 +01005 * @section LICENSE
6 *
7 * Gr-gsm 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, or (at your option)
10 * any later version.
11 *
12 * Gr-gsm 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 gr-gsm; see the file COPYING. If not, write to
19 * the Free Software Foundation, Inc., 51 Franklin Street,
20 * Boston, MA 02110-1301, USA.
21 */
22
23#ifndef INCLUDED_GSM_EXTRACT_CMC_IMPL_H
24#define INCLUDED_GSM_EXTRACT_CMC_IMPL_H
25
26#include <grgsm/misc_utils/extract_cmc.h>
27#include <vector>
28
29namespace gr {
30 namespace gsm {
31 class extract_cmc_impl : public extract_cmc
32 {
33 private:
34 void process_messages(pmt::pmt_t msg);
35 std::vector<int> d_framenumbers;
36 std::vector<int> d_a5_versions;
Piotr Krysik8f121c12017-03-30 10:55:08 +020037 std::vector<int> d_start_ciphering;
Roman Khassrafe5ddab32016-12-04 16:19:40 +010038 public:
39 virtual std::vector<int> get_framenumbers();
40 virtual std::vector<int> get_a5_versions();
Piotr Krysik8f121c12017-03-30 10:55:08 +020041 virtual std::vector<int> get_start_ciphering();
Roman Khassrafe5ddab32016-12-04 16:19:40 +010042 extract_cmc_impl();
43 ~extract_cmc_impl();
44 };
45 } // namespace gsm
46} // namespace gr
47#endif /* INCLUDED_GSM_EXTRACT_CMC_IMPL_H */