1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3
4<head>
5<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
6<META name="GENERATOR" content="Microsoft FrontPage 5.0">
7<META http-equiv="Content-Style-Type" content="text/css">
8<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css">
9<title>MTXConcatArray</title>
10</head>
11
12<body>
13
14<h1 align="left">MTXConcatArray</h1>
15
16
17<h2 align="left">C Specification</h2>
18
19<p align="left"><CODE><code>&nbsp;&nbsp;&nbsp; #include &lt;revolution/mtx.h&gt;<br> <br> &nbsp;&nbsp;&nbsp; void C_MTXConcatArray (</code></CODE> <code>const </code><CODE><code> Mtx <em>a</em>, </code></CODE> <code>const </code><CODE><code> Mtx* <em>srcBase</em>, Mtx* <em>dstBase</em>, u32 <em>count</em> );<br> &nbsp;&nbsp;&nbsp; void PSMTXConcatArray (</code></CODE> <code>const </code><CODE><code> Mtx <em>a</em>, </code></CODE> <code>const </code><CODE><code> Mtx* <em>srcBase</em>, Mtx* <em>dstBase</em>, u32 <em>count</em> );<br> <br> &nbsp;&nbsp;&nbsp; #define MTXConcatArray C_MTXConcatArray // for debug build<br> &nbsp;&nbsp;&nbsp; #define MTXConcatArray PSMTXConcatArray // for nondebug build</code></CODE></p>
20<h2 align="left">Arguments</h2>
21<div align="left">
22<TABLE border="1" cellpadding="3" cellspacing="0.1">
23
24    <tr>
25<TD width="120" valign="top" align="left" bgcolor="#ffffe8"><em><strong>a</strong></em></TD>
26<TD width="520" valign="top" align="left">First matrix for multiply.&nbsp;<code><em><strong>a</strong></em></code> may be either a <a href="../structures/Mtx_MtxPtr.html"><CODE>Mtx</CODE></a> or a <a href="../structures/Mtx_MtxPtr.html"><CODE>MtxPtr</CODE></a>.</TD>
27    </tr>
28  <tr>
29<TD width="120" valign="top" align="left" bgcolor="#ffffe8"><em><strong>srcBase</strong></em></TD>
30<TD width="520" valign="top" align="left">Pointer to first matrix of source matrix array for multiply. (As second matrix for each concatenation.)</TD>
31    </tr>
32  <tr>
33<TD width="120" valign="top" align="left" bgcolor="#ffffe8"><em><strong>dstBase</strong></em></TD>
34<TD width="520" valign="top" align="left">Pointer to first matrix of destination matrix array.</TD>
35    </tr>
36  <tr>
37<TD width="120" valign="top" align="left" bgcolor="#ffffe8"><em><strong>count</strong></em></TD>
38<TD width="520" valign="top" align="left">Number of contiguous array elements to multiply. <em><strong>count</strong></em> should be greater than 1.</TD>
39    </tr>
40
41</TABLE>
42</div>
43<P>OK if <code><em><strong>srcBase</strong></em>=<strong><em>dstBase</em></strong>.</code>But the condition <code><strong><em>srcBase</em>&lt;<em>dstBase</em></strong>&lt;(<em><strong>srcBase</strong></em>+<em><strong>count</strong></em>-1)</code>must be avoided.</P>
44<h2 align="left">Return Values</h2>
45<P>None.</P>
46<h2 align="left">Description</h2>
47<P>Performs matrix concatenation for arrays. Multiplies ( <code><em><strong>a</strong></em></code> x <strong><em><code>srcBase[n]</code></em></strong> ) and places the result in <code><strong><em>dstBase[n] </em></strong>(<em><strong>0&lt;n&lt;count</strong></em>)</code>.&nbsp;Matrices are treated as row-major for multiplication purposes.</P>
48<P>For arrays of matrices, this function is more efficient than calling <CODE>MTXConcat</CODE> in a loop as it saves the overhead of repeated function calls.</P>
49<P>During a debug build, <code>MTXConcatArray</code> is interpreted as <code>C_MTXConcatArray</code>, which is a normal C language version. During a nondebug build for a Broadway processor, the paired-singles equivalent of this function, <code>PSMTXConcatArray</code>, will be automatically substituted. You can also call <code>C_MTXConcatArray</CODE> or <CODE>PSMTXConcatArray</code> explicitly.</P>
50<P><B>Note:</B> Some calculation errors may be expected between C version and paired-single version because of processing order differences.</P>
51
52
53<h2 align="left">See Also</h2>
54
55<p align="left"><a href="../structures/Mtx_MtxPtr.html"><CODE>Mtx, MtxPtr</CODE></a>, <a href="MTXConcat.html"><CODE>MTXConcat</CODE></a>
56</p>
57<H2>Revision History</H2>
58<P>03/01/2006 Initial version.</P>
59</body>
60</html>