#pragma once struct app_id_dict { int ref_cnt; int app_id; long long int group_id; pthread_mutex_t lock; }; void app_id_dict_free(struct app_id_dict *app_dict); enum RESOURCE_TYPE { STATIC_MAAT, KAFKA_LOGGER, DEVICE_ID, EFFECTIVE_DEVICE_TAG, DYNAMIC_FIELDSTAT, }; enum scan_common_table { PXY_CTRL_SOURCE_IP, PXY_CTRL_DESTINATION_IP, PXY_CTRL_INTERNAL_IP, PXY_CTRL_EXTERNAL_IP, PXY_CTRL_SOURCE_PORT, PXY_CTRL_DESTINATION_PORT, PXY_CTRL_INTERNAL_PORT, PXY_CTRL_EXTERNAL_PORT, PXY_CTRL_IP_PROTOCOL, PXY_CTRL_SOURCE_ASN, PXY_CTRL_DESTINATION_ASN, PXY_CTRL_SOURCE_GEO_COUNTRY, PXY_CTRL_SOURCE_GEO_SUPER_ADMINISTRATIVE_AREA, PXY_CTRL_SOURCE_GEO_ADMINISTRATIVE_AREA, PXY_CTRL_SOURCE_GEO_SUB_ADMINISTRATIVE_AREA, PXY_CTRL_DESTINATION_GEO_COUNTRY, PXY_CTRL_DESTINATION_GEO_SUPER_ADMINISTRATIVE_AREA, PXY_CTRL_DESTINATION_GEO_ADMINISTRATIVE_AREA, PXY_CTRL_DESTINATION_GEO_SUB_ADMINISTRATIVE_AREA, PXY_CTRL_SUBSCRIBER_ID, PXY_CTRL_APP_ID_DICT, __SCAN_COMMON_TABLE_MAX }; int tfe_bussiness_resouce_init(); void *tfe_bussiness_resouce_get(enum RESOURCE_TYPE type); int tfe_bussiness_tableid_get(enum scan_common_table type);