am e559d7ee: Merge "Utility API for creating types."

* commit 'e559d7ee53a69502c9aef8764bb055ed2d1adb64':
  Utility API for creating types.
This commit is contained in:
Tim Murray
2014-02-03 14:41:05 -08:00
committed by Android Git Automerger
2 changed files with 78 additions and 0 deletions

View File

@ -22518,6 +22518,9 @@ package android.renderscript {
}
public class Type extends android.renderscript.BaseObj {
method public static android.renderscript.Type createX(android.renderscript.RenderScript, android.renderscript.Element, int);
method public static android.renderscript.Type createXY(android.renderscript.RenderScript, android.renderscript.Element, int, int);
method public static android.renderscript.Type createXYZ(android.renderscript.RenderScript, android.renderscript.Element, int, int, int);
method public int getCount();
method public android.renderscript.Element getElement();
method public int getX();

View File

@ -215,6 +215,81 @@ public class Type extends BaseObj {
calcElementCount();
}
/**
* Utility function for creating basic 1D types. The type is
* created without mipmaps enabled.
*
* @param rs The RenderScript context
* @param e The Element for the Type
* @param dimX The X dimension, must be > 0
*
* @return Type
*/
static public Type createX(RenderScript rs, Element e, int dimX) {
if (dimX < 1) {
throw new RSInvalidStateException("Dimension must be >= 1.");
}
int id = rs.nTypeCreate(e.getID(rs), dimX, 0, 0, false, false, 0);
Type t = new Type(id, rs);
t.mElement = e;
t.mDimX = dimX;
t.calcElementCount();
return t;
}
/**
* Utility function for creating basic 2D types. The type is
* created without mipmaps or cubemaps.
*
* @param rs The RenderScript context
* @param e The Element for the Type
* @param dimX The X dimension, must be > 0
* @param dimY The Y dimension, must be > 0
*
* @return Type
*/
static public Type createXY(RenderScript rs, Element e, int dimX, int dimY) {
if ((dimX < 1) || (dimY < 1)) {
throw new RSInvalidStateException("Dimension must be >= 1.");
}
int id = rs.nTypeCreate(e.getID(rs), dimX, dimY, 0, false, false, 0);
Type t = new Type(id, rs);
t.mElement = e;
t.mDimX = dimX;
t.mDimY = dimY;
t.calcElementCount();
return t;
}
/**
* Utility function for creating basic 3D types. The type is
* created without mipmaps.
*
* @param rs The RenderScript context
* @param e The Element for the Type
* @param dimX The X dimension, must be > 0
* @param dimY The Y dimension, must be > 0
* @param dimZ The Z dimension, must be > 0
*
* @return Type
*/
static public Type createXYZ(RenderScript rs, Element e, int dimX, int dimY, int dimZ) {
if ((dimX < 1) || (dimY < 1) || (dimZ < 1)) {
throw new RSInvalidStateException("Dimension must be >= 1.");
}
int id = rs.nTypeCreate(e.getID(rs), dimX, dimY, dimZ, false, false, 0);
Type t = new Type(id, rs);
t.mElement = e;
t.mDimX = dimX;
t.mDimY = dimY;
t.mDimZ = dimZ;
t.calcElementCount();
return t;
}
/**
* Builder class for Type.
*