import ctypes
from .enums import FriendFoeSelection
import Grifo_E_1553lib.data_types.enum_map as em

em.ENUM_MAP.update({
    "hpt_friendfoe_selector" : FriendFoeSelection,
    "spt_friendfoe_selector" : FriendFoeSelection
})

class TrackedTargetInfo(ctypes.LittleEndianStructure):
    _pack_ = 1
    _fields_ = [
        
        ("spare", ctypes.c_uint16, 2),
        ("ts_tracked_tgt_8_within_int_zone_selector", ctypes.c_uint16, 1),
        ("ts_tracked_tgt_7_within_int_zone_selector", ctypes.c_uint16, 1),
        ("ts_tracked_tgt_6_within_int_zone_selector", ctypes.c_uint16, 1),
        ("ts_tracked_tgt_5_within_int_zone_selector", ctypes.c_uint16, 1),
        ("ts_tracked_tgt_4_within_int_zone_selector", ctypes.c_uint16, 1),
        ("ts_tracked_tgt_3_within_int_zone_selector", ctypes.c_uint16, 1),
        ("ts_tracked_tgt_2_within_int_zone_selector", ctypes.c_uint16, 1),
        ("ts_tracked_tgt_1_within_int_zone_selector", ctypes.c_uint16, 1),
        ("spt_friendfoe_selector", ctypes.c_uint16, 1),
        ("spt_data_link_correlation_selector", ctypes.c_uint16, 1),
        ("spt_within_intercept_zone_selector", ctypes.c_uint16, 1),
        ("hpt_friendfoe_selector", ctypes.c_uint16, 1),
        ("hpt_data_link_correlation_selector", ctypes.c_uint16, 1),
        ("hpt_within_intercept_zone_selector", ctypes.c_uint16, 1)

        
    ]