GNU Radio 3.7.2git-79-g931a7b07 C++ API
volk_machines.tmpl.h
Go to the documentation of this file.
1
/*
2
* Copyright 2011-2012 Free Software Foundation, Inc.
3
*
4
* This file is part of GNU Radio
5
*
6
* GNU Radio is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 3, or (at your option)
9
* any later version.
10
*
11
* GNU Radio is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with GNU Radio; see the file COPYING. If not, write to
18
* the Free Software Foundation, Inc., 51 Franklin Street,
19
* Boston, MA 02110-1301, USA.
20
*/
21
22
#ifndef INCLUDED_LIBVOLK_MACHINES_H
23
#define INCLUDED_LIBVOLK_MACHINES_H
24
25
#include <
volk/volk_common.h
>
26
#include <
volk/volk_typedefs.h
>
27
28
#include <
stdbool.h
>
29
#include <stdlib.h>
30
31
__VOLK_DECL_BEGIN
32
33
struct
volk_machine
{
34
const
unsigned
int
caps
;
//capabilities (i.e., archs compiled into this machine, in the volk_get_lvarch format)
35
const
char
*
name
;
36
const
size_t
alignment
;
//the maximum byte alignment required for functions in this library
37
#for $kern in $kernels
38
const
char
*$(
kern
.name)
_name
;
39
const
char
*$(
kern
.name)
_impl_names
[$(len($archs))];
40
const
int
$(
kern
.name)_impl_deps[$(len($archs))];
41
const
bool
$(
kern
.name)_impl_alignment[$(len($archs))];
42
const
$(
kern
.pname) $(
kern
.name)_impls[$(len($archs))];
43
const
size_t
$(
kern
.
name
)_n_impls;
44
#end for
45
};
46
47
#for $machine in $machines
48
#ifdef LV_MACHINE_$(machine.name.upper())
49
extern
struct
volk_machine
volk_machine_$(machine.
name
);
50
#endif
51
#end for
52
53
__VOLK_DECL_END
54
55
#endif //INCLUDED_LIBVOLK_MACHINES_H
gnuradio
volk
tmpl
volk_machines.tmpl.h
Generated by
1.8.1.1