Mercurial > hg > xemacs-beta
annotate src/hpplay.c @ 4953:304aebb79cd3
function renamings to track names of char typedefs
-------------------- ChangeLog entries follow: --------------------
man/ChangeLog addition:
2010-01-27 Ben Wing <ben@xemacs.org>
* internals/internals.texi (lrecords):
* internals/internals.texi (The DFC API):
* internals/internals.texi (Conversion to and from External Data):
* internals/internals.texi (Mule-izing Code):
* internals/internals.texi (Pervasive changes throughout XEmacs sources):
* internals/internals.texi (Ben's README):
* internals/internals.texi (Future Work -- Localized Text/Messages):
* emodules.texi (Defining Variables):
Rename:
write_c_string -> write_cistring
build_intstring -> build_istring
build_string -> build_cistring
build_ext_string -> build_extstring
make_ext_string -> make_extstring
buffer_insert_c_string -> buffer_insert_ascstring
intern_int -> intern_istring
See comment in src/ChangeLog about this.
modules/ChangeLog addition:
2010-01-27 Ben Wing <ben@xemacs.org>
* postgresql/postgresql.c (print_pgconn):
* postgresql/postgresql.c (print_pgresult):
* postgresql/postgresql.c (Fpq_conn_defaults):
* postgresql/postgresql.c (Fpq_pgconn):
* postgresql/postgresql.c (Fpq_res_status):
* postgresql/postgresql.c (Fpq_result_error_message):
* postgresql/postgresql.c (Fpq_fname):
* postgresql/postgresql.c (Fpq_get_value):
* postgresql/postgresql.c (Fpq_cmd_status):
* postgresql/postgresql.c (Fpq_cmd_tuples):
* postgresql/postgresql.c (Fpq_notifies):
* postgresql/postgresql.c (Fpq_get_line):
* postgresql/postgresql.c (Fpq_get_line_async):
* postgresql/postgresql.c (FROB):
* postgresql/postgresql.c (init_postgresql_from_environment):
* ldap/eldap.c:
* ldap/eldap.c (Fldap_open):
* ldap/eldap.c (Fldap_search_basic):
* canna/canna_api.c:
* canna/canna_api.c (make_euc_string):
Rename:
write_c_string -> write_cistring
build_intstring -> build_istring
build_string -> build_cistring
build_ext_string -> build_extstring
make_ext_string -> make_extstring
buffer_insert_c_string -> buffer_insert_ascstring
intern_int -> intern_istring
See comment in src/ChangeLog about this.
src/ChangeLog addition:
2010-01-27 Ben Wing <ben@xemacs.org>
* .gdbinit.in.in:
* README:
* abbrev.c (write_abbrev):
* abbrev.c (describe_abbrev):
* alloc.c (make_extstring):
* alloc.c (build_istring):
* alloc.c (build_cistring):
* alloc.c (build_ascstring):
* alloc.c (build_extstring):
* alloc.c (build_msg_istring):
* alloc.c (build_defer_istring):
* buffer.c (Fgenerate_new_buffer_name):
* buffer.c (init_buffer_2):
* console-tty.c (tty_init_console):
* console-x.c (get_display_arg_connection):
* console-x.c (x_perhaps_init_unseen_key_defaults):
* database.c (dbm_map):
* database.c (dbm_get):
* database.c (berkdb_get):
* database.c (berkdb_map):
* device-gtk.c (FROB_PIXMAP):
* device-gtk.c (Fgtk_style_info):
* device-msw.c (msprinter_default_printer):
* device-msw.c (sync_printer_with_devmode):
* device-x.c (coding_system_of_xrm_database):
* device-x.c (x_init_device):
* device-x.c (signal_if_x_error):
* device-x.c (Fx_get_resource):
* device-x.c (Fx_server_vendor):
* device-x.c (Fx_get_font_path):
* dialog-x.c (maybe_run_dbox_text_callback):
* doc.c (extract_object_file_name):
* doc.c (unparesseuxify_doc_string):
* doc.c (get_doc_string):
* doc.c (get_object_file_name):
* doc.c (Fdocumentation):
* doc.c (Fsnarf_documentation):
* doc.c (Fsubstitute_command_keys):
* editfns.c (init_editfns):
* editfns.c (Ftemp_directory):
* editfns.c (Fuser_login_name):
* editfns.c (Fuser_real_login_name):
* editfns.c (Fuser_home_directory):
* editfns.c (Fformat_time_string):
* editfns.c (Fcurrent_time_string):
* editfns.c (Fcurrent_time_zone):
* emacs.c:
* emacs.c (main_1):
* emodules.c (Flist_modules):
* emodules.c (emodules_load):
* emodules.c (emodules_doc_sym):
* emodules.c (vars_of_module):
* event-Xt.c (x_has_keysym):
* event-gtk.c (emacs_gtk_format_magic_event):
* event-gtk.c (dragndrop_data_received):
* event-gtk.c (gtk_reset_key_mapping):
* event-msw.c (mswindows_dde_callback):
* event-msw.c (mswindows_wnd_proc):
* faces.c (complex_vars_of_faces):
* file-coding.c (find_coding_system):
* file-coding.c (setup_eol_coding_systems):
* file-coding.c (make_coding_system_1):
* file-coding.c (snarf_coding_system):
* fileio.c:
* fileio.c (lisp_strerror):
* fileio.c (Ffile_name_directory):
* fileio.c (Ffile_name_as_directory):
* fileio.c (Fdirectory_file_name):
* fileio.c (if):
* fileio.c (Ffile_symlink_p):
* fileio.c (Fencrypt_string):
* fileio.c (Fdecrypt_string):
* filelock.c (lock_file):
* filelock.c (Ffile_locked_p):
* floatfns.c (matherr):
* font-mgr.c (build_fcapi_string):
* font-mgr.c (make_xlfd_font_regexp):
* frame-msw.c (mswindows_window_id):
* frame-msw.c (mswindows_frame_property):
* frame-x.c:
* frame-x.c (color_to_string):
* frame-x.c (maybe_set_frame_title_format):
* frame-x.c (x_cde_transfer_callback):
* frame-x.c (Fx_window_id):
* glade.c (connector):
* glade.c (Fglade_xml_textdomain):
* glade.c (syms_of_glade):
* glyphs-eimage.c (jpeg_instantiate):
* glyphs-eimage.c (png_instantiate):
* glyphs-eimage.c (tiff_instantiate):
* glyphs-gtk.c (font_instantiate):
* glyphs-gtk.c (BUILD_GLYPH_INST):
* glyphs-x.c (x_locate_pixmap_file):
* glyphs-x.c (font_instantiate):
* glyphs-x.c (x_widget_property):
* glyphs-x.c (BUILD_GLYPH_INST):
* glyphs.c (print_image_instance):
* glyphs.c (bitmap_to_lisp_data):
* glyphs.c (pixmap_to_lisp_data):
* gpmevent.c (turn_off_gpm):
* gpmevent.c (Fgpm_enabled_p):
* gpmevent.c (Fgpm_enable):
* gtk-glue.c (__make_string_mapper):
* gtk-glue.c (xemacs_gtklist_to_list):
* gtk-xemacs.c (FROB_FACE):
* gtk-xemacs.c (xemacs_gtk_convert_color):
* hpplay.c (player_error_internal):
* hpplay.c (myHandler):
* insdel.c (buffer_insert_ascstring_1):
* insdel.h:
* insdel.h (buffer_insert_ascstring):
* intl.c (Fcurrent_locale):
* intl.c (Fset_current_locale):
* keymap.c (make_key_description):
* keymap.c (Ftext_char_description):
* keymap.c (describe_command):
* keymap.c (describe_map):
* lisp.h:
* lread.c:
* lread.c (locate_file_in_directory_mapper):
* lread.c (locate_file_construct_suffixed_files_mapper):
* mule-charset.c (Fmake_charset):
* nt.c (Fmswindows_short_file_name):
* nt.c (Fmswindows_long_file_name):
* objects-gtk.c (__get_gtk_font_truename):
* objects-gtk.c (__gtk_font_list_internal):
* objects-msw.c (font_enum_callback_2):
* objects-msw.c (create_hfont_from_font_spec):
* objects-msw.c (mswindows_font_list):
* objects-msw.c (mswindows_font_spec_matches_charset_stage_2):
* objects-tty.c (tty_initialize_font_instance):
* objects-x.c (x_font_truename):
* objects-x.c (x_font_instance_truename):
* objects-x.c (x_font_instance_properties):
* objects-x.c (x_font_list):
* print.c (write_cistring):
* print.c (print_vector_internal):
* print.c (print_cons):
* process-nt.c (nt_canonicalize_host_name):
* process-unix.c (unix_create_process):
* process-unix.c (unix_canonicalize_host_name):
* process.c (status_message):
* process.c (status_notify):
* process.c (init_xemacs_process):
* process.c (syms_of_process):
* redisplay-tty.c (term_get_fkeys_1):
* redisplay-tty.c (CONDITIONAL_REASSIGN):
* search.c (compile_pattern_1):
* select-common.h (selection_data_to_lisp_data):
* select-gtk.c (atom_to_symbol):
* select-gtk.c (PROCESSING_GTK_CODE):
* select-msw.c (mswindows_get_foreign_selection):
* select-x.c (x_atom_to_symbol):
* select-x.c (Fx_get_cutbuffer_internal):
* symbols.c (intern_istring):
* symbols.c (intern):
* symbols.c (intern_converting_underscores_to_dashes):
* symbols.c (Fintern):
* sysdep.c (init_system_name):
* sysdll.c (dll_error):
* sysdll.c (dll_open):
* syswindows.h:
* syswindows.h (build_tstr_string):
* tests.c (DFC_CHECK_LENGTH):
* tests.c (DFC_CHECK_CONTENT):
* tests.c (DFC_RESULT_PASS):
* tests.c (Ftest_data_format_conversion):
* text.c:
* text.c (new_dfc_convert_now_damn_it):
* text.h:
* text.h (build_wext_string):
* tooltalk.c (tt_build_c_string):
* tooltalk.c (Ftooltalk_default_procid):
* tooltalk.c (Ftooltalk_default_session):
* tooltalk.c (init_tooltalk):
* ui-byhand.c (Fgtk_clist_get_text):
* ui-byhand.c (Fgtk_clist_get_pixtext):
* ui-byhand.c (Fgtk_label_get):
* ui-byhand.c (Fgtk_notebook_query_tab_label_packing):
* ui-gtk.c (emacs_gtk_object_printer):
* ui-gtk.c (emacs_gtk_boxed_printer):
* ui-gtk.c (gtk_type_to_lisp):
* ui-gtk.c (symbol_to_enum):
* ui-gtk.c (enum_to_symbol):
* unexaix.c (report_error):
* unexaix.c (ERROR0):
* unexec.c (report_error):
* unexec.c (ERROR0):
* unicode.c (unicode_to_ichar):
* win32.c (tstr_to_local_file_format):
* win32.c (Fmswindows_cygwin_to_win32_path):
* win32.c (struct read_link_hash):
* xemacs.def.in.in:
Rename:
write_c_string -> write_cistring
build_intstring -> build_istring
build_string -> build_cistring
build_ext_string -> build_extstring
make_ext_string -> make_extstring
buffer_insert_c_string -> buffer_insert_ascstring
intern_int -> intern_istring
These functions have been renamed so that the naming harmonizes
with the typedefs for strings: `cistring' along with CIbyte *,
`istring' along with Ibyte *, `extstring' along with Extbyte *,
`ascstring' along with Ascbyte *.
Also make buffer_insert_ascstring take Ascbyte * and assert
that its argument is ASCII.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Wed, 27 Jan 2010 00:35:36 -0600 |
parents | 19a72041c5ed |
children | 4aebb0131297 |
rev | line source |
---|---|
428 | 1 /* Copyright (C) 1993 Free Software Foundation, Inc. |
2 | |
3 This file is part of XEmacs. | |
4 | |
5 XEmacs is free software; you can redistribute it and/or modify it | |
6 under the terms of the GNU General Public License as published by the | |
7 Free Software Foundation; either version 2, or (at your option) any | |
8 later version. | |
9 | |
10 XEmacs is distributed in the hope that it will be useful, but WITHOUT | |
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
12 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
13 for more details. | |
14 | |
15 You should have received a copy of the GNU General Public License | |
16 along with XEmacs; see the file COPYING. If not, write to | |
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
18 Boston, MA 02111-1307, USA. */ | |
19 | |
20 /* Synched up with: Not in FSF. */ | |
21 | |
563 | 22 /* This file Mule-ized by Ben Wing, 5-15-01. */ |
23 | |
428 | 24 |
25 /*** | |
26 NAME | |
27 hpplay | |
28 PURPOSE | |
29 Play .au sound files on hp9000s700 | |
30 BUGS | |
31 I have been unable to figure out how to use the volume feature, so no | |
444 | 32 attempt has been made to honor the volume arg of play_sound_* |
428 | 33 This means that all sounds are played at 100%. |
34 The gain parameter can be set by using the hp-play-gain variable. | |
35 | |
36 NOTES | |
37 This file is mostly based on the player program found in the examples | |
38 directory of the audio software delivered on our machines. The path I | |
39 found it under was /usr/audio/examples/player.c | |
40 This file contained no credits and no copyrights. The original fileheader | |
41 is given below. | |
42 HISTORY | |
43 lynbech - Feb 10, 1993: Created. | |
44 ***/ | |
45 | |
46 /* ORIGINAL FILEHEADER: | |
47 * player - command-line audio file player | |
48 * Aug. 28 1991 | |
49 * by three unknown, unsung audio programmers | |
50 * (well, only two are unsung) | |
51 */ | |
52 | |
53 #include <config.h> | |
54 #include "lisp.h" | |
55 | |
563 | 56 #include "sound.h" |
442 | 57 |
428 | 58 #include <Alib.h> |
59 #include <CUlib.h> | |
60 | |
442 | 61 |
428 | 62 Lisp_Object Vhp_play_server; |
63 Lisp_Object Vhp_play_speaker; | |
458 | 64 Fixnum hp_play_gain; |
428 | 65 |
66 /* Functions */ | |
67 | |
68 /* error handling */ | |
563 | 69 void |
2367 | 70 player_error_internal (Audio * audio, Ascbyte * text, long errorCode) |
428 | 71 { |
563 | 72 Extbyte errorbuff[132]; |
867 | 73 Ibyte *interr; |
428 | 74 |
563 | 75 AGetErrorText (audio, errorCode, errorbuff, 131); |
4834
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4759
diff
changeset
|
76 EXTERNAL_TO_C_STRING (errorbuf, interr, Qerror_message_encoding); |
563 | 77 |
4953
304aebb79cd3
function renamings to track names of char typedefs
Ben Wing <ben@xemacs.org>
parents:
4952
diff
changeset
|
78 signal_error (Qsound_error, text, build_istring (interr)); |
428 | 79 } |
80 | |
563 | 81 long |
82 myHandler( Audio * audio, AErrorEvent * err_event) | |
428 | 83 { |
84 player_error_internal(audio, "Internal sound error", err_event->error_code); | |
85 return 1; /* Must return something, was orig. an exit */ | |
86 } | |
87 | |
88 /* Playing */ | |
89 void | |
2286 | 90 play_bucket_internal( Audio *audio, SBucket *pSBucket, long UNUSED (volume)) |
428 | 91 { |
563 | 92 SBPlayParams playParams; |
93 AGainEntry gainEntry; | |
94 ATransID xid; | |
95 long status; | |
96 | |
97 playParams.priority = APriorityNormal; /* normal priority */ | |
428 | 98 |
563 | 99 /* |
100 * We can't signal an error, because all h*ll would break loose if | |
101 * we did. | |
102 */ | |
103 if (EQ (Vhp_play_speaker, Qexternal)) | |
104 gainEntry.u.o.out_dst = AODTMonoJack; | |
105 else | |
106 gainEntry.u.o.out_dst = AODTMonoIntSpeaker; | |
428 | 107 |
563 | 108 gainEntry.u.o.out_ch = AOCTMono; |
109 gainEntry.gain = AUnityGain; | |
110 playParams.gain_matrix.type = AGMTOutput; /* gain matrix */ | |
111 playParams.gain_matrix.num_entries = 1; | |
112 playParams.gain_matrix.gain_entries = &gainEntry; | |
113 playParams.play_volume = hp_play_gain; /* play volume */ | |
114 playParams.pause_first = False; /* don't pause */ | |
115 playParams.start_offset.type = ATTSamples; /* start offset 0 */ | |
116 playParams.start_offset.u.samples = 0; | |
117 playParams.duration.type = ATTFullLength; /* play entire sample */ | |
118 playParams.loop_count = 1; /* play sample just once */ | |
119 playParams.previous_transaction = 0; /* no linked transaction */ | |
120 playParams.event_mask = 0; /* don't solicit any events */ | |
428 | 121 |
563 | 122 /* |
123 * play the sound bucket | |
124 */ | |
125 xid = APlaySBucket( audio, pSBucket, &playParams, NULL ); | |
428 | 126 |
563 | 127 /* |
128 * set close mode to prevent playback from stopping | |
129 * when we close audio connection | |
130 */ | |
131 ASetCloseDownMode( audio, AKeepTransactions, &status ); | |
428 | 132 |
563 | 133 /* |
134 * That's all, folks! | |
135 * Always destroy bucket and close connection. | |
136 */ | |
137 ADestroySBucket( audio, pSBucket, &status ); | |
138 ACloseAudio( audio, &status ); | |
428 | 139 } |
140 | |
141 void | |
563 | 142 play_sound_file (Extbyte * sound_file, int volume) |
428 | 143 { |
563 | 144 sbucket *pSBucket; |
145 Audio *audio; | |
146 long status; | |
147 AErrorHandler prevHandler; /* pointer to previous handler */ | |
148 Extbyte *server; | |
428 | 149 |
563 | 150 if (STRINGP (Vhp_play_server)) |
4834
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4759
diff
changeset
|
151 LISP_STRING_TO_EXTERNAL (Vhp_play_server, server, |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4759
diff
changeset
|
152 Qunix_host_name_encoding); |
563 | 153 else |
428 | 154 server = ""; |
155 | |
563 | 156 /* |
157 * open audio connection | |
158 */ | |
159 audio = AOpenAudio( server, &status ); | |
160 if( status ) | |
161 { | |
162 player_error_internal( audio, "Open audio failed", status ); | |
428 | 163 } |
164 | |
563 | 165 /* replace default error handler */ |
166 prevHandler = ASetErrorHandler(myHandler); | |
428 | 167 |
563 | 168 /* |
169 * Load the audio file into a sound bucket | |
170 */ | |
428 | 171 |
563 | 172 pSBucket = ALoadAFile( audio, sound_file, AFFUnknown, 0, NULL, NULL ); |
428 | 173 |
563 | 174 /* |
175 * Play the bucket | |
176 */ | |
428 | 177 |
563 | 178 play_bucket_internal(audio, pSBucket, volume); |
428 | 179 |
563 | 180 ASetErrorHandler(prevHandler); |
428 | 181 } |
182 | |
183 | |
442 | 184 int |
2367 | 185 play_sound_data (Binbyte * data, int UNUSED (length), int volume) |
428 | 186 { |
563 | 187 SBucket *pSBucket; |
188 Audio *audio; | |
189 AErrorHandler prevHandler; | |
190 SunHeader *header; | |
191 long status; | |
192 Extbyte *server; | |
193 int result; | |
428 | 194 |
563 | 195 /* #### Finish this to return an error code. |
196 This function signal a lisp error. How consistent with the rest. | |
197 What if this function is needed in doing the beep for the error? | |
442 | 198 |
563 | 199 Apparently the author of this didn't read the comment in |
200 Fplay_sound. | |
201 */ | |
442 | 202 |
203 | |
563 | 204 if (STRINGP (Vhp_play_server)) |
4834
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4759
diff
changeset
|
205 LISP_STRING_TO_EXTERNAL (Vhp_play_server, server, |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4759
diff
changeset
|
206 Qunix_host_name_encoding); |
563 | 207 else |
428 | 208 server = ""; |
209 | |
563 | 210 /* open audio connection */ |
211 audio = AOpenAudio( server, &status ); | |
212 if(status) | |
213 { | |
214 player_error_internal( audio, "Open audio failed", status ); | |
428 | 215 } |
216 | |
563 | 217 /* replace default error handler */ |
218 prevHandler = ASetErrorHandler (myHandler); | |
428 | 219 |
563 | 220 /* Create sound bucket */ |
221 header = (SunHeader *) data; | |
428 | 222 |
563 | 223 pSBucket = ACreateSBucket(audio, NULL, NULL, &status); |
224 if (status) | |
225 player_error_internal( audio, "Bucket creation failed", status ); | |
428 | 226 |
2367 | 227 APutSBucketData(audio, pSBucket, 0, (CBinbyte *) (data + header->header_size), header->data_length, &status); |
428 | 228 |
563 | 229 if (status) |
230 player_error_internal( audio, "Audio data copy failed", status ); | |
428 | 231 |
563 | 232 /* Play sound */ |
233 play_bucket_internal(audio, pSBucket, volume); | |
428 | 234 |
563 | 235 ASetErrorHandler(prevHandler); |
236 if (status) | |
237 player_error_internal( audio, "Audio data copy failed", status ); | |
442 | 238 |
563 | 239 return 1; |
428 | 240 } |
241 | |
242 void | |
243 vars_of_hpplay (void) | |
244 { | |
245 DEFVAR_LISP ("hp-play-server", &Vhp_play_server /* | |
246 A string, determining which server to play sound at. | |
247 Note that this is specific to the HP sound implementation, and you should | |
248 not make your functions depend on it. | |
249 */ ); | |
250 | |
251 Vhp_play_server = Qnil; | |
252 | |
253 DEFVAR_LISP ("hp-play-speaker", &Vhp_play_speaker /* | |
254 If this variable is the symbol `external', sound is played externally. | |
255 If the environment variable SPEAKER is set, that value is used for | |
256 initializing this variable. | |
257 Note that this is specific to the HP sound implementation, and you should | |
258 not make your functions depend on it. | |
259 */ ); | |
260 | |
261 Vhp_play_speaker = intern ("internal"); | |
262 | |
563 | 263 DEFVAR_INT ("hp-play-gain", &hp_play_gain /* |
428 | 264 Global gain value for playing sounds. |
265 Default value is AUnityGain which means keep level. | |
266 Please refer to the HP documentation, for instance in | |
267 `Using the Audio Application Program Interface', for details on how to | |
268 interpret this variable. | |
269 Note that this is specific to the HP sound implementation, and you should | |
270 not make your functions depend on it. | |
271 */ ); | |
272 | |
273 hp_play_gain = AUnityGain; | |
274 } | |
275 | |
276 void | |
277 init_hpplay (void) | |
278 { | |
771 | 279 if (egetenv ("SPEAKER")) |
280 Vhp_play_speaker = intern (egetenv ("SPEAKER")); | |
428 | 281 } |