Merge branch 'new-sound-api'
[projects/chimara/chimara.git] / docs / reference / chimara-sections.txt
1 <SECTION>
2 <FILE>chimara-glk</FILE>
3 <INCLUDE>libchimara/chimara-glk.h</INCLUDE>
4 <TITLE>ChimaraGlk</TITLE>
5 ChimaraGlk
6 ChimaraError
7 CHIMARA_ERROR
8 chimara_error_quark
9 ChimaraResourceLoadFunc
10 ChimaraResourceType
11 ChimaraGlkWindowType
12 chimara_glk_new
13 chimara_glk_set_interactive
14 chimara_glk_get_interactive
15 chimara_glk_set_protect
16 chimara_glk_get_protect
17 chimara_glk_set_spacing
18 chimara_glk_get_spacing
19 chimara_glk_set_css_to_default
20 chimara_glk_set_css_from_file
21 chimara_glk_set_css_from_string
22 chimara_glk_run
23 chimara_glk_stop
24 chimara_glk_wait
25 chimara_glk_unload_plugin
26 chimara_glk_get_running
27 chimara_glk_feed_char_input
28 chimara_glk_feed_line_input
29 chimara_glk_is_char_input_pending
30 chimara_glk_is_line_input_pending
31 chimara_glk_get_tag
32 chimara_glk_get_tag_names
33 chimara_glk_update_style
34 chimara_glk_set_resource_load_callback
35 <SUBSECTION Standard>
36 CHIMARA_GLK
37 CHIMARA_IS_GLK
38 CHIMARA_TYPE_GLK
39 chimara_glk_get_type
40 CHIMARA_GLK_CLASS
41 CHIMARA_IS_GLK_CLASS
42 CHIMARA_GLK_GET_CLASS
43 </SECTION>
44
45 <SECTION>
46 <FILE>chimara-if</FILE>
47 <INCLUDE>libchimara/chimara-if.h</INCLUDE>
48 ChimaraIFFormat
49 ChimaraIFInterpreter
50 ChimaraIFZmachineVersion
51 <TITLE>ChimaraIF</TITLE>
52 ChimaraIF
53 chimara_if_new
54 chimara_if_set_preferred_interpreter
55 chimara_if_get_preferred_interpreter
56 chimara_if_run_game
57 chimara_if_get_format
58 chimara_if_get_interpreter
59 <SUBSECTION Standard>
60 CHIMARA_IF
61 CHIMARA_IS_IF
62 CHIMARA_TYPE_IF
63 chimara_if_get_type
64 CHIMARA_IF_CLASS
65 CHIMARA_IS_IF_CLASS
66 CHIMARA_IF_GET_CLASS
67 </SECTION>
68
69 <INCLUDE>libchimara/glk.h</INCLUDE>
70
71 <SECTION>
72 <FILE>glk-exiting</FILE>
73 <TITLE>Exiting Your Program</TITLE>
74 glk_exit
75 <SUBSECTION Private>
76 glk_main
77 </SECTION>
78
79 <SECTION>
80 <FILE>glk-interrupt</FILE>
81 <TITLE>The Interrupt Handler</TITLE>
82 glk_set_interrupt_handler
83 </SECTION>
84
85 <SECTION>
86 <FILE>glk-tick</FILE>
87 <TITLE>The Tick Thing</TITLE>
88 glk_tick
89 </SECTION>
90
91 <SECTION>
92 <FILE>glk-types</FILE>
93 <TITLE>Basic Types</TITLE>
94 glui32
95 glsi32
96 </SECTION>
97
98 <SECTION>
99 <FILE>glk-opaque-objects</FILE>
100 <TITLE>Opaque Objects</TITLE>
101 winid_t
102 strid_t
103 frefid_t
104 schanid_t
105 </SECTION>
106
107 <SECTION>
108 <FILE>glk-gestalt</FILE>
109 <TITLE>The Gestalt System</TITLE>
110 glk_gestalt_ext
111 glk_gestalt
112 <SUBSECTION Constants>
113 gestalt_Version
114 gestalt_Unicode
115 GLK_MODULE_UNICODE
116 gestalt_UnicodeNorm
117 GLK_MODULE_UNICODE_NORM
118 gestalt_CharOutput
119 gestalt_CharOutput_CannotPrint
120 gestalt_CharOutput_ApproxPrint
121 gestalt_CharOutput_ExactPrint
122 gestalt_LineInput
123 gestalt_LineInputEcho
124 GLK_MODULE_LINE_ECHO
125 gestalt_LineTerminators
126 GLK_MODULE_LINE_TERMINATORS
127 gestalt_LineTerminatorKey
128 gestalt_CharInput
129 gestalt_MouseInput
130 gestalt_Timer
131 gestalt_Graphics
132 gestalt_DrawImage
133 gestalt_Sound2
134 gestalt_Sound
135 gestalt_SoundVolume
136 gestalt_SoundNotify
137 gestalt_Hyperlinks
138 gestalt_HyperlinkInput
139 gestalt_SoundMusic
140 gestalt_GraphicsTransparency
141 gestalt_DateTime
142 </SECTION>
143
144 <SECTION>
145 <FILE>glk-character-input</FILE>
146 <TITLE>Character Input</TITLE>
147 keycode_Unknown
148 keycode_Left
149 keycode_Right
150 keycode_Up
151 keycode_Down
152 keycode_Return
153 keycode_Delete
154 keycode_Escape
155 keycode_Tab
156 keycode_PageUp
157 keycode_PageDown
158 keycode_Home
159 keycode_End
160 keycode_Func1
161 keycode_Func2
162 keycode_Func3
163 keycode_Func4
164 keycode_Func5
165 keycode_Func6
166 keycode_Func7
167 keycode_Func8
168 keycode_Func9
169 keycode_Func10
170 keycode_Func11
171 keycode_Func12
172 <SUBSECTION Private>
173 keycode_MAXVAL
174 </SECTION>
175
176 <SECTION>
177 <FILE>glk-case</FILE>
178 <TITLE>Upper and Lower Case</TITLE>
179 glk_char_to_lower
180 glk_char_to_upper
181 glk_buffer_to_lower_case_uni
182 glk_buffer_to_upper_case_uni
183 glk_buffer_to_title_case_uni
184 </SECTION>
185
186 <SECTION>
187 <FILE>glk-normalize</FILE>
188 <TITLE>Unicode String Normalization</TITLE>
189 glk_buffer_canon_decompose_uni
190 glk_buffer_canon_normalize_uni
191 </SECTION>
192
193 <SECTION>
194 <FILE>glk-window-opening</FILE>
195 <TITLE>Window Opening, Closing, and Constraints</TITLE>
196 glk_window_open
197 winmethod_Left
198 winmethod_Right
199 winmethod_Above
200 winmethod_Below
201 winmethod_Fixed
202 winmethod_Proportional
203 winmethod_Border
204 winmethod_NoBorder
205 glk_window_close
206 <SUBSECTION Private>
207 winmethod_DirMask
208 winmethod_DivisionMask
209 winmethod_BorderMask
210 </SECTION>
211
212 <SECTION>
213 <FILE>glk-window-constraints</FILE>
214 <TITLE>Changing Window Constraints</TITLE>
215 glk_window_get_size
216 glk_window_set_arrangement
217 glk_window_get_arrangement
218 </SECTION>
219
220 <SECTION>
221 <FILE>glk-window-types</FILE>
222 <TITLE>The Types of Windows</TITLE>
223 wintype_Blank
224 wintype_Pair
225 wintype_TextBuffer
226 wintype_TextGrid
227 glk_window_move_cursor
228 wintype_Graphics
229 wintype_AllTypes
230 </SECTION>
231
232 <SECTION>
233 <FILE>glk-echo-streams</FILE>
234 <TITLE>Echo Streams</TITLE>
235 glk_window_set_echo_stream
236 glk_window_get_echo_stream
237 </SECTION>
238
239 <SECTION>
240 <FILE>glk-window-other</FILE>
241 <TITLE>Other Window Functions</TITLE>
242 glk_window_iterate
243 glk_window_get_rock
244 glk_window_get_type
245 glk_window_get_parent
246 glk_window_get_sibling
247 glk_window_get_root
248 glk_window_clear
249 glk_window_get_stream
250 glk_set_window
251 </SECTION>
252
253 <SECTION>
254 <FILE>glk-events</FILE>
255 <TITLE>Events</TITLE>
256 glk_select
257 event_t
258 glk_select_poll
259 <SUBSECTION Constants>
260 evtype_None
261 evtype_Timer
262 evtype_CharInput
263 evtype_LineInput
264 evtype_MouseInput
265 evtype_Arrange
266 evtype_Redraw
267 evtype_SoundNotify
268 evtype_Hyperlink
269 </SECTION>
270
271 <SECTION>
272 <FILE>glk-character-input-events</FILE>
273 <TITLE>Character Input Events</TITLE>
274 glk_request_char_event
275 glk_request_char_event_uni
276 glk_cancel_char_event
277 </SECTION>
278
279 <SECTION>
280 <FILE>glk-line-input-events</FILE>
281 <TITLE>Line Input Events</TITLE>
282 glk_request_line_event
283 glk_request_line_event_uni
284 glk_cancel_line_event
285 glk_set_echo_line_event
286 glk_set_terminators_line_event
287 </SECTION>
288
289 <SECTION>
290 <FILE>glk-mouse-events</FILE>
291 <TITLE>Mouse Input Events</TITLE>
292 glk_request_mouse_event
293 glk_cancel_mouse_event
294 </SECTION>
295
296 <SECTION>
297 <FILE>glk-timer-events</FILE>
298 <TITLE>Timer Events</TITLE>
299 glk_request_timer_events
300 </SECTION>
301
302 <SECTION>
303 <FILE>glk-streams</FILE>
304 <TITLE>Streams</TITLE>
305 glk_stream_set_current
306 glk_stream_get_current
307 <SUBSECTION Constants>
308 filemode_Write
309 filemode_Read
310 filemode_ReadWrite
311 filemode_WriteAppend
312 </SECTION>
313
314 <SECTION>
315 <FILE>glk-print</FILE>
316 <TITLE>How to Print</TITLE>
317 glk_put_char
318 glk_put_string
319 glk_put_buffer
320 glk_put_char_stream
321 glk_put_string_stream
322 glk_put_buffer_stream
323 glk_put_char_uni
324 glk_put_string_uni
325 glk_put_buffer_uni
326 glk_put_char_stream_uni
327 glk_put_string_stream_uni
328 glk_put_buffer_stream_uni
329 </SECTION>
330
331 <SECTION>
332 <FILE>glk-read</FILE>
333 <TITLE>How to Read</TITLE>
334 glk_get_char_stream
335 glk_get_buffer_stream
336 glk_get_line_stream
337 glk_get_char_stream_uni
338 glk_get_buffer_stream_uni
339 glk_get_line_stream_uni
340 </SECTION>
341
342 <SECTION>
343 <FILE>glk-closing-streams</FILE>
344 <TITLE>Closing Streams</TITLE>
345 glk_stream_close
346 stream_result_t
347 </SECTION>
348
349 <SECTION>
350 <FILE>glk-stream-positions</FILE>
351 <TITLE>Stream Positions</TITLE>
352 glk_stream_set_position
353 glk_stream_get_position
354 <SUBSECTION Constants>
355 seekmode_Start
356 seekmode_Current
357 seekmode_End
358 </SECTION>
359
360 <SECTION>
361 <FILE>glk-styles</FILE>
362 <TITLE>Styles</TITLE>
363 glk_set_style
364 glk_set_style_stream
365 <SUBSECTION Constants>
366 style_Normal
367 style_Emphasized
368 style_Preformatted
369 style_Header
370 style_Subheader
371 style_Alert
372 style_Note
373 style_BlockQuote
374 style_Input
375 style_User1
376 style_User2
377 <SUBSECTION Private>
378 style_NUMSTYLES
379 </SECTION>
380
381 <SECTION>
382 <FILE>glk-stylehints</FILE>
383 <TITLE>Suggesting the Appearance of Styles</TITLE>
384 glk_stylehint_set
385 glk_stylehint_clear
386 <SUBSECTION Constants>
387 stylehint_Indentation
388 stylehint_ParaIndentation
389 stylehint_Justification
390 stylehint_Size
391 stylehint_Weight
392 stylehint_Oblique
393 stylehint_Proportional
394 stylehint_TextColor
395 stylehint_BackColor
396 stylehint_ReverseColor
397 stylehint_just_LeftFlush
398 stylehint_just_LeftRight
399 stylehint_just_Centered
400 stylehint_just_RightFlush
401 <SUBSECTION Private>
402 stylehint_NUMHINTS
403 </SECTION>
404
405 <SECTION>
406 <FILE>glk-style-measure</FILE>
407 <TITLE>Testing the Appearance of Styles</TITLE>
408 glk_style_distinguish
409 glk_style_measure
410 </SECTION>
411
412 <SECTION>
413 <FILE>glk-stream-types</FILE>
414 <TITLE>The Types of Streams</TITLE>
415 glk_stream_open_memory
416 glk_stream_open_memory_uni
417 glk_stream_open_file
418 glk_stream_open_file_uni
419 </SECTION>
420
421 <SECTION>
422 <FILE>glk-stream-other</FILE>
423 <TITLE>Other Stream Functions</TITLE>
424 glk_stream_iterate
425 glk_stream_get_rock
426 </SECTION>
427
428 <SECTION>
429 <FILE>glk-fileref</FILE>
430 <TITLE>File References</TITLE>
431 fileusage_Data
432 fileusage_SavedGame
433 fileusage_Transcript
434 fileusage_InputRecord
435 fileusage_TextMode
436 fileusage_BinaryMode
437 <SUBSECTION Private>
438 fileusage_TypeMask
439 </SECTION>
440
441 <SECTION>
442 <FILE>glk-fileref-types</FILE>
443 <TITLE>The Types of File References</TITLE>
444 glk_fileref_create_temp
445 glk_fileref_create_by_prompt
446 glk_fileref_create_by_name
447 glk_fileref_create_from_fileref
448 </SECTION>
449
450 <SECTION>
451 <FILE>glk-fileref-other</FILE>
452 <TITLE>Other File Reference Functions</TITLE>
453 glk_fileref_destroy
454 glk_fileref_iterate
455 glk_fileref_get_rock
456 glk_fileref_delete_file
457 glk_fileref_does_file_exist
458 </SECTION>
459
460 <SECTION>
461 <FILE>glk-image-resources</FILE>
462 <TITLE>Image Resources</TITLE>
463 glk_image_get_info
464 glk_image_draw
465 glk_image_draw_scaled
466 </SECTION>
467
468 <SECTION>
469 <FILE>glk-graphics-windows</FILE>
470 <TITLE>Graphics in Graphics Windows</TITLE>
471 glk_window_set_background_color
472 glk_window_fill_rect
473 glk_window_erase_rect
474 </SECTION>
475
476 <SECTION>
477 <FILE>glk-graphics-text</FILE>
478 <TITLE>Graphics in Text Buffer Windows</TITLE>
479 glk_window_flow_break
480 <SUBSECTION Constants>
481 imagealign_InlineUp
482 imagealign_InlineDown
483 imagealign_InlineCenter
484 imagealign_MarginLeft
485 imagealign_MarginRight
486 </SECTION>
487
488 <SECTION>
489 <FILE>glk-graphics-testing</FILE>
490 <TITLE>Testing for Graphics Capabilities</TITLE>
491 GLK_MODULE_IMAGE
492 </SECTION>
493
494 <SECTION>
495 <FILE>glk-sound-channels</FILE>
496 <TITLE>Creating and Destroying Sound Channels</TITLE>
497 glk_schannel_create
498 glk_schannel_create_ext
499 glk_schannel_destroy
500 </SECTION>
501
502 <SECTION>
503 <FILE>glk-playing-sounds</FILE>
504 <TITLE>Playing Sounds</TITLE>
505 glk_schannel_play
506 glk_schannel_play_ext
507 glk_schannel_play_multi
508 glk_schannel_stop
509 glk_schannel_pause
510 glk_schannel_unpause
511 glk_schannel_set_volume
512 glk_schannel_set_volume_ext
513 glk_sound_load_hint
514 </SECTION>
515
516 <SECTION>
517 <FILE>glk-sound-other</FILE>
518 <TITLE>Other Sound Channel Functions</TITLE>
519 glk_schannel_iterate
520 glk_schannel_get_rock
521 </SECTION>
522
523 <SECTION>
524 <FILE>glk-sound-testing</FILE>
525 <TITLE>Testing for Sound Capabilities</TITLE>
526 GLK_MODULE_SOUND
527 GLK_MODULE_SOUND2
528 </SECTION>
529
530 <SECTION>
531 <FILE>glk-creating-hyperlinks</FILE>
532 <TITLE>Creating Hyperlinks</TITLE>
533 glk_set_hyperlink
534 glk_set_hyperlink_stream
535 </SECTION>
536
537 <SECTION>
538 <FILE>glk-accepting-hyperlinks</FILE>
539 <TITLE>Accepting Hyperlink Events</TITLE>
540 glk_request_hyperlink_event
541 glk_cancel_hyperlink_event
542 </SECTION>
543
544 <SECTION>
545 <FILE>glk-hyperlinks-testing</FILE>
546 <TITLE>Testing for Hyperlink Capabilities</TITLE>
547 GLK_MODULE_HYPERLINKS
548 </SECTION>
549
550 <SECTION>
551 <FILE>glk-clock</FILE>
552 <TITLE>The System Clock</TITLE>
553 glktimeval_t
554 glk_current_time
555 glk_current_simple_time
556 </SECTION>
557
558 <SECTION>
559 <FILE>glk-clock-conversions</FILE>
560 <TITLE>Time and Date Conversions</TITLE>
561 glkdate_t
562 glk_time_to_date_utc
563 glk_time_to_date_local
564 glk_simple_time_to_date_utc
565 glk_simple_time_to_date_local
566 glk_date_to_time_utc
567 glk_date_to_time_local
568 glk_date_to_simple_time_utc
569 glk_date_to_simple_time_local
570 </SECTION>
571
572 <SECTION>
573 <FILE>glk-clock-testing</FILE>
574 <TITLE>Testing for Clock Capabilities</TITLE>
575 GLK_MODULE_DATETIME
576 </SECTION>
577
578 <INCLUDE>libchimara/glk.h, libchimara/gi-dispa.h</INCLUDE>
579
580 <SECTION>
581 <FILE>dispatch-interrogating</FILE>
582 <TITLE>Interrogating the Interface</TITLE>
583 gidispatch_count_classes
584 gidispatch_get_class
585 gidispatch_count_intconst
586 gidispatch_get_intconst
587 gidispatch_intconst_t
588 gidispatch_count_functions
589 gidispatch_get_function
590 gidispatch_function_t
591 gidispatch_get_function_by_id
592 <SUBSECTION Constants>
593 gidisp_Class_Window
594 gidisp_Class_Stream
595 gidisp_Class_Fileref
596 gidisp_Class_Schannel
597 </SECTION>
598
599 <SECTION>
600 <FILE>dispatch-dispatching</FILE>
601 <TITLE>Dispatching</TITLE>
602 gidispatch_call
603 gluniversal_t
604 </SECTION>
605
606 <SECTION>
607 <FILE>dispatch-prototypes</FILE>
608 <TITLE>Getting Argument Prototypes</TITLE>
609 gidispatch_prototype
610 </SECTION>
611
612 <SECTION>
613 <FILE>dispatch-library-functions</FILE>
614 <TITLE>Functions the Library Must Provide</TITLE>
615 gidispatch_set_object_registry
616 gidispatch_rock_t
617 gidispatch_get_objrock
618 gidispatch_set_retained_registry
619 </SECTION>
620
621 <INCLUDE>libchimara/glk.h, libchimara/gi-blorb.h</INCLUDE>
622
623 <SECTION>
624 <FILE>blorb-program</FILE>
625 <TITLE>What the Program Does</TITLE>
626 giblorb_set_resource_map
627 giblorb_get_resource_map
628 giblorb_map_t
629 </SECTION>
630
631 <SECTION>
632 <FILE>blorb-layer</FILE>
633 <TITLE>What the Blorb Layer Does</TITLE>
634 giblorb_create_map
635 giblorb_destroy_map
636 giblorb_result_t
637 giblorb_load_chunk_by_type
638 giblorb_load_chunk_by_number
639 giblorb_unload_chunk
640 giblorb_load_resource
641 giblorb_count_resources
642 <SUBSECTION Constants>
643 giblorb_method_DontLoad
644 giblorb_method_Memory
645 giblorb_method_FilePos
646 giblorb_ID_Snd
647 giblorb_ID_Exec
648 giblorb_ID_Pict
649 giblorb_ID_Copyright
650 giblorb_ID_AUTH
651 giblorb_ID_ANNO
652 <SUBSECTION Private>
653 giblorb_make_id
654 </SECTION>
655
656 <SECTION>
657 <FILE>blorb-errors</FILE>
658 <TITLE>Blorb Errors</TITLE>
659 giblorb_err_t
660 <SUBSECTION Constants>
661 giblorb_err_None
662 giblorb_err_CompileTime
663 giblorb_err_Alloc
664 giblorb_err_Read
665 giblorb_err_NotAMap
666 giblorb_err_Format
667 giblorb_err_NotFound
668 </SECTION>
669
670 <INCLUDE>libchimara/glk.h, libchimara/glkstart.h</INCLUDE>
671
672 <SECTION>
673 <FILE>glkext-startup</FILE>
674 <TITLE>Startup Code</TITLE>
675 glkunix_argumentlist_t
676 glkunix_startup_t
677 <SUBSECTION Constants>
678 glkunix_arg_NoValue
679 glkunix_arg_ValueFollows
680 glkunix_arg_ValueCanFollow
681 glkunix_arg_NumberValue
682 glkunix_arg_End
683 <SUBSECTION Private>
684 glkunix_startup_code
685 NULL
686 </SECTION>
687
688 <SECTION>
689 <FILE>glkext-unix</FILE>
690 <TITLE>Unix Extensions</TITLE>
691 glkunix_stream_open_pathname_gen
692 glkunix_stream_open_pathname
693 glkunix_set_base_file
694 </SECTION>
695
696 <SECTION>
697 <FILE>glkext-garglk</FILE>
698 <TITLE>Gargoyle Extensions</TITLE>
699 <INCLUDE>libchimara/glk.h, libchimara/garglk.h</INCLUDE>
700 GARGLK
701 <SUBSECTION Functions>
702 garglk_fileref_get_name
703 garglk_set_program_name
704 garglk_set_program_info
705 garglk_set_story_name
706 garglk_set_story_title
707 garglk_unput_string
708 garglk_unput_string_uni
709 garglk_set_zcolors
710 garglk_set_zcolors_stream
711 garglk_set_reversevideo
712 garglk_set_reversevideo_stream
713 <SUBSECTION Constants>
714 zcolor_Current
715 zcolor_Default
716 zcolor_Cursor
717 zcolor_Transparent
718 keycode_Erase
719 keycode_MouseWheelUp
720 keycode_MouseWheelDown
721 </SECTION>