<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright 2013 The Android Open Source Project

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->



<sample>
    <name>BasicRenderScript</name>
    <group>RenderScript</group>
    <package>com.example.android.basicrenderscript</package>

    <!-- change minSdk if needed-->
    <minSdk>8</minSdk>

    <dependency_external>'renderscript-v8.jar'</dependency_external>

    <defaultConfig>
            renderscriptTargetApi 18
            renderscriptSupportModeEnabled true
    </defaultConfig>

    <strings>
        <intro>
            <![CDATA[
            This sample demonstrates using RenderScript to perform basic image manipulation. Specifically, it allows users
            to dynamically adjust the saturation for an image using a slider. A custom RenderScript kernel performs the saturation
            adjustment, running the computation on the device's GPU or other compute hardware as deemed appropriate by the system.
            ]]>
        </intro>
    </strings>

    <template src="base"/>
    <common src="media"/>

    <metadata>
        <status>PUBLISHED</status>
        <categories>RenderScript</categories>
        <technologies>Android</technologies>
        <languages>Java</languages>
        <solutions>Mobile</solutions>
        <level>EXPERT</level>
        <icon>screenshots/icon-web.png</icon>
        <screenshots>
            <img>screenshots/main.png</img>
        </screenshots>
        <api_refs>
            <android>android.renderscript.RenderScript</android>
            <android>android.renderscript.Allocation</android>
        </api_refs>

        <description>
<![CDATA[
This sample demonstrates using RenderScript to perform basic image manipulation. Specifically, it allows users
to dynamically adjust the saturation for an image using a slider. A custom RenderScript kernel performs the saturation
adjustment, running the computation on the device's GPU or other compute hardware as deemed appropriate by the system.
]]>
        </description>

        <intro>
<![CDATA[
[RenderScript][1] is a framework for running computationally intensive tasks at high performance on Android. RenderScript is
primarily oriented for use with data-parallel computation, although serial computationally intensive workloads can
benefit as well.

The RenderScript runtime will parallelize work across all processors available on a device, such as multi-core CPUs,
GPUs, or DSPs, allowing you to focus on expressing algorithms rather than scheduling work or load balancing.
RenderScript is especially useful for applications performing image processing, computational photography, or computer
vision.

This sample demonstrates the fundamentals of writing a RenderScript compute kernel, and using it to perform basic image
manipulation. In this case, each pixel is transformed based on a liner interpolation between its original
RGB value and it's luminance (black-and-white) value, weighted based on the user's specified saturation target.

[1]: http://developer.android.com/guide/topics/renderscript/compute.html
[2]: http://developer.android.com/reference/renderscript/rs__cl_8rsh.html#a254612a612ff7539b01a1478e03d8697
]]>
        </intro>
    </metadata>
</sample>
