Ardour
9.0-pre0-582-g084a23a80d
gdither_types_internal.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2002 Steve Harris <steve@plugin.org.uk>
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation; either version 2 of the License, or
7
* (at your option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with this program; if not, write to the Free Software
16
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
*
18
*/
19
20
#ifndef GDITHER_TYPES_H
21
#define GDITHER_TYPES_H
22
23
#include <stdint.h>
24
25
#ifdef __cplusplus
26
extern
"C"
{
27
#endif
28
29
#define GDITHER_SH_BUF_SIZE 8
30
#define GDITHER_SH_BUF_MASK 7
31
32
/* this must agree with whats in gdither_types.h */
33
typedef
enum
{
34
GDitherNone
= 0,
35
GDitherRect
,
36
GDitherTri
,
37
GDitherShaped
38
}
GDitherType
;
39
40
typedef
enum
{
41
GDither8bit
= 8,
42
GDither16bit
= 16,
43
GDither32bit
= 32,
44
GDitherFloat
= 25,
45
GDitherDouble
= 54,
46
GDitherPerformanceTest
= 23
47
}
GDitherSize
;
48
49
typedef
struct
{
50
uint32_t
phase
;
51
float
buffer[
GDITHER_SH_BUF_SIZE
];
52
}
GDitherShapedState
;
53
54
typedef
struct
GDither_s
{
55
GDitherType
type
;
56
uint32_t
channels
;
57
uint32_t
bit_depth
;
58
uint32_t
dither_depth
;
59
float
scale
;
60
uint32_t
post_scale
;
61
float
post_scale_fp
;
62
float
bias
;
63
64
int
clamp_u
;
65
66
int
clamp_l
;
67
float
*
tri_state
;
68
GDitherShapedState
*
shaped_state
;
69
} *
GDither
;
70
71
#ifdef __cplusplus
72
}
73
#endif
74
75
#endif
GDitherType
GDitherType
Definition:
gdither_types.h:27
GDitherType
GDitherType
Definition:
gdither_types_internal.h:33
GDitherRect
@ GDitherRect
Definition:
gdither_types_internal.h:35
GDitherNone
@ GDitherNone
Definition:
gdither_types_internal.h:34
GDitherShaped
@ GDitherShaped
Definition:
gdither_types_internal.h:37
GDitherTri
@ GDitherTri
Definition:
gdither_types_internal.h:36
GDitherSize
GDitherSize
Definition:
gdither_types_internal.h:40
GDitherFloat
@ GDitherFloat
Definition:
gdither_types_internal.h:44
GDitherPerformanceTest
@ GDitherPerformanceTest
Definition:
gdither_types_internal.h:46
GDither16bit
@ GDither16bit
Definition:
gdither_types_internal.h:42
GDitherDouble
@ GDitherDouble
Definition:
gdither_types_internal.h:45
GDither32bit
@ GDither32bit
Definition:
gdither_types_internal.h:43
GDither8bit
@ GDither8bit
Definition:
gdither_types_internal.h:41
GDITHER_SH_BUF_SIZE
#define GDITHER_SH_BUF_SIZE
Definition:
gdither_types_internal.h:29
GDither
struct GDither_s * GDither
GDitherShapedState
Definition:
gdither_types_internal.h:49
GDitherShapedState::phase
uint32_t phase
Definition:
gdither_types_internal.h:50
GDither_s
Definition:
gdither_types_internal.h:54
GDither_s::type
GDitherType type
Definition:
gdither_types_internal.h:55
GDither_s::shaped_state
GDitherShapedState * shaped_state
Definition:
gdither_types_internal.h:68
GDither_s::bias
float bias
Definition:
gdither_types_internal.h:62
GDither_s::clamp_u
int clamp_u
Definition:
gdither_types_internal.h:64
GDither_s::tri_state
float * tri_state
Definition:
gdither_types_internal.h:67
GDither_s::dither_depth
uint32_t dither_depth
Definition:
gdither_types_internal.h:58
GDither_s::bit_depth
uint32_t bit_depth
Definition:
gdither_types_internal.h:57
GDither_s::post_scale_fp
float post_scale_fp
Definition:
gdither_types_internal.h:61
GDither_s::scale
float scale
Definition:
gdither_types_internal.h:59
GDither_s::clamp_l
int clamp_l
Definition:
gdither_types_internal.h:66
GDither_s::post_scale
uint32_t post_scale
Definition:
gdither_types_internal.h:60
GDither_s::channels
uint32_t channels
Definition:
gdither_types_internal.h:56
libs
audiographer
private
gdither
gdither_types_internal.h
Generated on Thu Dec 26 2024 05:38:50 for Ardour by
1.9.1