<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
              "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd" [
<!ENTITY vectorFunctionsInc SYSTEM "vectorFunctionsInc.xml">
<!ENTITY vectorHalfFunctionsInc SYSTEM "vectorHalfFunctionsInc.xml">
<!ENTITY vectorDoubleFunctionsInc SYSTEM "vectorDoubleFunctionsInc.xml">
]>
<refentry>
    <refentryinfo>
        <keywordset>
            <keyword>vloadn</keyword>
        </keywordset>
    </refentryinfo>

    <refmeta>                                    
        <refentrytitle>vload<arg>n</arg></refentrytitle>

        <refmiscinfo>
            <copyright>
                <year>2007-2010</year>
                <holder>The Khronos Group Inc. 
 Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and/or associated documentation files (the
"Materials"), to deal in the Materials without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Materials, and to
permit persons to whom the Materials are furnished to do so, subject to
the condition that this copyright notice and permission notice shall be included
in all copies or substantial portions of the Materials.</holder>
            </copyright>
        </refmiscinfo>
        <manvolnum>3</manvolnum>
    </refmeta>

<!-- ================================ SYNOPSIS -->

    <refnamediv id="vloadn">             
        <refname>vload<replaceable>n</replaceable></refname>

        <refpurpose>
            Read vectors from a pointer to memory.
        </refpurpose>
    </refnamediv>

    <refsynopsisdiv xmlns:xlink="http://www.w3.org/1999/xlink"><title></title>
        <funcsynopsis>
            <funcprototype>
                <funcdef>
                    gentype<replaceable>n</replaceable>
                    <function>                   
                        vload<replaceable>n</replaceable>
                    </function>
                </funcdef>      
                <paramdef>
                    <link xlink:href="scalarDataTypes.html">size_t</link>
                    <parameter>offset</parameter>
                </paramdef>
                <paramdef>const 
                    <link xlink:href="global.html">__global</link> gentype
                    <parameter>*p</parameter></paramdef>
            </funcprototype>
        </funcsynopsis>     
        
        <funcsynopsis>
            <funcprototype> 
                <funcdef>
                    gentype<replaceable>n</replaceable>
                    <function>                   
                        vload<replaceable>n</replaceable>
                    </function>
                </funcdef>      
                <paramdef>
                    <link xlink:href="scalarDataTypes.html">size_t</link>
                    <parameter>offset</parameter>
                </paramdef>
                    <paramdef>const <link xlink:href="local.html">__local</link> gentype
                    <parameter>*p</parameter>
                </paramdef>
            </funcprototype>
        </funcsynopsis>     

         <funcsynopsis>
            <funcprototype> 
                <funcdef>
                    gentype<replaceable>n</replaceable>
                    <function>                   
                        vload<replaceable>n</replaceable>
                    </function>
                </funcdef>
                    <paramdef>
                    <link xlink:href="scalarDataTypes.html">size_t</link>
                    <parameter>offset</parameter>
                </paramdef>
                    <paramdef>const <link xlink:href="constant.html">__constant</link> gentype
                    <parameter>*p</parameter>
                </paramdef>
            </funcprototype>
        </funcsynopsis>      

        <funcsynopsis>
            <funcprototype>
                <funcdef>
                    gentype<replaceable>n</replaceable>
                    <function>                   
                        vload<replaceable>n</replaceable>
                    </function>
                </funcdef>      
                <paramdef>
                    <link xlink:href="scalarDataTypes.html">size_t</link>
                    <parameter>offset</parameter>
                </paramdef>
                <paramdef>const <link xlink:href="private.html">__private</link> gentype
                    <parameter>*p</parameter>
                </paramdef>
            </funcprototype>
        </funcsynopsis>     
    </refsynopsisdiv>   
        

<!-- ================================ DESCRIPTION  -->

    <refsect1 id="description"><title>Description</title>
        <para>
        Return sizeof (<type>gentype<replaceable>n</replaceable></type>) bytes of data read from address (<varname>p</varname> + (<varname>offset</varname> * <varname>n</varname>)). 
        <para>
        </para>
The address computed as (<varname>p</varname> + (<varname>offset</varname> * <varname>n</varname>)) must be 8-bit aligned if <type>gentype</type> is <type>char</type> or <type>uchar</type>; 16-bit aligned if <type>gentype</type> is <type>short</type> or <type>ushort</type>; 32-bit aligned if <type>gentype</type> is <type>int</type>, <type>uint</type>, or <type>float</type>; 64-bit aligned if <type>gentype</type> is <type>long</type> or  <type>ulong</type>. 
        </para> 
        
        <para>
If the <type>double</type> extension is enabled, then in addition to the above the address must be 64-bit aligned if <type>gentype</type> is <type>long<replaceable>n</replaceable></type>, <type>ulong<replaceable>n</replaceable></type>, or <type>double<replaceable>n</replaceable></type>.
        </para>
        <para>
If the <type>half</type> extension is enabled, the address computed as (<varname>p</varname> + (<varname>offset</varname> * <varname>n</varname>)) must be 16-bit aligned.
        </para>
    
        
    </refsect1>

<!-- ================================ NOTES  -->

    <refsect1 id="notes"><title>Notes</title> 
        &vectorFunctionsInc;
        <para>
            The generic type <type>gentype</type> is used to indicate the built-in data types
            <type>char</type>, <type>uchar</type>, <type>short</type>, <type>ushort</type>, <type>int</type>, 
            <type>uint</type>, <type>long</type>, <type>ulong</type>, or <type>float</type>. 
        </para>
        <para>
            The generic type name <type>gentype<replaceable>n</replaceable></type> represents 
            <replaceable>n</replaceable>-element vectors of <type>gentype</type> elements. The suffix 
            <replaceable>n</replaceable> is also used in the function names (i.e. 
            <function>vload<replaceable>n</replaceable></function>, 
            <function>vstore<replaceable>n</replaceable></function>, etc.), 
            where <replaceable>n</replaceable> = 2, 3, 4, 8, or 16.
        </para>
        &vectorDoubleFunctionsInc;
        &vectorHalfFunctionsInc;
        <para>
        <function>vload3</function> and <function>vload_half3</function> read <varname>x</varname>, <varname>y</varname>, <varname>z</varname> components from address (<varname>p</varname> + (<varname>offset</varname> * 3)) into a 3-component vector. vstore3, and <function>vstore_half3</function> write <varname>x</varname>, <varname>y</varname>, <varname>z</varname> components from a 3-component vector to address (<varname>p</varname> + (<varname>offset</varname> * 3)).
        </para>
        <para>
In addition <function>vloada_half3</function> reads <varname>x</varname>, <varname>y</varname>, <varname>z</varname> components from address (<varname>p</varname> + (<varname>offset</varname> * 4)) into a 3-
component vector and <function>vstorea_half3</function> writes <varname>x</varname>, <varname>y</varname>, <varname>z</varname> components from a 3-component vector to
address (<varname>p</varname> + (<varname>offset</varname> * 4)).
        </para>
    </refsect1>

<!-- ================================ EXAMPLE  -->
<!-- DO NOT DELETE IN CASE AN EXAMPLE IS ADDED IN THE FUTURE -->
<!--
    <refsect2 id="example1">
        <title>
            Example
        </title>

        <informaltable frame="none">
            <tgroup cols="1" align="left" colsep="0" rowsep="0">
                <colspec colname="col1" colnum="1" />
                <tbody>
                    <row>
                        <entry>
                            Example goes here - it will be set in "code" type with white space preserved.
                        </entry>
                    </row>
                </tbody>
            </tgroup>
        </informaltable>
    </refsect2>
-->


<!-- ================================ SPECIFICATION  -->
<!-- Set the "uri" attribute in the <olink /> element to the "named destination" for the PDF page
-->
    <refsect1 id="specification"><title>Specification</title>
        <para>
            <imageobject>
                <imagedata fileref="pdficon_small1.gif" format="gif" />
            </imageobject>
                                                 
            <olink uri="vectorDataLoadandStoreFunctions">OpenCL Specification</olink>
        </para>
    </refsect1>


<!-- ================================ ALSO SEE  -->

    <refsect1 id="seealso"><title>Also see</title>
        <para>
            <citerefentry href="vectorDataLoadandStoreFunctions"><refentrytitle>Vector Data Load and Store Functions</refentrytitle></citerefentry> 
        </para>
    </refsect1>



<!-- ============================== COPYRIGHT -->
<!-- Content included from copyright.inc.xsl -->

    <refsect3 id="Copyright"><title></title>
        <imageobject>
                <imagedata fileref="KhronosLogo.jpg" format="jpg" />
        </imageobject>
        <para />
    </refsect3>

</refentry>

