Public Member Functions | Static Public Member Functions
android::RSC::ScriptIntrinsicBlend Class Reference

#include <rsCppStructs.h>

Inheritance diagram for android::RSC::ScriptIntrinsicBlend:
android::RSC::ScriptIntrinsic android::RSC::Script android::RSC::BaseObj

Public Member Functions

void forEachClear (sp< Allocation > in, sp< Allocation > out)
void forEachSrc (sp< Allocation > in, sp< Allocation > out)
void forEachDst (sp< Allocation > in, sp< Allocation > out)
void forEachSrcOver (sp< Allocation > in, sp< Allocation > out)
void forEachDstOver (sp< Allocation > in, sp< Allocation > out)
void forEachSrcIn (sp< Allocation > in, sp< Allocation > out)
void forEachDstIn (sp< Allocation > in, sp< Allocation > out)
void forEachSrcOut (sp< Allocation > in, sp< Allocation > out)
void forEachDstOut (sp< Allocation > in, sp< Allocation > out)
void forEachSrcAtop (sp< Allocation > in, sp< Allocation > out)
void forEachDstAtop (sp< Allocation > in, sp< Allocation > out)
void forEachXor (sp< Allocation > in, sp< Allocation > out)
void forEachMultiply (sp< Allocation > in, sp< Allocation > out)
void forEachAdd (sp< Allocation > in, sp< Allocation > out)
void forEachSubtract (sp< Allocation > in, sp< Allocation > out)

Static Public Member Functions

static sp< ScriptIntrinsicBlendcreate (sp< RS > rs, sp< const Element > e)

Detailed Description

Intrinsic kernel for blending two Allocations.

Definition at line 1435 of file rsCppStructs.h.


Member Function Documentation

static sp<ScriptIntrinsicBlend> android::RSC::ScriptIntrinsicBlend::create ( sp< RS rs,
sp< const Element e 
) [static]

Supported Element types are U8_4.

Parameters:
[in]rsRenderScript context
[in]eElement
Returns:
new ScriptIntrinsicBlend
void android::RSC::ScriptIntrinsicBlend::forEachAdd ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = min(src + dst, 1.0)

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachClear ( sp< Allocation in,
sp< Allocation out 
)

sets dst = {0, 0, 0, 0}

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachDst ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = dst (NOP)

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachDstAtop ( sp< Allocation in,
sp< Allocation out 
)

Sets dst.rgb = dst.rgb * src.a + (1.0 - dst.a) * src.rgb

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachDstIn ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = dst * src.a

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachDstOut ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = dst * (1.0 - src.a)

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachDstOver ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = dst + src * (1.0 - dst.a)

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachMultiply ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = src * dst

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachSrc ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = src

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachSrcAtop ( sp< Allocation in,
sp< Allocation out 
)

Sets dst.rgb = src.rgb * dst.a + (1.0 - src.a) * dst.rgb

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachSrcIn ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = src * dst.a

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachSrcOut ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = src * (1.0 - dst.a)

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachSrcOver ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = src + dst * (1.0 - src.a)

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachSubtract ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = max(dst - src, 0.0)

Parameters:
[in]ininput Allocation
[in]outoutput Allocation
void android::RSC::ScriptIntrinsicBlend::forEachXor ( sp< Allocation in,
sp< Allocation out 
)

Sets dst = {src.r ^ dst.r, src.g ^ dst.g, src.b ^ dst.b, src.a ^ dst.a}

Parameters:
[in]ininput Allocation
[in]outoutput Allocation

The documentation for this class was generated from the following file: