diff --git a/src/bmp.h b/src/bmp.h index ab37a92..08d66c7 100644 --- a/src/bmp.h +++ b/src/bmp.h @@ -1,3 +1,4 @@ +typedef void line_fn(unsigned long y, char *data_buffer); + void bmp_generate(unsigned long width, unsigned long height, - unsigned int color_depth, char *file_path, - void generate_line(unsigned long y, char *data_buffer)); \ No newline at end of file + unsigned int color_depth, char *file_path, line_fn); \ No newline at end of file diff --git a/src/generator.c b/src/generator.c new file mode 100644 index 0000000..8e42236 --- /dev/null +++ b/src/generator.c @@ -0,0 +1,14 @@ +#include "bmp.h" +#include + +#define WIDTH 256 +#define HEIGHT 256 +#define COLOR_DEPTH 3 + +void generate_line(unsigned long y, char *data_buffer) { + memset(data_buffer, y, WIDTH * COLOR_DEPTH); +} + +void generate() { + bmp_generate(WIDTH, HEIGHT, COLOR_DEPTH, "test.bmp", generate_line); +} \ No newline at end of file diff --git a/src/generator.h b/src/generator.h new file mode 100644 index 0000000..f8ca05d --- /dev/null +++ b/src/generator.h @@ -0,0 +1 @@ +void generate(); \ No newline at end of file diff --git a/src/main.c b/src/main.c index 0588d24..c0c82e7 100644 --- a/src/main.c +++ b/src/main.c @@ -1,16 +1,6 @@ -#include - -#include "bmp.h" - -#define WIDTH 256 -#define HEIGHT 256 -#define COLOR_DEPTH 3 - -void generate_line(unsigned long y, char *data_buffer) { - memset(data_buffer, y, WIDTH * COLOR_DEPTH); -} +#include "generator.h" int main(int argc, char **argv) { - bmp_generate(WIDTH, HEIGHT, COLOR_DEPTH, "test.bmp", generate_line); + generate(); return 0; } \ No newline at end of file