From cc847eb79e094d39173d36d5808e609d11abd78e Mon Sep 17 00:00:00 2001 From: Anselme Date: Thu, 31 Mar 2016 17:14:08 +0200 Subject: [PATCH] added temp implementation of resource manager --- resource/main.cpp | 64 +++++++++++++++++++++++++++++++++++++++++++++ resource/resource.h | 13 +++++++++ 2 files changed, 77 insertions(+) create mode 100644 resource/main.cpp create mode 100644 resource/resource.h diff --git a/resource/main.cpp b/resource/main.cpp new file mode 100644 index 0000000..fb22ad0 --- /dev/null +++ b/resource/main.cpp @@ -0,0 +1,64 @@ +#include +#include + +using namespace std; + +#define NB_VAL_PER_LINE 256 + +bool addFile(const string &inFile, FILE *out) +{ + static unsigned int n = 0; + FILE *in = fopen(inFile.c_str(), "r"); + if(in == NULL) + { + fprintf(stderr, "can't open \"%s\" for readingn", inFile.c_str()); + return false; + } + fprintf(out, "\n\tunsigned char data%d[] = {\n", n); + unsigned char ptr[NB_VAL_PER_LINE]; + size_t nbRead; + do + { + nbRead = fread(ptr, sizeof(unsigned char), NB_VAL_PER_LINE, in); + for(unsigned int i=0; i\n#include \n\nnamespace Resource {\nstd::unordered_map *resourceFilesData;\n\nvoid initResourceData()\n{\n\tresourceFilesData = new std::unordered_map();\n"); + for(int i=2; icount(fileName) > 0)\n\t\treturn (*resourceFilesData)[fileName];\n\telse\n\t\treturn NULL;\n}\n}\n"); + fclose(out); + printf("successfully created resource file \"%s\".\n", argv[1]); + return EXIT_SUCCESS; +} diff --git a/resource/resource.h b/resource/resource.h new file mode 100644 index 0000000..02834ae --- /dev/null +++ b/resource/resource.h @@ -0,0 +1,13 @@ +#ifndef RES_H +#define RES_H + +#include +#include + +namespace Resource { + extern void initResourceData(); + extern unsigned char *get(); +} + + +#endif // RES_H