GNU Radio C++ API Reference: cc_common.h Source File

| GNU Radio C++ API Reference 3.10.12.0 The Free & Open Software Radio Ecosystem |

Loading...
Searching...
No Matches
cc_common.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2013-2014 Free Software Foundation, Inc.
4 *
5 * This file is part of GNU Radio
6 *
7 * SPDX-License-Identifier: GPL-3.0-or-later
8 *
9 */
10
11#ifndef INCLUDED_FEC_CC_COMMON_H
12#define INCLUDED_FEC_CC_COMMON_H
13
14#include <volk/volk_alloc.hh>
15
16 typedef enum _cc_mode_t {
17 CC_STREAMING = 0,
18 CC_TERMINATED,
19 CC_TRUNCATED,
20 CC_TAILBITING
21} cc_mode_t;
22
23 typedef union {
24 // decision_t is a BIT vector
25 unsigned char* t;
26 unsigned int* w;
27 unsigned short* s;
28 unsigned char* c;
29} decision_t;
30
31 typedef union {
32 unsigned char* t;
33} metric_t;
34
35 struct v {
36 volk::vector<unsigned char> metrics;
37 metric_t old_metrics, new_metrics, metrics1,
38 metrics2; /* Pointers to path metrics, swapped on every bit */
39 volk::vector<unsigned char> decisions;
40};
41
42#endif /*INCLUDED_FEC_CC_COMMON_H*/
cc_mode_t
enum _cc_mode_t cc_mode_t
_cc_mode_t
_cc_mode_t
Definition cc_common.h:16
CC_STREAMING
@ CC_STREAMING
Definition cc_common.h:17
CC_TAILBITING
@ CC_TAILBITING
Definition cc_common.h:20
CC_TERMINATED
@ CC_TERMINATED
Definition cc_common.h:18
CC_TRUNCATED
@ CC_TRUNCATED
Definition cc_common.h:19
v
Definition cc_common.h:35
v::metrics1
metric_t metrics1
Definition cc_common.h:37
v::metrics2
metric_t metrics2
Definition cc_common.h:38
v::new_metrics
metric_t new_metrics
Definition cc_common.h:37
v::metrics
volk::vector< unsigned char > metrics
Definition cc_common.h:36
v::decisions
volk::vector< unsigned char > decisions
Definition cc_common.h:39
v::old_metrics
metric_t old_metrics
Definition cc_common.h:37
decision_t
Definition cc_common.h:23
decision_t::s
unsigned short * s
Definition cc_common.h:27
decision_t::c
unsigned char * c
Definition cc_common.h:28
decision_t::w
unsigned int * w
Definition cc_common.h:26
decision_t::t
unsigned char * t
Definition cc_common.h:25
metric_t
Definition cc_common.h:31
metric_t::t
unsigned char * t
Definition cc_common.h:32