code wiki / (root) / nx_face_feature_gate_t367r1.nx

nx_face_feature_gate_t367r1.nx source

↩ module page · 45 lines · 2478 B

1// nx_face_feature_gate_t367r1.nx -- corrected reusable feature-preservation referee. 2// Correction: fa_lip_ratio returns the measured ratio on success; only its documented 3// FA_LIP_UNMEASURED/refusal result is failure. No geometry or acceptance threshold changed. 4import "nx_syscalls.nx" 5import "nx_sdfrender.nx" 6import "nx_faceanat.nx" 7const FFG_EXIT_USAGE: i64 = 2 8const FFG_EXIT_REFUSE: i64 = 1 9const FFG_FACE_SIZE: i64 = 1 10const FFG_ARENA_PART_CAPACITY: i64 = 48 11const FFG_EYE_FIELDS: i64 = 9 12const FFG_LIP_FIELDS: i64 = 11 13const FFG_LEFT_EYE: i64 = 0 - 1 14const FFG_RIGHT_EYE: i64 = 1 15const FFG_EYE_OUT_BYTES: i64 = FFG_EYE_FIELDS * 8 16const FFG_LIP_OUT_BYTES: i64 = FFG_LIP_FIELDS * 8 17func main(argc: i64, argv: *i64) -> i64 { 18 if argc != FFG_FACE_SIZE { return FFG_EXIT_USAGE } 19 let arena: *u8 = sys_mmap(sdf_bytes()) 20 if (arena as i64) == 0 { return FFG_EXIT_REFUSE } 21 sdf_clear_ops(arena as i64, FFG_ARENA_PART_CAPACITY) 22 sdf_set_floor(arena as i64, 0) 23 if faceanat_build(arena as i64) != 0 { return FFG_EXIT_REFUSE } 24 let left: *i64 = sys_mmap(FFG_EYE_OUT_BYTES) as *i64 25 let right: *i64 = sys_mmap(FFG_EYE_OUT_BYTES) as *i64 26 if (left as i64) == 0 || (right as i64) == 0 { return FFG_EXIT_REFUSE } 27 if fa_palpebral_fissure(arena as i64, FFG_LEFT_EYE, left) != 0 { return FFG_EXIT_REFUSE } 28 if fa_palpebral_fissure(arena as i64, FFG_RIGHT_EYE, right) != 0 { return FFG_EXIT_REFUSE } 29 let lip: *i64 = sys_mmap(FFG_LIP_OUT_BYTES) as *i64 30 if (lip as i64) == 0 { return FFG_EXIT_REFUSE } 31 let lip_result: i64 = fa_lip_ratio(arena as i64, lip) 32 if lip_result == FA_LIP_UNMEASURED { return FFG_EXIT_REFUSE } 33 if lip[FA_LIP_O_REASON] != FA_LIP_R_OK { return FFG_EXIT_REFUSE } 34 let genes: *i64 = sys_mmap(6 * 8) as *i64 35 if (genes as i64) == 0 { return FFG_EXIT_REFUSE } 36 genes[0] = 50; genes[1] = 100; genes[2] = 100; genes[3] = 581; genes[4] = 0; genes[5] = 0 37 if faceanat_eye_genes(arena as i64, genes) != 0 { return FFG_EXIT_REFUSE } 38 if faceanat_build(arena as i64) != 0 { return FFG_EXIT_REFUSE } 39 if fa_palpebral_fissure(arena as i64, FFG_LEFT_EYE, left) != 0 { return FFG_EXIT_REFUSE } 40 if fa_palpebral_fissure(arena as i64, FFG_RIGHT_EYE, right) != 0 { return FFG_EXIT_REFUSE } 41 let lip_after_genes: i64 = fa_lip_ratio(arena as i64, lip) 42 if lip_after_genes == FA_LIP_UNMEASURED { return FFG_EXIT_REFUSE } 43 if lip[FA_LIP_O_REASON] != FA_LIP_R_OK { return FFG_EXIT_REFUSE } 44 return 0 45}