AlsaPlayer  0.99.81
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  * $Id: scope_plugin.h 1250 2007-07-08 14:17:12Z dominique_libre $
20  *
21 */
22 
23 #ifndef __scope_plugin_h__
24 #define __scope_plugin_h__
25 
26 /*
27  * Format of version number is 0x1000 + version
28  * So 0x1001 is *binary* format version 1
29  * THE VERSION NUMBER IS *NOT* A USER SERVICABLE PART!
30  */
31 
35 #define SCOPE_PLUGIN_BASE_VERSION 0x1000
36 
42 #define SCOPE_PLUGIN_VERSION (SCOPE_PLUGIN_BASE_VERSION + 7)
43 
52 #define SCOPE_NICE 10
53 
61 #define SCOPE_SLEEP 20000
62 
67 #define SCOPE_BG_RED 0
68 
73 #define SCOPE_BG_GREEN 0
74 
79 #define SCOPE_BG_BLUE 0
80 
86 typedef int scope_version_type;
87 
95 typedef int(*scope_init_type)(void *arg);
96 
101 typedef void(*scope_start_type)(void);
102 
108 typedef int(*scope_running_type)(void);
109 
114 typedef void(*scope_stop_type)(void);
115 
121 typedef void(*scope_shutdown_type)(void);
122 
135 typedef void(*scope_set_data_type)(void *buffer, int count);
136 
149 typedef void(*scope_set_fft_type)(void *buffer, int samples, int channels);
150 
155 typedef struct _scope_plugin
156 {
164  char *name;
169  char *author;
174  void *handle;
209 } scope_plugin;
210 
216 typedef scope_plugin*(*scope_plugin_info_type)(void);
217 
218 #endif
scope_running_type running
Definition: scope_plugin.h:189
void(* scope_shutdown_type)(void)
Definition: scope_plugin.h:121
scope_stop_type stop
Definition: scope_plugin.h:194
void(* scope_start_type)(void)
Definition: scope_plugin.h:101
scope_start_type start
Definition: scope_plugin.h:184
scope_init_type init
Definition: scope_plugin.h:179
int(* scope_init_type)(void *arg)
Definition: scope_plugin.h:95
struct _scope_plugin scope_plugin
void(* scope_stop_type)(void)
Definition: scope_plugin.h:114
char * author
Definition: scope_plugin.h:169
int(* scope_running_type)(void)
Definition: scope_plugin.h:108
void(* scope_set_fft_type)(void *buffer, int samples, int channels)
Definition: scope_plugin.h:149
char * name
Definition: scope_plugin.h:164
scope_set_data_type set_data
Definition: scope_plugin.h:203
void(* scope_set_data_type)(void *buffer, int count)
Definition: scope_plugin.h:135
scope_version_type version
Definition: scope_plugin.h:160
Definition: scope_plugin.h:155
scope_shutdown_type shutdown
Definition: scope_plugin.h:199
scope_set_fft_type set_fft
Definition: scope_plugin.h:208
int scope_version_type
Definition: scope_plugin.h:86
void * handle
Definition: scope_plugin.h:174