2.2.2 La fonction qui écrit le plugin

Pour écrire notre plugin, nous allons devoir écrire dans un fichier, nous utiliserons donc la fonction fprintf. Et nous passerons la chaîne de caractère contenant l'expression à calculer à cette fonction.

1
2
3
4
5
6
7
8
bool writePlugin(const std::string & fileNamePlugin, const std::string & calcExpr){
	if(fileNamePlugin == "" || calcExpr == "") return false;
	FILE* fp = fopen(fileNamePlugin.c_str(), "w");
	if(fp == NULL) return false;
	fprintf(fp, "\n#include <math.h>\n\ndouble callingFunctionPlugin(double x){\n\treturn %s;\n}\n\n", calcExpr.c_str());
	fclose(fp);
	return true;
}

Pensez bien à tester si les chaînes passées au programme ne sont pas vide.