From 9e992537d7ffd25711efb69c46b5719e7505656d Mon Sep 17 00:00:00 2001 From: Calvin Morrison Date: Thu, 6 Feb 2014 11:38:44 -0500 Subject: holy hell it works --- mer_generator.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 mer_generator.c (limited to 'mer_generator.c') diff --git a/mer_generator.c b/mer_generator.c new file mode 100644 index 0000000..a20c56f --- /dev/null +++ b/mer_generator.c @@ -0,0 +1,28 @@ +#include "stdio.h" +#include "limits.h" + +#include "kmer_utils.h" + +main() { + + int i = 0; + int j = 0; + unsigned long out = 0; + + for(j = 1; j < 32; j++) { + printf("unsigned long long mer_%d(const char *seq) { return ", j); + unsigned long multiply = 1; + for(i = j - 1; i >= 0; i--){ + printf("(seq[%d] * %d) + ", i, multiply); + multiply = multiply << 2; + } + printf(" 0; }\n"); + } + + printf("int (*return_fn())(const char * )mer_ptr(int kmer) { switch(kmer) {"); + for(j = 1; j < 32; j++) + printf("case %d: return mer_%d;", j, j); + printf("}"); + + +} -- cgit v1.2.3