For anyone else who wants a solution to this, here is my solution. I didnt use any tool, instead I made a c++ function to read a file and write it in the form of an array, this function is to be used outside atmel.
void writevectorf(const char *filename, vector<float> &myvector){
FILE * pFile = fopen(filename,"w");
if (pFile!=NULL){
unsigned int size = myvector.size()-1;
fprintf(pFile,"%s","#include <vector>\n\n");
fprintf(pFile,"%s","float myfloats[] = {");
for (unsigned int i=0; i<size; ++i)
fprintf(pFile, "%0.7g, ",myvector[i]);
fprintf(pFile, "%0.7g};\n",myvector[size]);
fprintf(pFile, "%s = %d;\n","int datasize",myvector.size());
fprintf(pFile, "%s %d %s","std::vector<float> input (myfloats, myfloats +",myvector.size(),");");
fclose(pFile);
}
else
cout << "Unable to open file: " << filename << endl;
}
this function writes the file to a vector, it also writes to an array, feel free to modify it to suit your needs.