Lines Matching refs:rsc

25 ProgramVertex::ProgramVertex(Context *rsc, const char * shaderText, size_t shaderLength,
29 : Program(rsc, shaderText, shaderLength, params, paramLength) {
38 void ProgramVertex::setup(Context *rsc, ProgramVertexState *state) {
45 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
49 float *f = static_cast<float *>(rsc->mHal.funcs.allocation.lock1D(
50 rsc, mHal.state.constants[0]));
59 rsc->mHal.funcs.allocation.unlock1D(rsc, mHal.state.constants[0]);
64 rsc->mHal.funcs.vertex.setActive(rsc, this);
67 void ProgramVertex::setProjectionMatrix(Context *rsc, const rsc_Matrix *m) const {
69 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
74 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
78 float *f = static_cast<float *>(rsc->mHal.funcs.allocation.lock1D(
79 rsc, mHal.state.constants[0]));
82 rsc->mHal.funcs.allocation.unlock1D(rsc, mHal.state.constants[0]);
85 void ProgramVertex::setModelviewMatrix(Context *rsc, const rsc_Matrix *m) const {
87 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
92 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
96 float *f = static_cast<float *>(rsc->mHal.funcs.allocation.lock1D(
97 rsc, mHal.state.constants[0]));
100 rsc->mHal.funcs.allocation.unlock1D(rsc, mHal.state.constants[0]);
103 void ProgramVertex::setTextureMatrix(Context *rsc, const rsc_Matrix *m) const {
105 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
110 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
114 float *f = static_cast<float *>(rsc->mHal.funcs.allocation.lock1D(
115 rsc, mHal.state.constants[0]));
118 rsc->mHal.funcs.allocation.unlock1D(rsc, mHal.state.constants[0]);
121 void ProgramVertex::getProjectionMatrix(Context *rsc, rsc_Matrix *m) const {
123 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
128 rsc->setError(RS_ERROR_FATAL_UNKNOWN,
133 rsc->mHal.funcs.allocation.lock1D(rsc, mHal.state.constants[0]));
135 rsc->mHal.funcs.allocation.unlock1D(rsc, mHal.state.constants[0]);
138 void ProgramVertex::transformToScreen(Context *rsc, float *v4out, const float *v3in) const {
143 rsc->mHal.funcs.allocation.lock1D(rsc, mHal.state.constants[0]));
148 rsc->mHal.funcs.allocation.unlock1D(rsc, mHal.state.constants[0]);
151 void ProgramVertex::serialize(Context *rsc, OStream *stream) const {
154 ProgramVertex *ProgramVertex::createFromStream(Context *rsc, IStream *stream) {
167 void ProgramVertexState::init(Context *rsc) {
168 ObjectBaseRef<const Element> matrixElem = Element::createRef(rsc, RS_TYPE_MATRIX_4X4,
170 ObjectBaseRef<const Element> f2Elem = Element::createRef(rsc, RS_TYPE_FLOAT_32,
172 ObjectBaseRef<const Element> f3Elem = Element::createRef(rsc, RS_TYPE_FLOAT_32,
174 ObjectBaseRef<const Element> f4Elem = Element::createRef(rsc, RS_TYPE_FLOAT_32,
180 ObjectBaseRef<const Element> constInput = Element::create(rsc, 4, ebe1, ebn1);
184 ObjectBaseRef<const Element> attrElem = Element::create(rsc, 4, ebe2, ebn2);
186 ObjectBaseRef<Type> inputType = Type::getTypeRef(rsc, constInput.get(), 1);
205 ProgramVertex *pv = new ProgramVertex(rsc, shaderString, strlen(shaderString),
207 Allocation *alloc = Allocation::createAllocation(rsc, inputType.get(),
209 pv->bindAllocation(rsc, alloc, 0);
214 updateSize(rsc);
217 void ProgramVertexState::updateSize(Context *rsc) {
218 float *f = static_cast<float *>(rsc->mHal.funcs.allocation.lock1D(rsc, mDefaultAlloc.get()));
220 float surfaceWidth = (float)rsc->getCurrentSurfaceWidth();
221 float surfaceHeight = (float)rsc->getCurrentSurfaceHeight();
231 rsc->mHal.funcs.allocation.unlock1D(rsc, mDefaultAlloc.get());
234 void ProgramVertexState::deinit(Context *rsc) {
244 RsProgramVertex rsi_ProgramVertexCreate(Context *rsc, const char * shaderText, size_t shaderLength,
248 ProgramVertex *pv = new ProgramVertex(rsc, shaderText, shaderLength,