GNU Radio's MAC Package
burst_tagger_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2013 Bastian Bloessl <bloessl@ccs-labs.org>.
4 *
5 * This 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 3, or (at your option)
8 * any later version.
9 *
10 * This software 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 software; see the file COPYING. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street,
18 * Boston, MA 02110-1301, USA.
19 */
20
21#ifndef INCLUDED_MAC_BURST_TAGGER_IMPL_H
22#define INCLUDED_MAC_BURST_TAGGER_IMPL_H
23
24#include <mac/burst_tagger.h>
25
26namespace gr {
27namespace mac {
28
30private:
31 void add_eob(uint64_t item);
32 void add_sob(uint64_t item);
33
34 pmt::pmt_t d_tag_name;
35 int d_copy, d_current_length;
36 unsigned int d_mult, d_pad_front, d_pad_rear;
37 unsigned int d_to_pad_front/*, d_to_pad_rear*/;
38 bool d_in_burst, d_drop_residue;
39public:
40 burst_tagger_impl(const std::string& tag_name = "length", unsigned int mult = 1, unsigned int pad_front = 0, unsigned int pad_rear = 0, bool drop_residue = true);
42
43 void forecast (int noutput_items, gr_vector_int &ninput_items_required);
44 int general_work(int noutput_items, gr_vector_int& ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items);
45};
46
47} // namespace mac
48} // namespace gr
49
50#endif /* INCLUDED_MAC_BURST_TAGGER_IMPL_H */
Definition: burst_tagger_impl.h:29
burst_tagger_impl(const std::string &tag_name="length", unsigned int mult=1, unsigned int pad_front=0, unsigned int pad_rear=0, bool drop_residue=true)
void forecast(int noutput_items, gr_vector_int &ninput_items_required)
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
Definition: burst_tagger.h:30
Definition: burst_tagger.h:27