航迹引接


1、记录二进制航迹

    函数:

 SDI.py主程序__main__
a)decode_thread = threading.Thread(target=decode_with_queue, args=(data_queue,), ) #data_queue = Queue.Queue(1000)
    decode_with_queue(dqueue) #data_buf = dqueue.get()
    decode(data_buf)  #deocde cat62,ret = decode_dll.DataProcess(data_buf, len(data_buf)),最重要的函数,track解码并发送到MQ
        decode_dll.DataProcess.restype = listTrackData  #trackData的数组:[('iCountTrack', c_int),('tracks', trackData * 100),]
        #源自init_decode_dll()函数中:decode_dll = cdll.LoadLibrary(PII_config['decode_path_win'])
        lst_data = pack_data(data_buf) #head=62,返回列表lst                
        
b)    执行recv_track(input_mode)  #input_mode = PII_config['track_recv_type'],config.py中定义'track_recv_type': 0,
(1)recv_track()函数
    trackClient = init_socket(input_mode)   #init_socket()从网络读取数据,UDP广播port:31088
    data_buf, address = trackClient.recvfrom(BUFSIZE) #源address'168.192.11.52',源端口‘55902’;BUFSIZE = 8192
    # 记录二进制航迹
    write_byte(data_buf)
(2)write_byte(data_buf)        由recv_track()调用

    位置:按扇区记录

        9扇区:track_data_byte/2020-02-19/2020-02-19_09_ZBYN_AERA_CONTROL.dat

        10扇区:track_data_byte/2020-02-19/2020-02-19_10_ZBYN_AERA_CONTROL.dat




请使用浏览器的分享功能分享到微信等