AlsaPlayer  0.99.82
scope_plugin.h
Go to the documentation of this file.
1 /* scope_plugin.h
2  * Copyright (C) 1999-2002 Andy Lo A Foe <andy@alsaplayer.org>
3  *
4  * This file is part of AlsaPlayer
5  *
6  * AlsaPlayer 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 of the License, or
9  * (at your option) any later version.
10  *
11  * AlsaPlayer 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 this program; if not, see <http://www.gnu.org/licenses/>.
18  *
19 */
20 
21 #ifndef __scope_plugin_h__
22 #define __scope_plugin_h__
23 
24 /*
25  * Format of version number is 0x1000 + version
26  * So 0x1001 is *binary* format version 1
27  * THE VERSION NUMBER IS *NOT* A USER SERVICABLE PART!
28  */
29 
33 #define SCOPE_PLUGIN_BASE_VERSION 0x1000
34 
40 #define SCOPE_PLUGIN_VERSION (SCOPE_PLUGIN_BASE_VERSION + 7)
41 
50 #define SCOPE_NICE 10
51 
59 #define SCOPE_SLEEP 20000
60 
65 #define SCOPE_BG_RED 0
66 
71 #define SCOPE_BG_GREEN 0
72 
77 #define SCOPE_BG_BLUE 0
78 
84 typedef int scope_version_type;
85 
93 typedef int(*scope_init_type)(void *arg);
94 
99 typedef void(*scope_start_type)(void);
100 
106 typedef int(*scope_running_type)(void);
107 
112 typedef void(*scope_stop_type)(void);
113 
119 typedef void(*scope_shutdown_type)(void);
120 
133 typedef void(*scope_set_data_type)(void *buffer, int count);
134 
147 typedef void(*scope_set_fft_type)(void *buffer, int samples, int channels);
148 
153 typedef struct _scope_plugin
154 {
162  char *name;
167  char *author;
172  void *handle;
207 } scope_plugin;
208 
214 typedef scope_plugin*(*scope_plugin_info_type)(void);
215 
216 #ifdef __cplusplus
217 extern "C"
218 #endif
220 
221 #endif
scope_running_type running
Definition: scope_plugin.h:187
void(* scope_shutdown_type)(void)
Definition: scope_plugin.h:119
scope_stop_type stop
Definition: scope_plugin.h:192
void(* scope_start_type)(void)
Definition: scope_plugin.h:99
scope_start_type start
Definition: scope_plugin.h:182
scope_init_type init
Definition: scope_plugin.h:177
int(* scope_init_type)(void *arg)
Definition: scope_plugin.h:93
struct _scope_plugin scope_plugin
void(* scope_stop_type)(void)
Definition: scope_plugin.h:112
char * author
Definition: scope_plugin.h:167
int(* scope_running_type)(void)
Definition: scope_plugin.h:106
scope_plugin * scope_plugin_info(void)
void(* scope_set_fft_type)(void *buffer, int samples, int channels)
Definition: scope_plugin.h:147
char * name
Definition: scope_plugin.h:162
scope_set_data_type set_data
Definition: scope_plugin.h:201
void(* scope_set_data_type)(void *buffer, int count)
Definition: scope_plugin.h:133
scope_version_type version
Definition: scope_plugin.h:158
Definition: scope_plugin.h:153
scope_shutdown_type shutdown
Definition: scope_plugin.h:197
scope_set_fft_type set_fft
Definition: scope_plugin.h:206
int scope_version_type
Definition: scope_plugin.h:84
void * handle
Definition: scope_plugin.h:172