コード例 #1
0
ファイル: blink1input.cpp プロジェクト: cyberzed/blink1
void Blink1Input::fromJson( QJsonObject obj)
{
    setName( obj.value("name").toString() );
    setType(obj.value("type").toString());
    setArg1(obj.value("arg1").toString());
    setArg2(obj.value("arg2").toString());
    setDate(obj.value("date").toDouble());
    setFreq(obj.value("freq").toDouble());
    setFreqCounter(obj.value("freqCounter").toDouble());
    setPatternName(obj.value("patternName").toString());
}
コード例 #2
0
arg* getArg(char* buffer,int nbArg,int c,int sock){
	int i,j,taille,estNegatif;
	char* nbArgTmp;
	estNegatif=1;
	arg* tabArg=malloc(nbArg*sizeof(arg));
	for(i=0;i <nbArg;i++){
		if(buffer[++c]==1 || buffer[c]==3){//l'argument est un entier
			tabArg[i].type=buffer[c];
			if(buffer[c]==3){
				estNegatif=-1;
			}
			else{
				estNegatif=1;
			}
			taille=buffer[++c];
			nbArgTmp=malloc(taille*(sizeof(char))+1);
			for(j=0;j<taille;j++){
				nbArgTmp[j]=buffer[++c];
				printf("arg numero%d %c \n",i,nbArgTmp[j]);
			}
			nbArgTmp[j]='\0';
			printf("argument est %d et sa taille est %d  et son string %s\n",atoi(nbArgTmp),taille,nbArgTmp);
			tabArg[i].arg=setArg(atoi(nbArgTmp)*estNegatif);
			free(nbArgTmp);
		}
		else if (buffer[c]==2){//l'argument est un char*
			tabArg[i].type=2;
			taille=buffer[++c];
			nbArgTmp=malloc((taille+1)*(sizeof(char)));
			for(j=0;j<taille;j++){
				nbArgTmp[j]=buffer[++c];
			}
			nbArgTmp[j]='\0';
			tabArg[i].arg=setArg2(nbArgTmp);
			free(nbArgTmp);
		}
		else{
			perror("type d'argument innatendu");
			printf("\n%d\n",buffer[c]);
			char a= MAUVAIS_ARGUMENTS;
			write(sock,&a,1);
			close(sock);
			return NULL;
		}		
	}
	printf("fini le traitement ici\n");
	return tabArg;
}