Mercurial > audlegacy-plugins
annotate src/evdev-plug/ed_bindings_store.c @ 984:df7b09989aee trunk
[svn] - We got a new plugin, captain!
- FileWriter is the ultimate plugin for dumping audio to files. It
should be the successor of Disk Writer and Out-Lame, as it supports the
same output formats as those (WAVE and MP3). The main advantage of
having only one file dumping plugin for many formats is that not every
plugin has to think about file handling (where to write files to, how to
call them etc.) that much anymore.
- FileWriter is also very extensible - adding new output formats should
be very easy.
| author | mf0102 |
|---|---|
| date | Mon, 30 Apr 2007 14:16:32 -0700 |
| parents | 5e46b57d1eda |
| children | 581a057768c2 |
| rev | line source |
|---|---|
|
422
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
1 /* |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
2 * |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
3 * Author: Giacomo Lozito <james@develia.org>, (C) 2005-2007 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
4 * |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
5 * This program is free software; you can redistribute it and/or modify it |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
6 * under the terms of the GNU General Public License as published by the |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
7 * Free Software Foundation; either version 2 of the License, or (at your |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
8 * option) any later version. |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
9 * |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
10 * This program is distributed in the hope that it will be useful, but |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
11 * WITHOUT ANY WARRANTY; without even the implied warranty of |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
13 * General Public License for more details. |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
14 * |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
15 * You should have received a copy of the GNU General Public License along |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
16 * with this program; if not, write to the Free Software Foundation, Inc., |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
18 * |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
19 */ |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
20 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
21 #include "ed_bindings_store.h" |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
22 #include "ed_common.h" |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
23 #include <stdlib.h> |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
24 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
25 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
26 /* currently, the bindings store is implemented as a string-based Hash Table; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
27 however, a change of implementation would only require to re-write the |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
28 public API defined in this source file; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
29 the rest of the code in EvDev-Plug doesn't care about the |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
30 implementation at all, and access it in a transparent fashion */ |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
31 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
32 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
33 gpointer |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
34 ed_bindings_store_new ( void ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
35 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
36 GHashTable *hashtable = g_hash_table_new_full( g_str_hash , g_str_equal , g_free , NULL ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
37 return hashtable; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
38 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
39 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
40 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
41 /* associate a triplet ev_type:ev_code:ev_value |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
42 (identifying an input event) to an action code in our bindings store; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
43 bindings store should keep its own copy of ed_inputevent_t objects! */ |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
44 gint |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
45 ed_bindings_store_insert ( gpointer hashtable_gp , |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
46 ed_inputevent_t * inputev , |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
47 gint action_code ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
48 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
49 gchar *input_str; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
50 input_str = g_strdup_printf( "%i:%i:%i" , inputev->type , inputev->code , inputev->value ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
51 g_hash_table_insert( (GHashTable*)hashtable_gp , input_str , GINT_TO_POINTER(action_code) ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
52 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
53 DEBUGMSG( "storing code %i -> event: %i:%i:%i\n" , |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
54 action_code , inputev->type, inputev->code, inputev->value ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
55 return 0; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
56 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
57 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
58 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
59 typedef struct |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
60 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
61 ed_bindings_store_foreach_func callback; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
62 gpointer data1; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
63 gpointer data2; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
64 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
65 hashfunc_foreach_container_t; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
66 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
67 static void |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
68 hashfunc_foreach( gpointer key , gpointer value , gpointer container_gp ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
69 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
70 hashfunc_foreach_container_t *container = container_gp; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
71 ed_inputevent_t inputev; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
72 gchar **toks; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
73 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
74 /* convert key (it's a string in the "type:code:value" form) back to ed_inputevent_t object */ |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
75 toks = g_strsplit( (gchar*)key , ":" , 3 ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
76 inputev.type = atoi( toks[0] ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
77 inputev.code = atoi( toks[1] ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
78 inputev.value = atoi( toks[2] ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
79 g_strfreev( toks ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
80 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
81 container->callback( &inputev , GPOINTER_TO_INT(value) , container->data1 , container->data2 ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
82 return; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
83 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
84 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
85 gint |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
86 ed_bindings_store_foreach ( gpointer hashtable_gp , |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
87 ed_bindings_store_foreach_func callback , |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
88 gpointer user_data1 , |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
89 gpointer user_data2 ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
90 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
91 hashfunc_foreach_container_t *container = g_malloc(sizeof(hashfunc_foreach_container_t)); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
92 container->callback = callback; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
93 container->data1 = user_data1; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
94 container->data2 = user_data2; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
95 g_hash_table_foreach( (GHashTable*)hashtable_gp , hashfunc_foreach , container ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
96 g_free( container ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
97 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
98 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
99 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
100 guint |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
101 ed_bindings_store_size ( gpointer hashtable_gp ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
102 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
103 return g_hash_table_size( (GHashTable*)hashtable_gp ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
104 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
105 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
106 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
107 gboolean |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
108 ed_bindings_store_lookup( gpointer hashtable_gp , |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
109 ed_inputevent_t * inputev , |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
110 gint * action_code ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
111 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
112 gpointer p; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
113 gchar *input_str; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
114 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
115 input_str = g_strdup_printf( "%i:%i:%i" , inputev->type , inputev->code , inputev->value ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
116 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
117 if ( g_hash_table_lookup_extended( (GHashTable*)hashtable_gp , input_str , NULL , &p ) == TRUE ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
118 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
119 *action_code = GPOINTER_TO_INT(p); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
120 g_free( input_str ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
121 return TRUE; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
122 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
123 else |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
124 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
125 g_free( input_str ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
126 return FALSE; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
127 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
128 } |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
129 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
130 |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
131 gint |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
132 ed_bindings_store_delete ( gpointer hashtable_gp ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
133 { |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
134 if ( hashtable_gp != NULL ) |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
135 g_hash_table_destroy( hashtable_gp ); |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
136 return 0; |
|
5e46b57d1eda
[svn] - added evdev-plug, written-from-scratch plugin that allows to control the player via event devices on linux systems
giacomo
parents:
diff
changeset
|
137 } |
