1 #define STRETCH_HVX_N_H "stretch_hvx_16.h" 2 #define uN u16 3 4 /**********************************************************************************************************************/ 5 /* Upscaling */ 6 7 #define POINT_0 0 8 #define LINE_0 0 9 #define MINUS_1 1 10 #define POINT_TO_RATIO(p,ps) ( ((p) & 0x3ffff) >> (18-SHIFT_L6) ) 11 #define LINE_TO_RATIO(l,ls) ( ((l) & 0x3ffff) >> (18-SHIFT_L5) ) 12 13 #define POINT_L(p,ps) ( (((p)) >> 18) ) 14 #define POINT_R(p,ps) ( (((p)) >> 18) + 1 ) 15 16 #define LINE_T(l,ls) ( (((l)) >> 18) ) 17 #define LINE_B(l,ls) ( (((l)) >> 18) + 1 ) 18 19 #define UPDOWN 1 20 #include "stretch_hvx_N.h" 21 #undef UPDOWN 22 23 #undef POINT_0 24 #undef LINE_0 25 #undef MINUS_1 26 #undef POINT_TO_RATIO 27 #undef LINE_TO_RATIO 28 #undef POINT_L 29 #undef POINT_R 30 #undef LINE_T 31 #undef LINE_B 32 33 /**********************************************************************************************************************/ 34 /* Downscaling */ 35 36 #define POINT_0 hfraq 37 #define LINE_0 vfraq 38 #define MINUS_1 0 39 #define POINT_TO_RATIO(p,ps) ( (((((p)) & 0x3ffff) ? : 0x40000) << SHIFT_L6) / (ps) ) 40 #define LINE_TO_RATIO(l,ls) ( (((((l)) & 0x3ffff) ? : 0x40000) << SHIFT_L5) / (ls) ) 41 42 #define POINT_L(p,ps) ( (((p)-1) >> 18) - 1 ) 43 #define POINT_R(p,ps) ( (((p)-1) >> 18) ) 44 45 #define LINE_T(l,ls) ( (((l)-1) >> 18) - 1 ) 46 #define LINE_B(l,ls) ( (((l)-1) >> 18) ) 47 48 #define UPDOWN 0 49 #include "stretch_hvx_N.h" 50 #undef UPDOWN 51 52 #undef POINT_0 53 #undef LINE_0 54 #undef MINUS_1 55 #undef POINT_TO_RATIO 56 #undef LINE_TO_RATIO 57 #undef POINT_L 58 #undef POINT_R 59 #undef LINE_T 60 #undef LINE_B 61 62 /**********************************************************************************************************************/ 63 64 #undef STRETCH_HVX_N_H 65 #undef uN 66 67 #include "stretch_up_down_table.h" 68 69