#include #include #include #include #include #include "../qrencode.h" struct timeval tv; void timerStart(const char *str) { printf("%s: START\n", str); gettimeofday(&tv, NULL); } void timerStop(void) { struct timeval tc; gettimeofday(&tc, NULL); printf("STOP: %ld msec\n", (tc.tv_sec - tv.tv_sec) * 1000 + (tc.tv_usec - tv.tv_usec) / 1000); } void prof_ver1to10(void) { QRcode *code; int i; int version; static const char *data = "This is test."; timerStart("Version 1 - 10 (500 symbols for each)"); for(i=0; i<500; i++) { for(version = 0; version < 11; version++) { code = QRcode_encodeString(data, version, QR_ECLEVEL_L, QR_MODE_8, 0); if(code == NULL) { perror("Failed to encode:"); } else { QRcode_free(code); } } } timerStop(); } void prof_ver31to40(void) { QRcode *code; int i; int version; static const char *data = "This is test."; timerStart("Version 31 - 40 (50 symbols for each)"); for(i=0; i<50; i++) { for(version = 31; version < 41; version++) { code = QRcode_encodeString(data, version, QR_ECLEVEL_L, QR_MODE_8, 0); if(code == NULL) { perror("Failed to encode:"); } else { QRcode_free(code); } } } timerStop(); } int main(void) { prof_ver1to10(); prof_ver31to40(); QRcode_clearCache(); return 0; }