blind

suckless command-line video editing utility
git clone git://git.suckless.org/blind
Log | Files | Refs | README | LICENSE

define-functions.h (1755B)


      1 /* See LICENSE file for copyright and license details. */
      2 
      3 #ifndef DONT_INCLUDE_FLOAT
      4 # define PROCESS process_lf
      5 # define TYPE double
      6 # define SCAN_TYPE "lf"
      7 # define PRINT_CAST double
      8 # include FILE
      9 # undef PROCESS
     10 # undef TYPE
     11 # undef SCAN_TYPE
     12 # undef PRINT_CAST
     13 #endif
     14 
     15 #ifndef DONT_INCLUDE_DOUBLE
     16 # define PROCESS process_f
     17 # define TYPE float
     18 # define SCAN_TYPE "f"
     19 # define PRINT_CAST double
     20 # include FILE
     21 # undef PROCESS
     22 # undef TYPE
     23 # undef SCAN_TYPE
     24 # undef PRINT_CAST
     25 #endif
     26 
     27 #ifdef INCLUDE_DOUBLE_LONG
     28 # define PROCESS process_llf
     29 # define TYPE long double
     30 # define SCAN_TYPE "Lf"
     31 # define PRINT_CAST long double
     32 # include FILE
     33 # undef PROCESS
     34 # undef TYPE
     35 # undef SCAN_TYPE
     36 # undef PRINT_CAST
     37 #endif
     38 
     39 #ifdef INCLUDE_UINT8
     40 # define PROCESS process_u8
     41 # define TYPE uint8_t
     42 # define SCAN_TYPE SCNu8
     43 # define PRINT_CAST unsigned
     44 # define INTEGER_TYPE
     45 # include FILE
     46 # undef PROCESS
     47 # undef TYPE
     48 # undef SCAN_TYPE
     49 # undef PRINT_CAST
     50 # undef INTEGER_TYPE
     51 #endif
     52 
     53 #ifdef INCLUDE_UINT16
     54 # define PROCESS process_u16
     55 # define TYPE uint16_t
     56 # define SCAN_TYPE SCNu16
     57 # define PRINT_CAST unsigned
     58 # define INTEGER_TYPE
     59 # include FILE
     60 # undef PROCESS
     61 # undef TYPE
     62 # undef SCAN_TYPE
     63 # undef PRINT_CAST
     64 # undef INTEGER_TYPE
     65 #endif
     66 
     67 #ifdef INCLUDE_UINT32
     68 # define PROCESS process_u32
     69 # define TYPE uint32_t
     70 # define SCAN_TYPE SCNu32
     71 # define PRINT_CAST uint32_t
     72 # define INTEGER_TYPE
     73 # include FILE
     74 # undef PROCESS
     75 # undef TYPE
     76 # undef SCAN_TYPE
     77 # undef PRINT_CAST
     78 # undef INTEGER_TYPE
     79 #endif
     80 
     81 #ifdef INCLUDE_UINT64
     82 # define PROCESS process_u64
     83 # define TYPE uint64_t
     84 # define SCAN_TYPE SCNu64
     85 # define PRINT_CAST uint64_t
     86 # define INTEGER_TYPE
     87 # include FILE
     88 # undef PROCESS
     89 # undef TYPE
     90 # undef SCAN_TYPE
     91 # undef PRINT_CAST
     92 # undef INTEGER_TYPE
     93 #endif