X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=odr%2Ftest.c;h=013eefbb8a79fb9bf810386093b9a3022cd96255;hp=854f89b7bea70488d4b564f61747396f31c8c519;hb=e8464a391ad260860795a69bcd1bcf6940cc17de;hpb=892f7f56860a1ee8e8d816eeaec0387c54c1a0a7 diff --git a/odr/test.c b/odr/test.c index 854f89b..013eefb 100644 --- a/odr/test.c +++ b/odr/test.c @@ -2,6 +2,8 @@ #include #include +#if 0 + typedef Odr_bitmask Z_ReferenceId; typedef struct Z_InitRequest @@ -133,30 +135,32 @@ int main() } #endif +#endif + int main() { - struct A ch, *chp1, *chp2; - int b = 9999; - char *c = "Nu tester vi en satans forpulet CHOICE!"; - struct odr o; - unsigned char buf[4096]; - - ch.u.c = c; - ch.which = 1; - chp1 = &ch; - - o.buf = buf; - o.bp=o.buf; - o.left = o.buflen = 1024; - o.direction = ODR_ENCODE; - o.t_class = -1; - - f_A(&o, &chp1, 0); - - o.direction = ODR_DECODE; - o.bp = o.buf; + Odr_bitmask a; + char command; + int val; + char line[100]; - f_A(&o, &chp2, 0); - - return 0; + ODR_MASK_ZERO(&a); + while (gets(line)) + { + int i; + + sscanf(line, "%c %d", &command, &val); + switch (command) + { + case 's': ODR_MASK_SET(&a, val); break; + case 'c': ODR_MASK_CLEAR(&a, val); break; + case 'g': printf("%d\n", ODR_MASK_GET(&a, val)); break; + case 'l': break; + default: printf("enter c or s or l\n"); continue; + } + printf("top is %d\n", a.top); + for (i = 0; i <= a.top; i++) + printf("%2.2x ", a.bits[i] ); + printf("\n"); + } }