<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<script type="text/javascript" language="JavaScript">
function reDo() {
if (innerWidth != origWidth || innerHeight != origHeight)
location.reload();
}
if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
origWidth = innerWidth;
origHeight = innerHeight;
onresize = reDo;
}
onerror = null;
</script>
<style type="text/css">
< !-- div.WebHelpPopupMenu {
position: absolute;
left: 0px;
top: 0px;
z-index: 4;
visibility: hidden;
}
p.WebHelpNavBar {
text-align: right;
}
-->
</style>
<script type="text/javascript">
gRootRelPath = "../../..";
gCommonRootRelPath = "../../..";
gTopicId = "9.2.17.0_7";
<script type="text/javascript" src="../../../template/scripts/rh.min.js"></script>
<script type="text/javascript" src="../../../template/scripts/common.min.js"></script>
<script type="text/javascript" src="../../../template/scripts/topic.min.js"></script>
<script type="text/javascript" src="../../../template/scripts/topicwidgets.min.js"></script>
<script type="text/javascript" src="../../../whxdata/projectsettings.js"></script>
<link rel="stylesheet" type="text/css" href="../../../template/styles/topic.min.css"/>
<link rel="stylesheet" type="text/css" href="../../../template/Charcoal_Grey/topicheader.css"/>
<meta name="topic-status" content="Draft"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>buffer_write</title>
<meta name="generator" content="Adobe RoboHelp 2019"/>
<link rel="stylesheet" href="../../../assets/css/default.css" type="text/css"/>
<meta name="rh-authors" content="Mark Alexander"/>
<meta name="topic-comment" content="Reference page for buffer_write"/>
<meta name="rh-index-keywords" content="buffer_write,buffer_u8,buffer_s8,buffer_u16,buffer_s16,buffer_u32,buffer_s32,buffer_u64,buffer_f16,buffer_f32,buffer_f64,buffer_bool,buffer_string,buffer_text"/>
<meta name="search-keywords" content="buffer_write,buffer_u8,buffer_s8,buffer_u16,buffer_s16,buffer_u32,buffer_s32,buffer_u64,buffer_f16,buffer_f32,buffer_f64,buffer_bool,buffer_string,buffer_text"/>
</head>
<body>
<div class="topic-header rh-hide" id="rh-topic-header" onclick="rh._.goToFullLayout()">
<div class="logo">
</div>
<div class="nav">
<div class="title" title="buffer_write">
<span>buffer_write</span>
</div>
<div class="gotohome" title="Click here to see this page in full context">
<span>Click here to see this page in full context</span>
</div>
</div>
</div>
<div class="topic-header-shadow rh-hide" id="rh-topic-header-shadow"></div>
<h1>buffer_write</h1>
<p>This function can be used to write data to a previously created buffer. The data you write must be in agreement with the "type" argument of this function, meaning that you can't try to write a string as an unsigned 16bit integer, for example.
The following constants can be used to define the data type:</p>
<p> </p>
<table>
<tbody>
<tr>
<th>Constant</th>
<th>Description</th>
</tr>
<tr>
<td>buffer_u8</td>
<td>An unsigned, 8bit integer. This is a positive value from 0 to 255.</td>
</tr>
<tr>
<td>buffer_s8</td>
<td>A signed, 8bit integer. This can be a positive or negative value from -128 to 127 (0 is classed as positive).</td>
</tr>
<tr>
<td>buffer_u16</td>
<td>An unsigned, 16bit integer. This is a positive value from 0 - 65,535.</td>
</tr>
<tr>
<td>buffer_s16</td>
<td>A signed, 16bit integer. This can be a positive or negative value from -32,768 to 32,767 (0 is classed as positive).</td>
</tr>
<tr>
<td>buffer_u32</td>
<td>An unsigned, 32bit integer. This is a positive value from 0 to 4,294,967,295.</td>
</tr>
<tr>
<td>buffer_s32</td>
<td>A signed, 32bit integer. This can be a positive or negative value from -2,147,483,648 to 2,147,483,647 (0 is classed as positive).</td>
</tr>
<tr>
<td>buffer_u64</td>
<td>An unsigned 64bit integer.</td>
</tr>
<tr>
<td>buffer_f16</td>
<td>A 16bit float. This can be a positive or negative value within the same range as a 16 bit signed integer.</td>
</tr>
<tr>
<td>buffer_f32</td>
<td>A 32bit float. This can be a positive or negative value within the same range as a 32 bit signed integer.</td>
</tr>
<tr>
<td>buffer_f64</td>
<td>A 64bit float.</td>
</tr>
<tr>
<td>buffer_bool</td>
<td>A boolean value. Can only be either 1 or 0 (<tt>true</tt> or <tt>false</tt>)</td>
</tr>
<tr>
<td>buffer_string</td>
<td>A string of any size, finalized with a null terminating character.</td>
</tr>
<tr>
<td>buffer_text</td>
<td>A string of any size, without the final null terminating character.</td>
</tr>
</tbody>
</table>
<p> </p>
<p>The function will return 0 if it succeeds or -1 if it fails.</p>
<p> </p>
<h4>Syntax:</h4>
<p class="code">buffer_write(buffer, type, value)</p>
<table>
<tbody>
<tr>
<th>Argument</th>
<th>Description</th>
</tr>
<tr>
<td>buffer</td>
<td>The index of the buffer to write to.</td>
</tr>
<tr>
<td>type</td>
<td>The type of data that is to be written to the buffer (see the list of constants above).</td>
</tr>
<tr>
<td>value</td>
<td>The data to write.</td>
</tr>
</tbody>
</table>
<p> </p>
<h4>Returns:</h4>
<p class="code">0 if success, or -1 if it fails</p>
<p> </p>
<h4>Example:</h4>
<p class="code">buffer_seek(buff, buffer_seek_start, 0);<br/> buffer_write(buff, buffer_s16, 0);<br/> buffer_write(buff, buffer_s16, x);<br/> buffer_write(buff, buffer_s16, y);</p>
<p>The above code finds the start of the buffer with the id stored in the variable "buff" them writes a series of signed 16bit integer values to it.</p>
<p> </p>
<p> </p>
<p> </p>
<div class="footer">
<div class="buttons">
<div class="clear">
<div style="float:left">Back: <a href="Buffers.htm">Buffers</a></div>
<div style="float:right">Next: <a href="buffer_fill.htm">buffer_fill</a></div>
</div>
</div>
<h5>© Copyright YoYo Games Ltd. 2020 All Rights Reserved</h5>
</div>
</body></html>