bool ATITShader::setParameter4f(StringTableEntry name, F32 value0, F32 value1, F32 value2, F32 value3) { ASMShaderParameter* param = getNamedParameter(name); if(!param) return false; if(param->mVertexId != -1) { if(param->mVertexIsEnv) glProgramEnvParameter4fARB(GL_VERTEX_PROGRAM_ARB, param->mVertexId, value0, value1, value2, value3); else glProgramLocalParameter4fARB(GL_VERTEX_PROGRAM_ARB, param->mVertexId, value0, value1, value2, value3); } if(param->mFragmentId != -1) { if(param->mFragmentIsEnv) glProgramEnvParameter4fARB(GL_TEXT_FRAGMENT_SHADER_ATI, param->mFragmentId, value0, value1, value2, value3); else glProgramLocalParameter4fARB(GL_TEXT_FRAGMENT_SHADER_ATI, param->mFragmentId, value0, value1, value2, value3); } return true; }
int CgiNetIO( FILE * stream, REQUEST * req ) { char *name = 0; char *value = 0; char tmp[100] = ""; if (req->req_query) { char *pname; char *pvalue; int i; int count; strncpy( tmp, req->req_query, sizeof(tmp)-1 ); count = NutHttpGetParameterCount(req); /* Extract count parameters. */ for (i = 0; i < count; i++) { pname = NutHttpGetParameterName(req, i); pvalue = NutHttpGetParameterValue(req, i); /* Send the parameters back to the client. */ // fprintf_P(stream, PSTR("%s: %s<BR>\r\n"), pname, pvalue); if( 0 == strcmp( pname, "name" ) ) name = pvalue; if( 0 == strcmp( pname, "item" ) ) name = pvalue; if( 0 == strcmp( pname, "val" ) ) value = pvalue; if( 0 == strcmp( pname, "value" ) ) value = pvalue; } } if( name == 0 ) { //httpSendString( stream, "Error: must be 'name' and, possibly, 'value' parameters" ); // errmsg: //NutHttpSendHeaderTop(stream, req, 500, "Must have ?name= or ?name=&value=, name: adc{0-7}, dig{0-63}, temp{0-7}"); web_header_200(stream, req); static prog_char h1[] = "<HTML><body> Must have ?name= or ?name=&value=, name: adc{0-7}, temp{0-7}, q='%s' </body></HTML>"; fprintf_P( stream, h1, tmp ); return 0; } if( value ) { // Write int rc = setNamedParameter( name, value ); if( rc ) { web_header_200(stream, req); static prog_char h1[] = "<HTML><body>set %s rc=%d</body></HTML>"; fprintf_P(stream, h1, name, rc ); return 0; } httpSendString( stream, req, "Ok" ); notice_activity(); } else { char *data = getNamedParameter( name ); if( data == 0 ) { // goto errmsg; web_header_200(stream, req); static prog_char h1[] = "<HTML><body>no data for %s</body></HTML>"; fprintf_P(stream, h1, name ); return 0; } httpSendString( stream, req, data ); notice_activity(); } return 0; }