#include <inttypes.h>
#include "tableprint.h"
-#define WRITE_1D_FUNC(name, type, fmtstr, linebrk)\
-void write_##name##_array(const void *arg, int len, int dummy)\
-{\
- const type *data = arg;\
- int i;\
- printf(" ");\
- for (i = 0; i < len - 1; i++) {\
- printf(" "fmtstr",", data[i]);\
- if ((i & linebrk) == linebrk) printf("\n ");\
- }\
- printf(" "fmtstr"\n", data[i]);\
-}
-
-WRITE_1D_FUNC(int8, int8_t, "%3"PRIi8, 15)
-WRITE_1D_FUNC(uint32, uint32_t, "0x%08x", 7)
-
-#define WRITE_2D_FUNC(name, type)\
-void write_##name##_2d_array(const void *arg, int len, int len2)\
-{\
- const type *data = arg;\
- int i;\
- printf(" {");\
- for (i = 0; i < len; i++) {\
- write_##name##_array(data + i * len2, len2, 0);\
- printf(i == len - 1 ? " }\n" : " }, {\n");\
- }\
-}
-
-WRITE_2D_FUNC(uint32, uint32_t)
-
-int main(int argc, char *argv[])
-{
- int i;
-
+WRITE_1D_FUNC(int8_t, "%3"PRIi8, 15)
+WRITE_1D_FUNC(uint8_t, "0x%02"PRIx8, 15)
+WRITE_1D_FUNC(uint16_t, "0x%08"PRIx16, 7)
+WRITE_1D_FUNC(uint32_t, "0x%08"PRIx32, 7)
+WRITE_1D_FUNC(float, "%.18e", 3)
+
+WRITE_2D_FUNC(int8_t)
+WRITE_2D_FUNC(uint8_t)
+WRITE_2D_FUNC(uint32_t)
+WRITE_2D_FUNC(float)
+
+void write_fileheader(void) {
printf("/* This file was generated by libavcodec/tableprint */\n");
printf("#include <stdint.h>\n");
- tableinit();
-
- for (i = 0; tables[i].declaration; i++) {
- printf(tables[i].declaration);
- printf(" = {\n");
- tables[i].printfunc(tables[i].data, tables[i].size, tables[i].size2);
- printf("};\n");
- }
- return 0;
}