GNU Radio Manual and C++ API Reference 3.7.14.0
The Free & Open Software Radio Ecosystem
short_to_char.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2012 Free Software Foundation, Inc.
4 *
5 * This file is part of GNU Radio
6 *
7 * GNU Radio 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 * GNU Radio 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 GNU Radio; 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_BLOCKS_SHORT_TO_CHAR_H
24#define INCLUDED_BLOCKS_SHORT_TO_CHAR_H
25
26#include <gnuradio/blocks/api.h>
27#include <gnuradio/sync_block.h>
28
29namespace gr {
30namespace blocks {
31
32/*!
33 * \brief Convert stream of shorts to a stream of chars.
34 *
35 * This block strips off the least significant byte from the
36 * short value.
37 *
38 * [0x00ff, 0x0ff0, 0xff00] => [0x00, 0x0f, 0xff]
39 *
40 * \ingroup type_converters_blk
41 *
42 * \details
43 * Converts \p vlen length vectors of input short samples to chars,
44 * dividing each element by 256.
45 */
46class BLOCKS_API short_to_char : virtual public sync_block
47{
48public:
49 // gr::blocks::short_to_char_ff::sptr
50 typedef boost::shared_ptr<short_to_char> sptr;
51
52 /*!
53 * Build a short to char block.
54 *
55 * \param vlen vector length of data streams.
56 */
57 static sptr make(size_t vlen = 1);
58};
59
60} /* namespace blocks */
61} /* namespace gr */
62
63#endif /* INCLUDED_BLOCKS_SHORT_TO_CHAR_H */
Convert stream of shorts to a stream of chars.
Definition: short_to_char.h:47
static sptr make(size_t vlen=1)
boost::shared_ptr< short_to_char > sptr
Definition: short_to_char.h:50
synchronous 1:1 input to output with history
Definition: sync_block.h:38
#define BLOCKS_API
Definition: gr-blocks/include/gnuradio/blocks/api.h:30
Include this header to use the message passing features.
Definition: basic_block.h:45