1 #include "android_nfc.h" 2 3 4 5 6 7 8 namespace android::nfc { 9 10 class flag_provider : public flag_provider_interface { 11 public: 12 13 enable_card_emulation_euicc()14 virtual bool enable_card_emulation_euicc() override { 15 return false; 16 } enable_nfc_charging()17 virtual bool enable_nfc_charging() override { 18 return false; 19 } enable_nfc_mainline()20 virtual bool enable_nfc_mainline() override { 21 return true; 22 } enable_nfc_reader_option()23 virtual bool enable_nfc_reader_option() override { 24 return true; 25 } enable_nfc_set_discovery_tech()26 virtual bool enable_nfc_set_discovery_tech() override { 27 return true; 28 } enable_nfc_user_restriction()29 virtual bool enable_nfc_user_restriction() override { 30 return true; 31 } enable_tag_detection_broadcasts()32 virtual bool enable_tag_detection_broadcasts() override { 33 return false; 34 } nfc_action_manage_services_settings()35 virtual bool nfc_action_manage_services_settings() override { 36 return false; 37 } nfc_associated_role_services()38 virtual bool nfc_associated_role_services() override { 39 return false; 40 } nfc_check_tag_intent_preference()41 virtual bool nfc_check_tag_intent_preference() override { 42 return false; 43 } nfc_event_listener()44 virtual bool nfc_event_listener() override { 45 return false; 46 } nfc_observe_mode()47 virtual bool nfc_observe_mode() override { 48 return true; 49 } nfc_observe_mode_st_shim()50 virtual bool nfc_observe_mode_st_shim() override { 51 return true; 52 } nfc_oem_extension()53 virtual bool nfc_oem_extension() override { 54 return false; 55 } nfc_override_recover_routing_table()56 virtual bool nfc_override_recover_routing_table() override { 57 return false; 58 } nfc_persist_log()59 virtual bool nfc_persist_log() override { 60 return false; 61 } nfc_read_polling_loop()62 virtual bool nfc_read_polling_loop() override { 63 return true; 64 } nfc_read_polling_loop_st_shim()65 virtual bool nfc_read_polling_loop_st_shim() override { 66 return true; 67 } nfc_set_default_disc_tech()68 virtual bool nfc_set_default_disc_tech() override { 69 return false; 70 } nfc_set_service_enabled_for_category_other()71 virtual bool nfc_set_service_enabled_for_category_other() override { 72 return false; 73 } nfc_state_change()74 virtual bool nfc_state_change() override { 75 return false; 76 } nfc_state_change_security_log_event_enabled()77 virtual bool nfc_state_change_security_log_event_enabled() override { 78 return false; 79 } nfc_vendor_cmd()80 virtual bool nfc_vendor_cmd() override { 81 return true; 82 } nfc_watchdog()83 virtual bool nfc_watchdog() override { 84 return true; 85 } 86 87 88 89 }; 90 91 std::unique_ptr<flag_provider_interface> provider_ = 92 std::make_unique<flag_provider>(); 93 } 94 95 android_nfc_enable_card_emulation_euicc()96bool android_nfc_enable_card_emulation_euicc() { 97 return false; 98 } 99 android_nfc_enable_nfc_charging()100bool android_nfc_enable_nfc_charging() { 101 return false; 102 } 103 android_nfc_enable_nfc_mainline()104bool android_nfc_enable_nfc_mainline() { 105 return true; 106 } 107 android_nfc_enable_nfc_reader_option()108bool android_nfc_enable_nfc_reader_option() { 109 return true; 110 } 111 android_nfc_enable_nfc_set_discovery_tech()112bool android_nfc_enable_nfc_set_discovery_tech() { 113 return true; 114 } 115 android_nfc_enable_nfc_user_restriction()116bool android_nfc_enable_nfc_user_restriction() { 117 return true; 118 } 119 android_nfc_enable_tag_detection_broadcasts()120bool android_nfc_enable_tag_detection_broadcasts() { 121 return false; 122 } 123 android_nfc_nfc_action_manage_services_settings()124bool android_nfc_nfc_action_manage_services_settings() { 125 return false; 126 } 127 android_nfc_nfc_associated_role_services()128bool android_nfc_nfc_associated_role_services() { 129 return false; 130 } 131 android_nfc_nfc_check_tag_intent_preference()132bool android_nfc_nfc_check_tag_intent_preference() { 133 return false; 134 } 135 android_nfc_nfc_event_listener()136bool android_nfc_nfc_event_listener() { 137 return false; 138 } 139 android_nfc_nfc_observe_mode()140bool android_nfc_nfc_observe_mode() { 141 return true; 142 } 143 android_nfc_nfc_observe_mode_st_shim()144bool android_nfc_nfc_observe_mode_st_shim() { 145 return true; 146 } 147 android_nfc_nfc_oem_extension()148bool android_nfc_nfc_oem_extension() { 149 return false; 150 } 151 android_nfc_nfc_override_recover_routing_table()152bool android_nfc_nfc_override_recover_routing_table() { 153 return false; 154 } 155 android_nfc_nfc_persist_log()156bool android_nfc_nfc_persist_log() { 157 return false; 158 } 159 android_nfc_nfc_read_polling_loop()160bool android_nfc_nfc_read_polling_loop() { 161 return true; 162 } 163 android_nfc_nfc_read_polling_loop_st_shim()164bool android_nfc_nfc_read_polling_loop_st_shim() { 165 return true; 166 } 167 android_nfc_nfc_set_default_disc_tech()168bool android_nfc_nfc_set_default_disc_tech() { 169 return false; 170 } 171 android_nfc_nfc_set_service_enabled_for_category_other()172bool android_nfc_nfc_set_service_enabled_for_category_other() { 173 return false; 174 } 175 android_nfc_nfc_state_change()176bool android_nfc_nfc_state_change() { 177 return false; 178 } 179 android_nfc_nfc_state_change_security_log_event_enabled()180bool android_nfc_nfc_state_change_security_log_event_enabled() { 181 return false; 182 } 183 android_nfc_nfc_vendor_cmd()184bool android_nfc_nfc_vendor_cmd() { 185 return true; 186 } 187 android_nfc_nfc_watchdog()188bool android_nfc_nfc_watchdog() { 189 return true; 190 } 191 192