bool VideoTheoraPlayer::writeVideo() { if (!_texture) { return STATUS_FAILED; } _texture->startPixelOp(); writeAlpha(); if (_alphaImage) { _texture->putSurface(_surface, true); } else { _texture->putSurface(_surface, false); } //RenderFrame(_texture, &yuv); _texture->endPixelOp(); _videoFrameReady = true; return STATUS_OK; }
int main(int npar, char ** parch) { double buff; int i,j,k; int nx, nt, NfMx; char c; char *cteq="CTEQ"; double *q,*x,*d; char version[30]; int ordr, nf,nf6,nf5,nf4,nf3; double ordrf, nff; double Mc,Mb,Mt; double lambda,L6,L5,L4,L3; int Ncteq; char names[4][10]={"(6 -6)", "(5 -5)", "(4 -4)", "(3 -3)"}; char * p; do scanf("%c",&c); while(c!=':'); scanf("%s",version); p=strstr(version,".tbl"); if(p) p[0]=0; for(i=0;i<4;i++) if(toupper(version[i]) !=cteq[i]) {fprintf(stderr,"Non expected file format\n"); return 1;} Ncteq=version[4]-'0'; switch(Ncteq) { case 5: Ncteq=4; break; case 4: case 6: break; default:{fprintf(stderr,"Unknown version CTEQ%d \n",Ncteq); return 2;} } skipline(2); if(6!=scanf("%lf %lf %lf %*lf %*lf %*lf %lf %lf %lf", &ordrf, &nff,&lambda,&Mc,&Mb,&Mt )) goto errExit; nf=nff; ordr=ordrf; skipline(2); if(3!=scanf("%d %d %d",&nx,&nt,&NfMx))goto errExit; printf("#distribution \"%s(proton)\" 2212 => ",version); for(i= 6-NfMx; i<4;i++) printf(" %s",names[i]); printf(" -1 -2 21 2 1 \n"); printf("#distribution \"%s(anti-proton)\" -2212 => ",version); for(i=6-NfMx; i<4;i++) printf(" %s",names[i]); printf(" 1 2 21 -2 -1\n"); skipline(2); scanf("%lf",&buff); printf("\n#q_min %.5E\n", buff); scanf("%lf",&buff); /* printf("\n#q_max %.5E\n", buff); */ skipline(1); q=(double *)malloc(sizeof(double)*(nt+1)); for(i=0;i<=nt;i++) scanf("%lf",q+i); printf("\n#Q_grid\n"); for(i=0,j=1;i<=nt;i++,j++) { printf(" %.5E",q[i]); if(j==10) {printf("\n"); j=0;} } printf("\n"); writeAlpha(stdout,nf,ordr,lambda,NfMx,Mc,Mb,Mt,nt+1,q); /* nf6=nf; L6=lambda; if(nf6==6) {nf5=5; L5=findLambda(5,ordr, alpha(6, ordr,L6, 175.) ,175.);} else {nf5=nf;L5=lambda;} if(nf5==5) {nf4=4; L4=findLambda(4,ordr, alpha(5, ordr,L5, 4.5 ) ,4.5);} else {nf4=nf;L4=lambda;} if(nf4==4) {nf3=3; L3=findLambda(3,ordr, alpha(4, ordr,L4, 1.4 ) ,1.4);} else {nf3=nf;L3=lambda;} printf("\n#Alpha\n"); for(i=0,j=1;i<=nt;i++,j++) { double al; double Q=q[i]; if(Q<1.4) al=alpha(nf3, ordr, L3, Q); else if(Q<4.5) al=alpha(nf4, ordr, L4, Q); else if(Q<175.) al=alpha(nf5, ordr, L5, Q); else al=alpha(nf6, ordr, L6, Q); printf(" %.5E",al); if(j==10) {printf("\n"); j=0;} } printf("\n"); */ skipline(2); scanf("%lf",&buff); printf("\n#x_min %.5E\n", buff); skipline(1); printf("\n#X_grid\n"); for(i=0,j=1;i<=nx;i++,j++) { scanf("%lf",&buff); printf(" %.5E ",buff); if(j==10) {printf("\n"); j=0;} } printf("\n"); skipline(2); printf("\n#Interpolation CTEQ%d %f ",Ncteq,lambda); for(k=0;k<3+NfMx;k++) { printf("\n#%d-parton\n",k+1); for(j=0;j<nt+1;j++) { for(i=0;i<nx+1;i++) {scanf("%lf",&buff); printf(" %.5E",buff);} printf("\n"); } } return 0; errExit: fprintf(stderr,"%d", ftell(stdin)); }
int main(int npar, char ** parch) { int i,j; int NfMx=5; double q[NQ]= { 1.25,1.5,2.,2.5,3.2,4.,5.,6.4,8.,10.,12.,18., 26.,40.,64.,100.,160.,240.,400.,640.,1e3,1800.,3200.,5600.,1e4, 1.8e4,3.2e4,5.6e4,1e5,1.8e5,3.2e5,5.6e5,1e6,1.8e6,3.2e6,5.6e6,1e7}; double x[NX]={ 1e-5,2e-5,4e-5,6e-5,8e-5,1e-4,2e-4,4e-4,6e-4, 8e-4,.001,.002,.004,.006,.008,.01,.014,.02,.03,.04,.06,.08,.1, .125,.15,.175,.2,.225,.25,.275,.3,.325,.35,.375,.4,.425,.45,.475, .5,.525,.55,.575,.6,.65,.7,.75,.8,.9,1. }; char * version; double Mc=sqrt(2.045); double Mb=sqrt(18.5); double Mt=175; char names[4][10]={"(6 -6)", "(5 -5)", "(4 -4)", "(3 -3)"}; double f1[49*37],f2[49*37],f3[49*37],f4[49*37], f5[49*37],f6[49*37],f7[49*37],f8[49*37]; if( npar!=2 && npar!=5 ) { fprintf(stderr,"This routine needs 1 parameters: identifier of the set, or 4 parameters:\n" "1. the identifier; 2. nf; 3. order (lo, nlo,nnlo); 4. alpha_QCD(MZ)\n"); return 1; } version=parch[1]; printf("#distribution \"%s(proton)\" 2212 => ",version); for(i= 6-NfMx; i<4;i++) printf(" %s",names[i]); printf(" -1 -2 21 2 1 \n"); printf("#distribution \"%s(anti-proton)\" -2212 => ",version); for(i=6-NfMx; i<4;i++) printf(" %s",names[i]); printf(" 1 2 21 -2 -1\n"); printf("\n#Q_grid\n"); for(i=0;i<NQ;i++) q[i]=sqrt(q[i]); for(i=0,j=1;i<NQ;i++,j++) { printf(" %.9E",q[i]); if(j==10) {printf("\n"); j=0;} } if(npar==5) { int ordr, nf, nfMx; double lambda, alphMZ; if(sscanf(parch[2],"%d", &nf)!=1 || nf>6 || nf<4) { fprintf(stderr,"Second parameter should be a hole number between 4 and 6\n"); exit(1); } if(strcmp(parch[3],"lo")==0) ordr=1; else if(strcmp(parch[3],"nlo")==0) ordr=2; else if(strcmp(parch[3],"nnlo")==0) ordr=3; else { fprintf(stderr,"Third parameter should be 'lo', 'nlo', or 'nnlo' \n"); exit(1); } if(sscanf(parch[4],"%lf", &alphMZ)!=1 || alphMZ<0.09 || alphMZ>0.15) { fprintf(stderr,"Fourth parameter should be a number between 0.09 and 0.15\n"); exit(1); } if(nf==6){nf=5;nfMx=6;} else nfMx=nf; lambda=findLambda(nf,ordr,alphMZ,91.187); writeAlpha(stdout,nf,ordr,lambda,nfMx,Mc,Mb,Mt,NQ,q); } printf("\n#X_grid\n"); for(i=0,j=1;i<NX;i++,j++) { printf(" %.5E",x[i]); if(j==10) {printf("\n"); j=0;} } printf("\n"); printf("\n#Interpolation MRST2001\n"); for(i=0; i<NX-1; ++i) for(j=0; j<NQ;++j) { int k=i+j*NX; scanf("%lf %lf %lf %lf %lf %lf %lf %lf",f1+k,f2+k,f3+k,f4+k,f5+k,f7+k,f6+k,f8+k); } /* notation: 1=uval 2=val 3=glue 4=usea 5=chm 6=str 7=btm 8=dsea */ /*(b,B) (c,C) (s,S) D U G u d */ printf("\n#q_threshold %.7E\n",Mb); printf("\n#1-parton\n"); for(j=0;j<NQ;j++) { for(i=0;i<NX-1;i++) printf(" %.8E",f7[j*NX+i]/x[i]); printf(" 0.\n"); } printf("\n#q_threshold %.7E\n",Mc); printf("\n#2-parton\n"); for(j=0;j<NQ;j++) { for(i=0;i<NX-1;i++) printf(" %.6E",f5[j*NX+i]/x[i]); printf(" 0.\n"); } printf("\n#q_threshold 0\n"); printf("\n#3-parton\n"); for(j=0;j<NQ;j++) { for(i=0;i<NX-1;i++) printf(" %.6E",f6[j*NX+i]/x[i]); printf(" 0.\n"); } printf("\n#4-parton\n"); for(j=0;j<NQ;j++) { for(i=0;i<NX-1;i++) printf(" %.6E",f8[j*NX+i]/x[i]); printf(" 0.\n"); } printf("\n#5-parton\n"); for(j=0;j<NQ;j++) { for(i=0;i<NX-1;i++) printf(" %.6E",f4[j*NX+i]/x[i]); printf(" 0.\n"); } printf("\n#6-parton\n"); for(j=0;j<NQ;j++) { for(i=0;i<NX-1;i++) printf(" %.6E",f3[j*NX+i]/x[i]); printf(" 0.\n"); } printf("\n#7-parton\n"); for(j=0;j<NQ;j++) { for(i=0;i<NX-1;i++) printf(" %.6E",(f1[j*NX+i]+f4[j*NX+i])/x[i]); printf(" 0.\n"); } printf("\n#8-parton\n"); for(j=0;j<NQ;j++) { for(i=0;i<NX-1;i++) printf(" %.6E",(f2[j*NX+i]+f8[j*NX+i])/x[i]); printf(" 0.\n"); } return 0; }