1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="generator" content="pandoc" />
<title>PhysicsFS integration</title>
<style type="text/css">code{white-space: pre;}</style>
<link rel="stylesheet" href="pandoc.css" type="text/css" />
<script type="text/javascript" src="autosuggest.js"></script>
<script type="text/javascript" src="search_index.js"></script>
</head>
<body>
<div class="sidebar">
<div>
<ul>
<li><a href="index.html"><strong>Contents</strong></a></li>
<li><a href="config.html">Configuration files</a></li>
<li><a href="display.html">Display</a></li>
<li><a href="events.html">Events</a></li>
<li><a href="file.html">File I/O</a></li>
<li><a href="fshook.html">Filesystem</a></li>
<li><a href="fixed.html">Fixed point math</a></li>
<li><a href="fullscreen_mode.html">Fullscreen modes</a></li>
<li><a href="graphics.html">Graphics</a></li>
<li><a href="joystick.html">Joystick</a></li>
<li><a href="keyboard.html">Keyboard</a></li>
<li><a href="memory.html">Memory</a></li>
<li><a href="monitor.html">Monitor</a></li>
<li><a href="mouse.html">Mouse</a></li>
<li><a href="path.html">Path</a></li>
<li><a href="state.html">State</a></li>
<li><a href="system.html">System</a></li>
<li><a href="threads.html">Threads</a></li>
<li><a href="time.html">Time</a></li>
<li><a href="timer.html">Timer</a></li>
<li><a href="transformations.html">Transformations</a></li>
<li><a href="utf8.html">UTF-8</a></li>
<li><a href="misc.html">Miscellaneous</a></li>
<li><a href="platform.html">Platform-specific</a></li>
<li><a href="direct3d.html">Direct3D</a></li>
<li><a href="opengl.html">OpenGL</a></li>
</ul>
<!-- The preceding blank line forces pandoc to terminate the list -->
</div>
<div>
<ul>
<li><a href="index.html#addons"><strong>Addons</strong></a></li>
<li><a href="audio.html">Audio addon</a></li>
<li><a href="acodec.html">Audio codecs</a></li>
<li><a href="color.html">Color addon</a></li>
<li><a href="font.html">Font addons</a></li>
<li><a href="image.html">Image I/O addon</a></li>
<li><a href="main.html">Main addon</a></li>
<li><a href="memfile.html">Memfile addon</a></li>
<li><a href="native_dialog.html">Native dialogs addon</a></li>
<li><a href="physfs.html">PhysicsFS addon</a></li>
<li><a href="primitives.html">Primitives addon</a></li>
</ul>
<!-- The preceding blank line forces pandoc to terminate the list -->
</div>
<div>
<ul>
<li><a href="index_all.html"><strong>Index</strong></a></li>
</ul>
<!-- The preceding blank line forces pandoc to terminate the list -->
</div>
<div class="searchbox">
<script type="text/javascript">
function on_search(index, control) {
// Note to self: the less-than sign must NOT converted to an entity!
// SCRIPT elements are special. The HTML validator gives bad advice.
for (i = 0; i < search_index.length; i++) {
if (search_index[i] == control.keywords[index]) {
break;
}
}
location.href = search_urls[i];
}
</script>
Search<br/> <input type="text" name="q" id="q" size="15" autocomplete="off"/><br/>
<script type="text/javascript"> new autosuggest("q", search_index, null, on_search); </script>
</div>
</div>
<div class="content">
<div id="header">
<h1 class="title">PhysicsFS integration</h1>
</div>
<div id="TOC">
<ul>
<li><a href="#al_set_physfs_file_interface">al_set_physfs_file_interface</a></li>
<li><a href="#al_get_allegro_physfs_version">al_get_allegro_physfs_version</a></li>
</ul>
</div>
<p>PhysicsFS is a library to provide abstract access to various archives. See <a href="http://icculus.org/physfs/">http://icculus.org/physfs/</a> for more information.</p>
<p>This addon makes it possible to read and write files (on disk or inside archives) using PhysicsFS, through Allegro's file I/O API. For example, that means you can use the Image I/O addon to load images from .zip files.</p>
<p>You must set up PhysicsFS through its own API. When you want to open an ALLEGRO_FILE using PhysicsFS, first call <a href="physfs.html#al_set_physfs_file_interface">al_set_physfs_file_interface</a>, then <a href="file.html#al_fopen">al_fopen</a> or another function that calls <a href="file.html#al_fopen">al_fopen</a>.</p>
<p>These functions are declared in the following header file. Link with allegro_physfs.</p>
<pre><code>#include <allegro5/allegro_physfs.h></code></pre>
<h1 id="al_set_physfs_file_interface"><a href="#al_set_physfs_file_interface">al_set_physfs_file_interface</a></h1>
<pre><code>void al_set_physfs_file_interface(void)</code></pre>
<p>After calling this, subsequent calls to <a href="file.html#al_fopen">al_fopen</a> will be handled by PHYSFS_open(). Operations on the files returned by <a href="file.html#al_fopen">al_fopen</a> will then be performed through PhysicsFS.</p>
<p>At the same time, all filesystem functions like <a href="fshook.html#al_read_directory">al_read_directory</a> or <a href="fshook.html#al_create_fs_entry">al_create_fs_entry</a> will use PhysicsFS.</p>
<p>This functions only affects the thread it was called from.</p>
<p>To remember and restore another file I/O backend, you can use <a href="state.html#al_store_state">al_store_state</a>/<a href="state.html#al_restore_state">al_restore_state</a>.</p>
<p>See also: <a href="file.html#al_set_new_file_interface">al_set_new_file_interface</a>.</p>
<h1 id="al_get_allegro_physfs_version"><a href="#al_get_allegro_physfs_version">al_get_allegro_physfs_version</a></h1>
<pre><code>uint32_t al_get_allegro_physfs_version(void)</code></pre>
<p>Returns the (compiled) version of the addon, in the same format as <a href="system.html#al_get_allegro_version">al_get_allegro_version</a>.</p>
<p class="timestamp">
Allegro version 5.0.10
- Last updated: 2013-06-16 03:32:14 UTC
</p>
</div>
</body>
</html>
|