GNU Radio's SATELLITES Package
varlen_packet_tagger.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2017 Glenn Richardson <glenn@spacequest.com>
4
*
5
* This file is part of gr-satellites
6
*
7
* SPDX-License-Identifier: GPL-3.0-or-later
8
*
9
*/
10
11
#ifndef INCLUDED_VARLEN_PACKET_TAGGER_H
12
#define INCLUDED_VARLEN_PACKET_TAGGER_H
13
14
#include <gnuradio/block.h>
15
#include <gnuradio/endianness.h>
16
#include <pmt/pmt.h>
17
#include <
satellites/api.h
>
18
19
namespace
gr
{
20
namespace
satellites {
21
/*!
22
* \brief Examine input stream for sync tags and extract packet length.
23
* \ingroup satellites
24
*
25
* \details
26
* input: stream of bits (unpacked bytes) with sync tags
27
* output: a tagged stream of bits containing just the received packets
28
*
29
* This block uses the sync tag on the input stream to identify
30
* the header of packets. The length of each packet is extracted
31
* from the stream's header. The length of the header field and
32
* the endianness are parameters.
33
*
34
*/
35
class
SATELLITES_API
varlen_packet_tagger
:
virtual
public
gr::block
36
{
37
public
:
38
typedef
boost::shared_ptr<varlen_packet_tagger>
sptr
;
39
40
/*!
41
* \param sync_key
42
* \param packet_key
43
* \param length_field_size
44
* \param max_packet_size
45
* \param endianness
46
* \param use_golay For 24-bit golay headers
47
*/
48
static
sptr
make
(
const
std::string& sync_key,
49
const
std::string& packet_key,
50
int
length_field_size,
51
int
max_packet_size,
52
endianness_t endianness,
53
bool
use_golay);
54
};
55
56
}
// namespace satellites
57
}
// namespace gr
58
59
#endif
gr::satellites::varlen_packet_tagger::sptr
boost::shared_ptr< varlen_packet_tagger > sptr
Definition:
varlen_packet_tagger.h:38
gr::satellites::varlen_packet_tagger
Examine input stream for sync tags and extract packet length.
Definition:
varlen_packet_tagger.h:36
gr::satellites::varlen_packet_tagger::make
static sptr make(const std::string &sync_key, const std::string &packet_key, int length_field_size, int max_packet_size, endianness_t endianness, bool use_golay)
gr
Definition:
ao40_rs_decoder.h:17
SATELLITES_API
#define SATELLITES_API
Definition:
api.h:31
api.h
include
satellites
varlen_packet_tagger.h
Generated by
1.8.18