Allegro MAnual
User Manual:
Open the PDF directly: View PDF
Page Count: 385 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- Contents
- Getting started guide
- Configuration files
- ALLEGRO_CONFIG
- ALLEGRO_CONFIG_SECTION
- ALLEGRO_CONFIG_ENTRY
- al_create_config
- al_destroy_config
- al_load_config_file
- al_load_config_file_f
- al_save_config_file
- al_save_config_file_f
- al_add_config_section
- al_remove_config_section
- al_add_config_comment
- al_get_config_value
- al_set_config_value
- al_remove_config_key
- al_get_first_config_section
- al_get_next_config_section
- al_get_first_config_entry
- al_get_next_config_entry
- al_merge_config
- al_merge_config_into
- Displays
- Event system and events
- ALLEGRO_EVENT
- ALLEGRO_EVENT_JOYSTICK_AXIS
- ALLEGRO_EVENT_JOYSTICK_BUTTON_DOWN
- ALLEGRO_EVENT_JOYSTICK_BUTTON_UP
- ALLEGRO_EVENT_JOYSTICK_CONFIGURATION
- ALLEGRO_EVENT_KEY_DOWN
- ALLEGRO_EVENT_KEY_UP
- ALLEGRO_EVENT_KEY_CHAR
- ALLEGRO_EVENT_MOUSE_AXES
- ALLEGRO_EVENT_MOUSE_BUTTON_DOWN
- ALLEGRO_EVENT_MOUSE_BUTTON_UP
- ALLEGRO_EVENT_MOUSE_WARPED
- ALLEGRO_EVENT_MOUSE_ENTER_DISPLAY
- ALLEGRO_EVENT_MOUSE_LEAVE_DISPLAY
- ALLEGRO_EVENT_TOUCH_BEGIN
- ALLEGRO_EVENT_TOUCH_END
- ALLEGRO_EVENT_TOUCH_MOVE
- ALLEGRO_EVENT_TOUCH_CANCEL
- ALLEGRO_EVENT_TIMER
- ALLEGRO_EVENT_DISPLAY_EXPOSE
- ALLEGRO_EVENT_DISPLAY_RESIZE
- ALLEGRO_EVENT_DISPLAY_CLOSE
- ALLEGRO_EVENT_DISPLAY_LOST
- ALLEGRO_EVENT_DISPLAY_FOUND
- ALLEGRO_EVENT_DISPLAY_SWITCH_OUT
- ALLEGRO_EVENT_DISPLAY_SWITCH_IN
- ALLEGRO_EVENT_DISPLAY_ORIENTATION
- ALLEGRO_EVENT_DISPLAY_HALT_DRAWING
- ALLEGRO_EVENT_DISPLAY_RESUME_DRAWING
- ALLEGRO_EVENT_DISPLAY_CONNECTED
- ALLEGRO_EVENT_DISPLAY_DISCONNECTED
- ALLEGRO_USER_EVENT
- ALLEGRO_EVENT_QUEUE
- ALLEGRO_EVENT_SOURCE
- ALLEGRO_EVENT_TYPE
- ALLEGRO_GET_EVENT_TYPE
- ALLEGRO_EVENT_TYPE_IS_USER
- al_create_event_queue
- al_destroy_event_queue
- al_register_event_source
- al_unregister_event_source
- al_is_event_source_registered
- al_pause_event_queue
- al_is_event_queue_paused
- al_is_event_queue_empty
- al_get_next_event
- al_peek_next_event
- al_drop_next_event
- al_flush_event_queue
- al_wait_for_event
- al_wait_for_event_timed
- al_wait_for_event_until
- al_init_user_event_source
- al_destroy_user_event_source
- al_emit_user_event
- al_unref_user_event
- al_get_event_source_data
- al_set_event_source_data
- ALLEGRO_EVENT
- File I/O
- ALLEGRO_FILE
- ALLEGRO_FILE_INTERFACE
- ALLEGRO_SEEK
- al_fopen
- al_fopen_interface
- al_fopen_slice
- al_fclose
- al_fread
- al_fwrite
- al_fflush
- al_ftell
- al_fseek
- al_feof
- al_ferror
- al_ferrmsg
- al_fclearerr
- al_fungetc
- al_fsize
- al_fgetc
- al_fputc
- al_fprintf
- al_vfprintf
- al_fread16le
- al_fread16be
- al_fwrite16le
- al_fwrite16be
- al_fread32le
- al_fread32be
- al_fwrite32le
- al_fwrite32be
- al_fgets
- al_fget_ustr
- al_fputs
- Standard I/O specific routines
- Alternative file streams
- Fixed point math routines
- File system routines
- ALLEGRO_FS_ENTRY
- ALLEGRO_FILE_MODE
- al_create_fs_entry
- al_destroy_fs_entry
- al_get_fs_entry_name
- al_update_fs_entry
- al_get_fs_entry_mode
- al_get_fs_entry_atime
- al_get_fs_entry_ctime
- al_get_fs_entry_mtime
- al_get_fs_entry_size
- al_fs_entry_exists
- al_remove_fs_entry
- al_filename_exists
- al_remove_filename
- Directory functions
- Alternative filesystem functions
- Fullscreen modes
- Graphics routines
- Colors
- Locking and pixel formats
- Bitmap creation
- ALLEGRO_BITMAP
- al_create_bitmap
- al_create_sub_bitmap
- al_clone_bitmap
- al_convert_bitmap
- al_convert_memory_bitmaps
- al_destroy_bitmap
- al_get_new_bitmap_flags
- al_get_new_bitmap_format
- al_set_new_bitmap_flags
- al_add_new_bitmap_flag
- al_set_new_bitmap_format
- al_set_new_bitmap_depth
- al_get_new_bitmap_depth
- al_set_new_bitmap_samples
- al_get_new_bitmap_samples
- Bitmap properties
- Drawing operations
- al_clear_to_color
- al_clear_depth_buffer
- al_draw_bitmap
- al_draw_tinted_bitmap
- al_draw_bitmap_region
- al_draw_tinted_bitmap_region
- al_draw_pixel
- al_draw_rotated_bitmap
- al_draw_tinted_rotated_bitmap
- al_draw_scaled_rotated_bitmap
- al_draw_tinted_scaled_rotated_bitmap
- al_draw_tinted_scaled_rotated_bitmap_region
- al_draw_scaled_bitmap
- al_draw_tinted_scaled_bitmap
- al_get_target_bitmap
- al_put_pixel
- al_put_blended_pixel
- Target bitmap
- Blending modes
- Clipping
- Graphics utility functions
- Deferred drawing
- Image I/O
- Render State
- Haptic routines
- ALLEGRO_HAPTIC
- ALLEGRO_HAPTIC_CONSTANTS
- ALLEGRO_HAPTIC_EFFECT
- ALLEGRO_HAPTIC_EFFECT_ID
- al_install_haptic
- al_uninstall_haptic
- al_is_haptic_installed
- al_is_mouse_haptic
- al_is_keyboard_haptic
- al_is_display_haptic
- al_is_joystick_haptic
- al_is_touch_input_haptic
- al_get_haptic_from_mouse
- al_get_haptic_from_keyboard
- al_get_haptic_from_display
- al_get_haptic_from_joystick
- al_get_haptic_from_touch_input
- al_release_haptic
- al_is_haptic_active
- al_get_haptic_capabilities
- al_is_haptic_capable
- al_set_haptic_gain
- al_get_haptic_gain
- al_set_haptic_autocenter
- al_get_haptic_autocenter
- al_get_max_haptic_effects
- al_is_haptic_effect_ok
- al_upload_haptic_effect
- al_play_haptic_effect
- al_upload_and_play_haptic_effect
- al_stop_haptic_effect
- al_is_haptic_effect_playing
- al_get_haptic_effect_duration
- al_release_haptic_effect
- al_rumble_haptic
- Joystick routines
- ALLEGRO_JOYSTICK
- ALLEGRO_JOYSTICK_STATE
- ALLEGRO_JOYFLAGS
- al_install_joystick
- al_uninstall_joystick
- al_is_joystick_installed
- al_reconfigure_joysticks
- al_get_num_joysticks
- al_get_joystick
- al_release_joystick
- al_get_joystick_active
- al_get_joystick_name
- al_get_joystick_stick_name
- al_get_joystick_axis_name
- al_get_joystick_button_name
- al_get_joystick_stick_flags
- al_get_joystick_num_sticks
- al_get_joystick_num_axes
- al_get_joystick_num_buttons
- al_get_joystick_state
- al_get_joystick_event_source
- Keyboard routines
- Memory management routines
- Miscellaneous routines
- Monitors
- Mouse routines
- ALLEGRO_MOUSE_STATE
- al_install_mouse
- al_is_mouse_installed
- al_uninstall_mouse
- al_get_mouse_num_axes
- al_get_mouse_num_buttons
- al_get_mouse_state
- al_get_mouse_state_axis
- al_mouse_button_down
- al_set_mouse_xy
- al_set_mouse_z
- al_set_mouse_w
- al_set_mouse_axis
- al_get_mouse_event_source
- al_set_mouse_wheel_precision
- al_get_mouse_wheel_precision
- Mouse cursors
- Path structures
- al_create_path
- al_create_path_for_directory
- al_destroy_path
- al_clone_path
- al_join_paths
- al_rebase_path
- al_get_path_drive
- al_get_path_num_components
- al_get_path_component
- al_get_path_tail
- al_get_path_filename
- al_get_path_basename
- al_get_path_extension
- al_set_path_drive
- al_append_path_component
- al_insert_path_component
- al_replace_path_component
- al_remove_path_component
- al_drop_path_tail
- al_set_path_filename
- al_set_path_extension
- al_path_cstr
- al_path_ustr
- al_make_path_canonical
- State
- System routines
- Threads
- ALLEGRO_THREAD
- ALLEGRO_MUTEX
- ALLEGRO_COND
- al_create_thread
- al_start_thread
- al_join_thread
- al_set_thread_should_stop
- al_get_thread_should_stop
- al_destroy_thread
- al_run_detached_thread
- al_create_mutex
- al_create_mutex_recursive
- al_lock_mutex
- al_unlock_mutex
- al_destroy_mutex
- al_create_cond
- al_destroy_cond
- al_wait_cond
- al_wait_cond_until
- al_broadcast_cond
- al_signal_cond
- Time routines
- Timer routines
- ALLEGRO_TIMER
- ALLEGRO_USECS_TO_SECS
- ALLEGRO_MSECS_TO_SECS
- ALLEGRO_BPS_TO_SECS
- ALLEGRO_BPM_TO_SECS
- al_create_timer
- al_start_timer
- al_resume_timer
- al_stop_timer
- al_get_timer_started
- al_destroy_timer
- al_get_timer_count
- al_set_timer_count
- al_add_timer_count
- al_get_timer_speed
- al_set_timer_speed
- al_get_timer_event_source
- Touch input
- ALLEGRO_TOUCH_INPUT
- ALLEGRO_TOUCH_INPUT_MAX_TOUCH_COUNT
- ALLEGRO_TOUCH_STATE
- ALLEGRO_TOUCH_INPUT_STATE
- ALLEGRO_MOUSE_EMULATION_MODE
- al_install_touch_input
- al_uninstall_touch_input
- al_is_touch_input_installed
- al_get_touch_input_state
- al_set_mouse_emulation_mode
- al_get_mouse_emulation_mode
- al_get_touch_input_event_source
- al_get_touch_input_mouse_emulation_event_source
- Transformations
- ALLEGRO_TRANSFORM
- al_copy_transform
- al_use_transform
- al_get_current_transform
- al_use_projection_transform
- al_get_current_projection_transform
- al_get_current_inverse_transform
- al_invert_transform
- al_check_inverse
- al_identity_transform
- al_build_transform
- al_build_camera_transform
- al_translate_transform
- al_rotate_transform
- al_scale_transform
- al_transform_coordinates
- al_transform_coordinates_3d
- al_transform_coordinates_4d
- al_transform_coordinates_3d_projective
- al_compose_transform
- al_orthographic_transform
- al_perspective_transform
- al_translate_transform_3d
- al_scale_transform_3d
- al_rotate_transform_3d
- al_horizontal_shear_transform
- al_vertical_shear_transform
- UTF-8 string routines
- About UTF-8 string routines
- UTF-8 string types
- Creating and destroying strings
- Predefined strings
- Creating strings by referencing other data
- Sizes and offsets
- Getting code points
- Inserting into strings
- Appending to strings
- Removing parts of strings
- Assigning one string to another
- Replacing parts of string
- Searching
- Comparing
- UTF-16 conversion
- Low-level UTF-8 routines
- Low-level UTF-16 routines
- Platform-specific functions
- Direct3D integration
- OpenGL integration
- al_get_opengl_extension_list
- al_get_opengl_proc_address
- al_get_opengl_texture
- al_get_opengl_texture_size
- al_get_opengl_texture_position
- al_get_opengl_program_object
- al_get_opengl_fbo
- al_remove_opengl_fbo
- al_have_opengl_extension
- al_get_opengl_version
- al_get_opengl_variant
- al_set_current_opengl_context
- OpenGL configuration
- Audio addon
- Audio types
- Setting up audio
- Misc audio functions
- Voice functions
- Sample functions
- Sample instance functions
- al_create_sample_instance
- al_destroy_sample_instance
- al_play_sample_instance
- al_stop_sample_instance
- al_get_sample_instance_channels
- al_get_sample_instance_depth
- al_get_sample_instance_frequency
- al_get_sample_instance_length
- al_set_sample_instance_length
- al_get_sample_instance_position
- al_set_sample_instance_position
- al_get_sample_instance_speed
- al_set_sample_instance_speed
- al_get_sample_instance_gain
- al_set_sample_instance_gain
- al_get_sample_instance_pan
- al_set_sample_instance_pan
- al_get_sample_instance_time
- al_get_sample_instance_playmode
- al_set_sample_instance_playmode
- al_get_sample_instance_playing
- al_set_sample_instance_playing
- al_get_sample_instance_attached
- al_detach_sample_instance
- al_get_sample
- al_set_sample
- al_set_sample_instance_channel_matrix
- Mixer functions
- al_create_mixer
- al_destroy_mixer
- al_get_default_mixer
- al_set_default_mixer
- al_restore_default_mixer
- al_get_default_voice
- al_set_default_voice
- al_attach_mixer_to_mixer
- al_attach_sample_instance_to_mixer
- al_attach_audio_stream_to_mixer
- al_get_mixer_frequency
- al_set_mixer_frequency
- al_get_mixer_channels
- al_get_mixer_depth
- al_get_mixer_gain
- al_set_mixer_gain
- al_get_mixer_quality
- al_set_mixer_quality
- al_get_mixer_playing
- al_set_mixer_playing
- al_get_mixer_attached
- al_detach_mixer
- al_set_mixer_postprocess_callback
- Stream functions
- al_create_audio_stream
- al_destroy_audio_stream
- al_get_audio_stream_event_source
- al_drain_audio_stream
- al_rewind_audio_stream
- al_get_audio_stream_frequency
- al_get_audio_stream_channels
- al_get_audio_stream_depth
- al_get_audio_stream_length
- al_get_audio_stream_speed
- al_set_audio_stream_speed
- al_get_audio_stream_gain
- al_set_audio_stream_gain
- al_get_audio_stream_pan
- al_set_audio_stream_pan
- al_get_audio_stream_playing
- al_set_audio_stream_playing
- al_get_audio_stream_playmode
- al_set_audio_stream_playmode
- al_get_audio_stream_attached
- al_detach_audio_stream
- al_get_audio_stream_played_samples
- al_get_audio_stream_fragment
- al_set_audio_stream_fragment
- al_get_audio_stream_fragments
- al_get_available_audio_stream_fragments
- al_seek_audio_stream_secs
- al_get_audio_stream_position_secs
- al_get_audio_stream_length_secs
- al_set_audio_stream_loop_secs
- al_set_audio_stream_channel_matrix
- Audio file I/O
- Audio recording
- Audio codecs addon
- Color addon
- al_color_cmyk
- al_color_cmyk_to_rgb
- al_color_hsl
- al_color_hsl_to_rgb
- al_color_hsv
- al_color_hsv_to_rgb
- al_color_html
- al_color_html_to_rgb
- al_color_rgb_to_html
- al_color_name
- al_color_name_to_rgb
- al_color_rgb_to_cmyk
- al_color_rgb_to_hsl
- al_color_rgb_to_hsv
- al_color_rgb_to_name
- al_color_rgb_to_xyz
- al_color_xyz
- al_color_xyz_to_rgb
- al_color_rgb_to_xyy
- al_color_xyy
- al_color_xyy_to_rgb
- al_color_rgb_to_lab
- al_color_lab
- al_color_lab_to_rgb
- al_color_rgb_to_lch
- al_color_lch
- al_color_lch_to_rgb
- al_color_distance_ciede2000_lab
- al_color_rgb_to_yuv
- al_color_yuv
- al_color_yuv_to_rgb
- al_get_allegro_color_version
- al_is_color_valid
- Font addons
- General font routines
- ALLEGRO_FONT
- ALLEGRO_GLYPH
- al_init_font_addon
- al_shutdown_font_addon
- al_load_font
- al_destroy_font
- al_register_font_loader
- al_get_font_line_height
- al_get_font_ascent
- al_get_font_descent
- al_get_text_width
- al_get_ustr_width
- al_draw_text
- al_draw_ustr
- al_draw_justified_text
- al_draw_justified_ustr
- al_draw_textf
- al_draw_justified_textf
- al_get_text_dimensions
- al_get_ustr_dimensions
- al_get_allegro_font_version
- al_get_font_ranges
- al_set_fallback_font
- al_get_fallback_font
- Per glyph text handling
- Multiline text drawing
- Bitmap fonts
- TTF fonts
- General font routines
- Image I/O addon
- Main addon
- Memfile interface
- Native dialogs support
- ALLEGRO_FILECHOOSER
- ALLEGRO_TEXTLOG
- al_init_native_dialog_addon
- al_shutdown_native_dialog_addon
- al_create_native_file_dialog
- al_show_native_file_dialog
- al_get_native_file_dialog_count
- al_get_native_file_dialog_path
- al_destroy_native_file_dialog
- al_show_native_message_box
- al_open_native_text_log
- al_close_native_text_log
- al_append_native_text_log
- al_get_native_text_log_event_source
- al_get_allegro_native_dialog_version
- Menus
- ALLEGRO_MENU
- ALLEGRO_MENU_INFO
- al_create_menu
- al_create_popup_menu
- al_build_menu
- al_append_menu_item
- al_insert_menu_item
- al_remove_menu_item
- al_clone_menu
- al_clone_menu_for_popup
- al_destroy_menu
- al_get_menu_item_caption
- al_set_menu_item_caption
- al_get_menu_item_flags
- al_set_menu_item_flags
- al_toggle_menu_item_flags
- al_get_menu_item_icon
- al_set_menu_item_icon
- al_find_menu
- al_find_menu_item
- al_get_default_menu_event_source
- al_enable_menu_event_source
- al_disable_menu_event_source
- al_get_display_menu
- al_set_display_menu
- al_popup_menu
- al_remove_display_menu
- PhysicsFS integration
- Primitives addon
- General
- High level drawing routines
- Pixel-precise output
- al_draw_line
- al_draw_triangle
- al_draw_filled_triangle
- al_draw_rectangle
- al_draw_filled_rectangle
- al_draw_rounded_rectangle
- al_draw_filled_rounded_rectangle
- al_calculate_arc
- al_draw_pieslice
- al_draw_filled_pieslice
- al_draw_ellipse
- al_draw_filled_ellipse
- al_draw_circle
- al_draw_filled_circle
- al_draw_arc
- al_draw_elliptical_arc
- al_calculate_spline
- al_draw_spline
- al_calculate_ribbon
- al_draw_ribbon
- Low level drawing routines
- Custom vertex declaration routines
- Vertex buffer routines
- Index buffer routines
- Polygon routines
- Structures and types
- Shader routines
- ALLEGRO_SHADER
- ALLEGRO_SHADER_TYPE
- ALLEGRO_SHADER_PLATFORM
- al_create_shader
- al_attach_shader_source
- al_attach_shader_source_file
- al_build_shader
- al_get_shader_log
- al_get_shader_platform
- al_use_shader
- al_destroy_shader
- al_set_shader_sampler
- al_set_shader_matrix
- al_set_shader_int
- al_set_shader_float
- al_set_shader_bool
- al_set_shader_int_vector
- al_set_shader_float_vector
- al_get_default_shader_source
- Video streaming addon
- ALLEGRO_VIDEO_EVENT_TYPE
- ALLEGRO_VIDEO_POSITION_TYPE
- al_init_video_addon
- al_shutdown_video_addon
- al_get_allegro_video_version
- al_open_video
- al_close_video
- al_start_video
- al_start_video_with_voice
- al_get_video_event_source
- al_set_video_playing
- al_is_video_playing
- al_get_video_audio_rate
- al_get_video_fps
- al_get_video_scaled_width
- al_get_video_scaled_height
- al_get_video_frame
- al_get_video_position
- al_seek_video