map conversion in python directly from svg to c array bin file, with bash script. File cleanup (BFG to follow)

Former-commit-id: cd38a9b42c4973e454f8d7b7208539c7bcc6495e
Former-commit-id: 87b04ceb9008fabd80258f5c979b9d238411e748
This commit is contained in:
nathan 2020-03-01 21:17:12 -08:00
parent 414d8aed65
commit fdd12fece3
85 changed files with 31 additions and 1438 deletions

View file

@ -1,39 +0,0 @@
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := main.out
SDL_PATH := ~/Downloads/SDL
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/$(SDL_PATH)/include \
$(LOCAL_PATH)/$(SDL_PATH)
#LOCALCFLAGS=
LOCAL_SRC_FILES := \
$(SDL_PATH)/src/main/android/SDL_android_main.cpp \
allstates.c \
input.c \
mapdata.c \
monokai.c \
planeObj.c \
anet.c \
font.c \
interactive.c \
mode_ac.c \
net_io.c \
status.c \
draw.c \
init.c \
list.c \
mode_s.c \
parula.c \
view1090.c
LOCAL_SHARED_LIBRARIES := SDL2 SDL2_gfx SDL2_ttf
LOCAL_LDLIBS := -lGLESv1_CM #-lstdc++
include $(BUILD_EXECUTABLE)

View file

@ -1,3 +0,0 @@
APP_ABI := arm64-v8a
APP_PLATFORM := android-29
APP_BUILD_SCRIPT := Android.mk

File diff suppressed because one or more lines are too long

BIN
anet.o

Binary file not shown.

View file

@ -1 +0,0 @@
7a72d06a00457897159cc7ebf3afff0f1806f3ab

BIN
font.o

Binary file not shown.

View file

@ -1 +0,0 @@
a007071944f7c90020e798eea53b10065e2b45a5

View file

@ -1 +0,0 @@
5e04b16605e6f165afada700fa09ec2c744bd4ca

View file

@ -1 +0,0 @@
cf67fe0caf3e7853db2af48cdcd28a4522a15572

View file

@ -1 +0,0 @@
e8e4a6045fa8374ca37fd7f53dfa95c61142ae98

View file

@ -1 +0,0 @@
730c63d4b5435fc57d6551f5a71d64b7e7d60fbb

View file

@ -1 +0,0 @@
97a5b8f6ed4324088d095d616a147d05cfe8917a

View file

@ -1 +0,0 @@
a09e9faff2c39c9dc56f6a0101a300851922e78d

View file

@ -1 +0,0 @@
ec881731ace782f1f692c4d9afabe1710ef6ac25

View file

@ -1 +0,0 @@
091001c845fa041bb58677bdb97edc546a43b72d

View file

@ -1 +0,0 @@
248a001641f39a4ad8b75387b889698120fd4983

View file

@ -1 +0,0 @@
130bb4a9cecd7210769427502b3ee33cdb097341

View file

@ -1 +0,0 @@
2a1ec89b5722143dfbdee504bbddab3a48b7bdd6

View file

@ -1 +0,0 @@
672aac709f31f3596fe66420cbc409122c8cb706

View file

@ -1 +0,0 @@
f20e8486e0becccceddade23c1f89d5336aebc49

View file

@ -1 +0,0 @@
11cbae78cf937af2f5c0236b8f86cad443162a2f

View file

@ -1 +0,0 @@
e8aa21e61df3e92fb290abc35215afdfe9a6db0a

View file

@ -1 +0,0 @@
bca6a642079482aab1d8d68488c6302c9e0e284d

View file

@ -1 +0,0 @@
5aeb931af933ee4dd2557a465ecadf908dc53978

View file

@ -1 +0,0 @@
22983e3d94e5c6e9c3f85f2bb6aff805b31657d0

View file

@ -1 +0,0 @@
66c93d8a95903ec73a80ea4f49811d23525ed967

View file

@ -1 +0,0 @@
d07ca5d41b3a257274f42c5fe0b402a672ea612a

View file

@ -1 +0,0 @@
db3b7b20ab68a2010a29158ad5a86a1fff1f86e5

View file

@ -1 +0,0 @@
6963c72346edf4b03a76271242ca933ac9afb750

View file

@ -1 +0,0 @@
0368d2bbae0b02dfeeb66950db2f79109714756e

View file

@ -1 +0,0 @@
f159709859ade068ba25e93720a5c8abc2fd20ce

View file

@ -1 +0,0 @@
53c606887962f52031d77dd4fe9c1ce85ce0783e

View file

@ -1 +0,0 @@
e52ba0d0e32c0a8a9de183dc11352f59c754c764

View file

@ -1 +0,0 @@
f279c6703790767cc5efae5941913527c039cb0b

View file

@ -1 +0,0 @@
653a1008f0ee073bafcd84e21bddd930e03579b1

View file

@ -1 +0,0 @@
d206e1de86a19ab735257abba83e25bd1d296ebb

View file

@ -1 +0,0 @@
9fe3e4aecd84c498563c3af03fe7050924915f60

View file

@ -1 +0,0 @@
b173da27417c00101dff72617f9b9a2b80ecc8f3

View file

@ -1 +0,0 @@
72a5a99ac0c781eb60dd8721ae93eedda298e07e

View file

@ -1 +0,0 @@
602a3ee4ab20743037eee6daa1b304fa680967b6

View file

@ -1 +0,0 @@
ed0f5bce879796461ebb93969d28a2bbb35efd0f

View file

@ -1 +0,0 @@
c6cec55fcd5d8e00347661eba8684f848065594e

View file

@ -1 +0,0 @@
ca9c03a4767153b6d2f64c1d8909525ba39bb8d7

View file

@ -1 +0,0 @@
e8d186c510a26f1b4319bbb797c3ee18cb104e26

View file

@ -1 +0,0 @@
d748728a20789bf5f95e524f3d508f54c67f9475

View file

@ -1 +0,0 @@
4f2d2bc7cb6ae34d90066e1b330dc18ae2386e38

View file

@ -1 +0,0 @@
7bd6665765768ae885e2868623e7e9c2fd0cfc8a

View file

@ -1 +0,0 @@
6c5b8ba023e41689a2e14dc3c88f978e3188a1de

View file

@ -1 +0,0 @@
fdd309d716629f4e5339d5e5508225ed857a3ede

View file

@ -1 +0,0 @@
18f81a29258d13e1d6f1ce98cdd167091ea9bd4a

View file

@ -1 +0,0 @@
8ee248f748192c6ab6b2f5a1c18979d5bb16e646

BIN
gmon.out

Binary file not shown.

BIN
init.o

Binary file not shown.

View file

@ -1 +0,0 @@
7108d34870f6546900fb6d69ee9e1789e1e0a175

Binary file not shown.

BIN
list.o

Binary file not shown.

View file

@ -1 +0,0 @@
f94cfbe36f64a1d81f38c7a21ed5ea789092d0b2

View file

@ -1,21 +0,0 @@
Very hacky map pipeline:
using latlon maps from sourced from http://www.mccurley.org/svg/
get all.svg
run mapconverted.py
**at this point you have to manually format into a c array and get the length.**
now compile write2bin
gcc write2bin.c allstates.c -o write2bin
and run write2bin
this will produce mapdata.bin that the main program reads in
** this should be one python that generates the binary file **
** then it should be grabbed from mapbox or something **

View file

@ -1 +0,0 @@
4a9fe852dcd3e65638b4f5a4f943c0e85c5e2ddb

View file

@ -1 +0,0 @@
15dc88c67daedfe75f3e5ac04fe1cb6b96908c09

View file

@ -1 +0,0 @@
a617d7924210634db9b7a5c7323d803d371319df

View file

@ -1 +0,0 @@
d970486a784f62d0e7072845fb9ba545adb51332

5
map_conversion/getmap.sh Normal file
View file

@ -0,0 +1,5 @@
#!/bin/bash
wget -O all.svg.gz https://www.mccurley.org/svg/data/allzips.svgz
gunzip all.svg.gz
python mapconverter.py all.svg

View file

@ -1,14 +1,24 @@
from lxml import etree as ElementTree
import numpy as np
import sys
filename = sys.argv[1]
if(len(filename) == 0):
print "No input filename given"
exit()
parser = ElementTree.XMLParser(recover=True)
tree = ElementTree.parse('all.svg', parser)
tree = ElementTree.parse(filename, parser)
polys = tree.xpath('//polygon')
text_file = open("test.txt", "wt")
bin_file = open("mapdata.bin", "wt")
outlist = []
for p in polys:
currentPoints = p.attrib['points']
currentPoints = currentPoints.replace(" ", ",")
text_file.write(currentPoints + ",0,0")
outlist.extend((currentPoints.replace(","," ") + " 0 0").split())
text_file.close()
np.asarray(outlist).astype(np.single).tofile(bin_file)
bin_file.close()

View file

@ -1,12 +0,0 @@
//
#include<stdio.h>
extern float mapPoints[3878131];
int main(int argc, char **argv) {
FILE *file = fopen("mapdata.bin", "wb");
fwrite(mapPoints, sizeof(mapPoints), 1, file);
fclose(file);
return(0);
}

View file

@ -1 +0,0 @@
d970486a784f62d0e7072845fb9ba545adb51332

View file

@ -103,16 +103,18 @@ void initMaps() {
FILE *fileptr;
fileptr = fopen("mapdata.bin", "rb"); // Open the file in binary mode
fseek(fileptr, 0, SEEK_END); // Jump to the end of the file
mapPoints_count = ftell(fileptr) / sizeof(float); // Get the current byte offset in the file
rewind(fileptr); // Jump back to the beginning of the file
fileptr = fopen("mapdata.bin", "rb"); // Open the file in binary mode
fseek(fileptr, 0, SEEK_END); // Jump to the end of the file
mapPoints_count = ftell(fileptr) / sizeof(float); // Get the current byte offset in the file
mapPoints = (float *)malloc(mapPoints_count * sizeof(float)); // Enough memory for the file
fread(mapPoints, sizeof(float), mapPoints_count, fileptr); // Read in the entire file
fclose(fileptr); // Close the fileptr
rewind(fileptr); // Jump back to the beginning of the file
mapPoints = (float *)malloc(mapPoints_count * sizeof(float)); // Enough memory for the file
fread(mapPoints, sizeof(float), mapPoints_count, fileptr); // Read in the entire file
fclose(fileptr); // Close the fileptr
printf("Read %d map points.\n",mapPoints_count);
printf("%d points read\n",mapPoints_count);
//mapPoints_relative = (float *) malloc(sizeof(mapPoints));

BIN
mapdata.o

Binary file not shown.

BIN
mode_ac.o

Binary file not shown.

View file

@ -1 +0,0 @@
7d25253c93eb99094372df3b61630599ce0cb4ff

BIN
monokai.o

Binary file not shown.

View file

@ -1 +0,0 @@
22b5fc5c241eb98e511019d0ffa249f80ba7a933

BIN
parula.o

Binary file not shown.

Binary file not shown.

View file

@ -1,517 +0,0 @@
Flat profile:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls us/call us/call name
66.67 0.02 0.02 600 33.34 33.34 resolveLabelConflicts
33.34 0.03 0.01 2147 4.66 4.66 drawTrail
0.00 0.03 0.00 9666 0.00 0.00 screenDist
0.00 0.03 0.00 4935 0.00 0.00 mstime
0.00 0.03 0.00 4608 0.00 0.00 pxFromLonLat
0.00 0.03 0.00 4608 0.00 0.00 screenCoords
0.00 0.03 0.00 2831 0.00 0.00 outOfBounds
0.00 0.03 0.00 2147 0.00 0.00 findPlaneObj
0.00 0.03 0.00 1770 0.00 0.00 drawStringBG
0.00 0.03 0.00 1650 0.00 0.00 drawString
0.00 0.03 0.00 1598 0.00 0.00 CROSSVP
0.00 0.03 0.00 985 0.00 0.00 drawPlaneText
0.00 0.03 0.00 656 0.00 0.00 drawSignalMarks
0.00 0.03 0.00 656 0.00 0.00 setColor
0.00 0.03 0.00 656 0.00 0.00 signalToColor
0.00 0.03 0.00 600 0.00 0.00 drawStatusBox
0.00 0.03 0.00 528 0.00 0.00 drawPlaneHeading
0.00 0.03 0.00 493 0.00 0.00 modesChecksum
0.00 0.03 0.00 457 0.00 0.00 drawPlaneOffMap
0.00 0.03 0.00 387 0.00 0.00 ICAOCacheHashAddress
0.00 0.03 0.00 386 0.00 0.00 decodeBinMessage
0.00 0.03 0.00 386 0.00 0.00 decodeModesMessage
0.00 0.03 0.00 386 0.00 0.00 modesMessageLenByType
0.00 0.03 0.00 386 0.00 0.00 useModesMessage
0.00 0.03 0.00 373 0.00 0.00 interactiveFindAircraft
0.00 0.03 0.00 373 0.00 0.00 interactiveReceiveData
0.00 0.03 0.00 330 0.00 0.00 cprNLFunction
0.00 0.03 0.00 324 0.00 0.00 getInput
0.00 0.03 0.00 323 0.00 92.88 draw
0.00 0.03 0.00 323 0.00 0.00 interactiveRemoveStaleAircrafts
0.00 0.03 0.00 323 0.00 0.00 modesReadFromClient
0.00 0.03 0.00 206 0.00 0.00 addRecentlySeenICAOAddr
0.00 0.03 0.00 181 0.00 0.00 ICAOAddressWasRecentlySeen
0.00 0.03 0.00 172 0.00 0.00 sign
0.00 0.03 0.00 167 0.00 0.00 decodeAC13Field
0.00 0.03 0.00 165 0.00 0.00 cprModFunction
0.00 0.03 0.00 150 0.00 0.00 drawGrid
0.00 0.03 0.00 150 0.00 200.01 drawMap
0.00 0.03 0.00 150 0.00 0.00 drawStatus
0.00 0.03 0.00 150 0.00 0.00 updatePlanes
0.00 0.03 0.00 150 0.00 0.00 updateStatus
0.00 0.03 0.00 110 0.00 0.00 cprNFunction
0.00 0.03 0.00 108 0.00 0.00 mstime
0.00 0.03 0.00 72 0.00 0.00 decodeAC12Field
0.00 0.03 0.00 72 0.00 0.00 mstime
0.00 0.03 0.00 55 0.00 0.00 cprDlonFunction
0.00 0.03 0.00 55 0.00 0.00 decodeCPR
0.00 0.03 0.00 22 0.00 0.00 decodeID13Field
0.00 0.03 0.00 19 0.00 0.00 ModeAToModeC
0.00 0.03 0.00 17 0.00 0.00 createPlaneObj
0.00 0.03 0.00 17 0.00 0.00 decodeCPRrelative
0.00 0.03 0.00 17 0.00 0.00 interactiveCreateAircraft
0.00 0.03 0.00 6 0.00 0.00 interactiveRemoveStaleDF
0.00 0.03 0.00 5 0.00 0.00 closeFont
0.00 0.03 0.00 5 0.00 0.00 loadFont
0.00 0.03 0.00 1 0.00 0.00 anetCreateSocket
0.00 0.03 0.00 1 0.00 0.00 anetNonBlock
0.00 0.03 0.00 1 0.00 0.00 anetTcpConnect
0.00 0.03 0.00 1 0.00 0.00 anetTcpGenericConnect
0.00 0.03 0.00 1 0.00 0.00 init
0.00 0.03 0.00 1 0.00 0.00 initMaps
0.00 0.03 0.00 1 0.00 0.00 modesInitErrorInfo
0.00 0.03 0.00 1 0.00 0.00 setupConnection
0.00 0.03 0.00 1 0.00 0.00 view1090Init
0.00 0.03 0.00 1 0.00 0.00 view1090InitConfig
% the percentage of the total running time of the
time program used by this function.
cumulative a running sum of the number of seconds accounted
seconds for by this function and those listed above it.
self the number of seconds accounted for by this
seconds function alone. This is the major sort for this
listing.
calls the number of times this function was invoked, if
this function is profiled, else blank.
self the average number of milliseconds spent in this
ms/call function per call, if this function is profiled,
else blank.
total the average number of milliseconds spent in this
ms/call function and its descendents per call, if this
function is profiled, else blank.
name the name of the function. This is the minor sort
for this listing. The index shows the location of
the function in the gprof listing. If the index is
in parenthesis it shows where it would appear in
the gprof listing if it were to be printed.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
Call graph (explanation follows)
granularity: each sample hit covers 2 byte(s) for 33.33% of 0.03 seconds
index % time self children called name
0.00 0.03 323/323 main [3]
[1] 100.0 0.00 0.03 323 draw [1]
0.00 0.03 150/150 drawMap [2]
0.00 0.00 473/4935 mstime [7]
0.00 0.00 150/150 updatePlanes [41]
0.00 0.00 150/150 updateStatus [42]
0.00 0.00 150/150 drawStatus [40]
-----------------------------------------------
0.00 0.03 150/150 draw [1]
[2] 100.0 0.00 0.03 150 drawMap [2]
0.02 0.00 600/600 resolveLabelConflicts [4]
0.01 0.00 2147/2147 drawTrail [5]
0.00 0.00 3150/4935 mstime [7]
0.00 0.00 2152/4608 pxFromLonLat [8]
0.00 0.00 2152/4608 screenCoords [9]
0.00 0.00 985/2831 outOfBounds [10]
0.00 0.00 985/985 drawPlaneText [15]
0.00 0.00 528/528 drawPlaneHeading [20]
0.00 0.00 457/457 drawPlaneOffMap [22]
0.00 0.00 150/150 drawGrid [39]
-----------------------------------------------
<spontaneous>
[3] 100.0 0.00 0.03 main [3]
0.00 0.03 323/323 draw [1]
0.00 0.00 324/324 getInput [31]
0.00 0.00 323/323 interactiveRemoveStaleAircrafts [32]
0.00 0.00 323/323 modesReadFromClient [33]
0.00 0.00 1/1 view1090InitConfig [66]
0.00 0.00 1/1 view1090Init [65]
0.00 0.00 1/1 setupConnection [64]
0.00 0.00 1/1 init [61]
-----------------------------------------------
0.02 0.00 600/600 drawMap [2]
[4] 66.7 0.02 0.00 600 resolveLabelConflicts [4]
0.00 0.00 172/172 sign [36]
-----------------------------------------------
0.01 0.00 2147/2147 drawMap [2]
[5] 33.3 0.01 0.00 2147 drawTrail [5]
0.00 0.00 2456/4608 pxFromLonLat [8]
0.00 0.00 2456/4608 screenCoords [9]
0.00 0.00 1846/2831 outOfBounds [10]
0.00 0.00 613/1598 CROSSVP [14]
-----------------------------------------------
0.00 0.00 450/9666 drawGrid [39]
0.00 0.00 9216/9666 screenCoords [9]
[6] 0.0 0.00 0.00 9666 screenDist [6]
-----------------------------------------------
0.00 0.00 473/4935 draw [1]
0.00 0.00 1312/4935 drawSignalMarks [16]
0.00 0.00 3150/4935 drawMap [2]
[7] 0.0 0.00 0.00 4935 mstime [7]
-----------------------------------------------
0.00 0.00 2152/4608 drawMap [2]
0.00 0.00 2456/4608 drawTrail [5]
[8] 0.0 0.00 0.00 4608 pxFromLonLat [8]
-----------------------------------------------
0.00 0.00 2152/4608 drawMap [2]
0.00 0.00 2456/4608 drawTrail [5]
[9] 0.0 0.00 0.00 4608 screenCoords [9]
0.00 0.00 9216/9666 screenDist [6]
-----------------------------------------------
0.00 0.00 985/2831 drawMap [2]
0.00 0.00 1846/2831 drawTrail [5]
[10] 0.0 0.00 0.00 2831 outOfBounds [10]
-----------------------------------------------
0.00 0.00 2147/2147 updatePlanes [41]
[11] 0.0 0.00 0.00 2147 findPlaneObj [11]
-----------------------------------------------
0.00 0.00 1770/1770 drawPlaneText [15]
[12] 0.0 0.00 0.00 1770 drawStringBG [12]
-----------------------------------------------
0.00 0.00 450/1650 drawGrid [39]
0.00 0.00 1200/1650 drawStatusBox [19]
[13] 0.0 0.00 0.00 1650 drawString [13]
-----------------------------------------------
0.00 0.00 457/1598 drawPlaneOffMap [22]
0.00 0.00 528/1598 drawPlaneHeading [20]
0.00 0.00 613/1598 drawTrail [5]
[14] 0.0 0.00 0.00 1598 CROSSVP [14]
-----------------------------------------------
0.00 0.00 985/985 drawMap [2]
[15] 0.0 0.00 0.00 985 drawPlaneText [15]
0.00 0.00 1770/1770 drawStringBG [12]
0.00 0.00 656/656 drawSignalMarks [16]
-----------------------------------------------
0.00 0.00 656/656 drawPlaneText [15]
[16] 0.0 0.00 0.00 656 drawSignalMarks [16]
0.00 0.00 1312/4935 mstime [7]
0.00 0.00 656/656 signalToColor [18]
-----------------------------------------------
0.00 0.00 656/656 signalToColor [18]
[17] 0.0 0.00 0.00 656 setColor [17]
-----------------------------------------------
0.00 0.00 656/656 drawSignalMarks [16]
[18] 0.0 0.00 0.00 656 signalToColor [18]
0.00 0.00 656/656 setColor [17]
-----------------------------------------------
0.00 0.00 600/600 drawStatus [40]
[19] 0.0 0.00 0.00 600 drawStatusBox [19]
0.00 0.00 1200/1650 drawString [13]
-----------------------------------------------
0.00 0.00 528/528 drawMap [2]
[20] 0.0 0.00 0.00 528 drawPlaneHeading [20]
0.00 0.00 528/1598 CROSSVP [14]
-----------------------------------------------
0.00 0.00 107/493 modesInitErrorInfo [63]
0.00 0.00 386/493 decodeModesMessage [25]
[21] 0.0 0.00 0.00 493 modesChecksum [21]
-----------------------------------------------
0.00 0.00 457/457 drawMap [2]
[22] 0.0 0.00 0.00 457 drawPlaneOffMap [22]
0.00 0.00 457/1598 CROSSVP [14]
-----------------------------------------------
0.00 0.00 181/387 ICAOAddressWasRecentlySeen [35]
0.00 0.00 206/387 addRecentlySeenICAOAddr [34]
[23] 0.0 0.00 0.00 387 ICAOCacheHashAddress [23]
-----------------------------------------------
0.00 0.00 386/386 modesReadFromClient [33]
[24] 0.0 0.00 0.00 386 decodeBinMessage [24]
0.00 0.00 386/386 decodeModesMessage [25]
0.00 0.00 386/386 useModesMessage [27]
-----------------------------------------------
0.00 0.00 386/386 decodeBinMessage [24]
[25] 0.0 0.00 0.00 386 decodeModesMessage [25]
0.00 0.00 386/386 modesMessageLenByType [26]
0.00 0.00 386/493 modesChecksum [21]
0.00 0.00 206/206 addRecentlySeenICAOAddr [34]
0.00 0.00 181/181 ICAOAddressWasRecentlySeen [35]
0.00 0.00 167/167 decodeAC13Field [37]
0.00 0.00 72/72 decodeAC12Field [45]
0.00 0.00 3/22 decodeID13Field [49]
-----------------------------------------------
0.00 0.00 386/386 decodeModesMessage [25]
[26] 0.0 0.00 0.00 386 modesMessageLenByType [26]
-----------------------------------------------
0.00 0.00 386/386 decodeBinMessage [24]
[27] 0.0 0.00 0.00 386 useModesMessage [27]
0.00 0.00 373/373 interactiveReceiveData [29]
-----------------------------------------------
0.00 0.00 373/373 interactiveReceiveData [29]
[28] 0.0 0.00 0.00 373 interactiveFindAircraft [28]
-----------------------------------------------
0.00 0.00 373/373 useModesMessage [27]
[29] 0.0 0.00 0.00 373 interactiveReceiveData [29]
0.00 0.00 373/373 interactiveFindAircraft [28]
0.00 0.00 72/72 mstime [46]
0.00 0.00 55/55 decodeCPR [48]
0.00 0.00 17/17 interactiveCreateAircraft [53]
0.00 0.00 17/17 decodeCPRrelative [52]
-----------------------------------------------
0.00 0.00 110/330 cprNFunction [43]
0.00 0.00 220/330 decodeCPR [48]
[30] 0.0 0.00 0.00 330 cprNLFunction [30]
-----------------------------------------------
0.00 0.00 324/324 main [3]
[31] 0.0 0.00 0.00 324 getInput [31]
-----------------------------------------------
0.00 0.00 323/323 main [3]
[32] 0.0 0.00 0.00 323 interactiveRemoveStaleAircrafts [32]
0.00 0.00 6/6 interactiveRemoveStaleDF [54]
-----------------------------------------------
0.00 0.00 323/323 main [3]
[33] 0.0 0.00 0.00 323 modesReadFromClient [33]
0.00 0.00 386/386 decodeBinMessage [24]
-----------------------------------------------
0.00 0.00 206/206 decodeModesMessage [25]
[34] 0.0 0.00 0.00 206 addRecentlySeenICAOAddr [34]
0.00 0.00 206/387 ICAOCacheHashAddress [23]
-----------------------------------------------
0.00 0.00 181/181 decodeModesMessage [25]
[35] 0.0 0.00 0.00 181 ICAOAddressWasRecentlySeen [35]
0.00 0.00 181/387 ICAOCacheHashAddress [23]
-----------------------------------------------
0.00 0.00 172/172 resolveLabelConflicts [4]
[36] 0.0 0.00 0.00 172 sign [36]
-----------------------------------------------
0.00 0.00 167/167 decodeModesMessage [25]
[37] 0.0 0.00 0.00 167 decodeAC13Field [37]
0.00 0.00 10/22 decodeID13Field [49]
0.00 0.00 10/19 ModeAToModeC [50]
-----------------------------------------------
0.00 0.00 165/165 decodeCPR [48]
[38] 0.0 0.00 0.00 165 cprModFunction [38]
-----------------------------------------------
0.00 0.00 150/150 drawMap [2]
[39] 0.0 0.00 0.00 150 drawGrid [39]
0.00 0.00 450/9666 screenDist [6]
0.00 0.00 450/1650 drawString [13]
-----------------------------------------------
0.00 0.00 150/150 draw [1]
[40] 0.0 0.00 0.00 150 drawStatus [40]
0.00 0.00 600/600 drawStatusBox [19]
-----------------------------------------------
0.00 0.00 150/150 draw [1]
[41] 0.0 0.00 0.00 150 updatePlanes [41]
0.00 0.00 2147/2147 findPlaneObj [11]
0.00 0.00 108/108 mstime [44]
0.00 0.00 17/17 createPlaneObj [51]
-----------------------------------------------
0.00 0.00 150/150 draw [1]
[42] 0.0 0.00 0.00 150 updateStatus [42]
-----------------------------------------------
0.00 0.00 55/110 cprDlonFunction [47]
0.00 0.00 55/110 decodeCPR [48]
[43] 0.0 0.00 0.00 110 cprNFunction [43]
0.00 0.00 110/330 cprNLFunction [30]
-----------------------------------------------
0.00 0.00 108/108 updatePlanes [41]
[44] 0.0 0.00 0.00 108 mstime [44]
-----------------------------------------------
0.00 0.00 72/72 decodeModesMessage [25]
[45] 0.0 0.00 0.00 72 decodeAC12Field [45]
0.00 0.00 9/22 decodeID13Field [49]
0.00 0.00 9/19 ModeAToModeC [50]
-----------------------------------------------
0.00 0.00 72/72 interactiveReceiveData [29]
[46] 0.0 0.00 0.00 72 mstime [46]
-----------------------------------------------
0.00 0.00 55/55 decodeCPR [48]
[47] 0.0 0.00 0.00 55 cprDlonFunction [47]
0.00 0.00 55/110 cprNFunction [43]
-----------------------------------------------
0.00 0.00 55/55 interactiveReceiveData [29]
[48] 0.0 0.00 0.00 55 decodeCPR [48]
0.00 0.00 220/330 cprNLFunction [30]
0.00 0.00 165/165 cprModFunction [38]
0.00 0.00 55/110 cprNFunction [43]
0.00 0.00 55/55 cprDlonFunction [47]
-----------------------------------------------
0.00 0.00 3/22 decodeModesMessage [25]
0.00 0.00 9/22 decodeAC12Field [45]
0.00 0.00 10/22 decodeAC13Field [37]
[49] 0.0 0.00 0.00 22 decodeID13Field [49]
-----------------------------------------------
0.00 0.00 9/19 decodeAC12Field [45]
0.00 0.00 10/19 decodeAC13Field [37]
[50] 0.0 0.00 0.00 19 ModeAToModeC [50]
-----------------------------------------------
0.00 0.00 17/17 updatePlanes [41]
[51] 0.0 0.00 0.00 17 createPlaneObj [51]
-----------------------------------------------
0.00 0.00 17/17 interactiveReceiveData [29]
[52] 0.0 0.00 0.00 17 decodeCPRrelative [52]
-----------------------------------------------
0.00 0.00 17/17 interactiveReceiveData [29]
[53] 0.0 0.00 0.00 17 interactiveCreateAircraft [53]
-----------------------------------------------
0.00 0.00 6/6 interactiveRemoveStaleAircrafts [32]
[54] 0.0 0.00 0.00 6 interactiveRemoveStaleDF [54]
-----------------------------------------------
0.00 0.00 5/5 cleanup [85]
[55] 0.0 0.00 0.00 5 closeFont [55]
-----------------------------------------------
0.00 0.00 5/5 init [61]
[56] 0.0 0.00 0.00 5 loadFont [56]
-----------------------------------------------
0.00 0.00 1/1 anetTcpGenericConnect [60]
[57] 0.0 0.00 0.00 1 anetCreateSocket [57]
-----------------------------------------------
0.00 0.00 1/1 setupConnection [64]
[58] 0.0 0.00 0.00 1 anetNonBlock [58]
-----------------------------------------------
0.00 0.00 1/1 setupConnection [64]
[59] 0.0 0.00 0.00 1 anetTcpConnect [59]
0.00 0.00 1/1 anetTcpGenericConnect [60]
-----------------------------------------------
0.00 0.00 1/1 anetTcpConnect [59]
[60] 0.0 0.00 0.00 1 anetTcpGenericConnect [60]
0.00 0.00 1/1 anetCreateSocket [57]
-----------------------------------------------
0.00 0.00 1/1 main [3]
[61] 0.0 0.00 0.00 1 init [61]
0.00 0.00 5/5 loadFont [56]
0.00 0.00 1/1 initMaps [62]
-----------------------------------------------
0.00 0.00 1/1 init [61]
[62] 0.0 0.00 0.00 1 initMaps [62]
-----------------------------------------------
0.00 0.00 1/1 view1090Init [65]
[63] 0.0 0.00 0.00 1 modesInitErrorInfo [63]
0.00 0.00 107/493 modesChecksum [21]
-----------------------------------------------
0.00 0.00 1/1 main [3]
[64] 0.0 0.00 0.00 1 setupConnection [64]
0.00 0.00 1/1 anetTcpConnect [59]
0.00 0.00 1/1 anetNonBlock [58]
-----------------------------------------------
0.00 0.00 1/1 main [3]
[65] 0.0 0.00 0.00 1 view1090Init [65]
0.00 0.00 1/1 modesInitErrorInfo [63]
-----------------------------------------------
0.00 0.00 1/1 main [3]
[66] 0.0 0.00 0.00 1 view1090InitConfig [66]
-----------------------------------------------
This table describes the call tree of the program, and was sorted by
the total amount of time spent in each function and its children.
Each entry in this table consists of several lines. The line with the
index number at the left hand margin lists the current function.
The lines above it list the functions that called this function,
and the lines below it list the functions this one called.
This line lists:
index A unique number given to each element of the table.
Index numbers are sorted numerically.
The index number is printed next to every function name so
it is easier to look up where the function is in the table.
% time This is the percentage of the `total' time that was spent
in this function and its children. Note that due to
different viewpoints, functions excluded by options, etc,
these numbers will NOT add up to 100%.
self This is the total amount of time spent in this function.
children This is the total amount of time propagated into this
function by its children.
called This is the number of times the function was called.
If the function called itself recursively, the number
only includes non-recursive calls, and is followed by
a `+' and the number of recursive calls.
name The name of the current function. The index number is
printed after it. If the function is a member of a
cycle, the cycle number is printed between the
function's name and the index number.
For the function's parents, the fields have the following meanings:
self This is the amount of time that was propagated directly
from the function into this parent.
children This is the amount of time that was propagated from
the function's children into this parent.
called This is the number of times this parent called the
function `/' the total number of times the function
was called. Recursive calls to the function are not
included in the number after the `/'.
name This is the name of the parent. The parent's index
number is printed after it. If the parent is a
member of a cycle, the cycle number is printed between
the name and the index number.
If the parents of the function cannot be determined, the word
`<spontaneous>' is printed in the `name' field, and all the other
fields are blank.
For the function's children, the fields have the following meanings:
self This is the amount of time that was propagated directly
from the child into the function.
children This is the amount of time that was propagated from the
child's children to the function.
called This is the number of times the function called
this child `/' the total number of times the child
was called. Recursive calls by the child are not
listed in the number after the `/'.
name This is the name of the child. The child's index
number is printed after it. If the child is a
member of a cycle, the cycle number is printed
between the name and the index number.
If there are any cycles (circles) in the call graph, there is an
entry for the cycle-as-a-whole. This entry shows who called the
cycle (as parents) and the members of the cycle (as children.)
The `+' recursive calls entry shows the number of function calls that
were internal to the cycle, and the calls entry for each member shows,
for that member, how many times it was called from other members of
the cycle.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
Index by function name
[14] CROSSVP [1] draw [21] modesChecksum
[35] ICAOAddressWasRecentlySeen [39] drawGrid [63] modesInitErrorInfo
[23] ICAOCacheHashAddress [2] drawMap [26] modesMessageLenByType
[50] ModeAToModeC [20] drawPlaneHeading [33] modesReadFromClient
[34] addRecentlySeenICAOAddr [22] drawPlaneOffMap [46] mstime
[57] anetCreateSocket [15] drawPlaneText [44] mstime
[58] anetNonBlock [16] drawSignalMarks [7] mstime
[59] anetTcpConnect [40] drawStatus [10] outOfBounds
[60] anetTcpGenericConnect [19] drawStatusBox [8] pxFromLonLat
[55] closeFont [13] drawString [4] resolveLabelConflicts
[47] cprDlonFunction [12] drawStringBG [9] screenCoords
[38] cprModFunction [5] drawTrail [6] screenDist
[43] cprNFunction [11] findPlaneObj [17] setColor
[30] cprNLFunction [31] getInput [64] setupConnection
[51] createPlaneObj [61] init [36] sign
[45] decodeAC12Field [62] initMaps [18] signalToColor
[37] decodeAC13Field [53] interactiveCreateAircraft [41] updatePlanes
[24] decodeBinMessage [28] interactiveFindAircraft [42] updateStatus
[48] decodeCPR [29] interactiveReceiveData [27] useModesMessage
[52] decodeCPRrelative [32] interactiveRemoveStaleAircrafts [65] view1090Init
[49] decodeID13Field [54] interactiveRemoveStaleDF [66] view1090InitConfig
[25] decodeModesMessage [56] loadFont

View file

@ -1,517 +0,0 @@
Flat profile:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ms/call ms/call name
38.46 0.05 0.05 62 0.81 2.10 drawGeography
23.08 0.08 0.03 7006834 0.00 0.00 screenDist
23.08 0.11 0.03 3503324 0.00 0.00 screenCoords
15.39 0.13 0.02 3508939 0.00 0.00 pxFromLonLat
0.00 0.13 0.00 3502994 0.00 0.00 outOfBounds
0.00 0.13 0.00 1057 0.00 0.00 mstime
0.00 0.13 0.00 698 0.00 0.00 drawTrail
0.00 0.13 0.00 698 0.00 0.00 findPlaneObj
0.00 0.13 0.00 682 0.00 0.00 drawString
0.00 0.13 0.00 510 0.00 0.00 drawStringBG
0.00 0.13 0.00 478 0.00 0.00 modesChecksum
0.00 0.13 0.00 372 0.00 0.00 ICAOCacheHashAddress
0.00 0.13 0.00 371 0.00 0.00 decodeBinMessage
0.00 0.13 0.00 371 0.00 0.00 decodeModesMessage
0.00 0.13 0.00 371 0.00 0.00 modesMessageLenByType
0.00 0.13 0.00 371 0.00 0.00 useModesMessage
0.00 0.13 0.00 351 0.00 0.00 interactiveFindAircraft
0.00 0.13 0.00 351 0.00 0.00 interactiveReceiveData
0.00 0.13 0.00 251 0.00 0.00 CROSSVP
0.00 0.13 0.00 248 0.00 0.00 drawStatusBox
0.00 0.13 0.00 248 0.00 0.00 resolveLabelConflicts
0.00 0.13 0.00 234 0.00 0.00 cprNLFunction
0.00 0.13 0.00 199 0.00 0.00 ICAOAddressWasRecentlySeen
0.00 0.13 0.00 178 0.00 0.00 drawPlaneText
0.00 0.13 0.00 175 0.00 0.00 decodeAC13Field
0.00 0.13 0.00 173 0.00 0.00 addRecentlySeenICAOAddr
0.00 0.13 0.00 172 0.00 0.00 sign
0.00 0.13 0.00 170 0.00 0.00 drawSignalMarks
0.00 0.13 0.00 170 0.00 0.00 setColor
0.00 0.13 0.00 170 0.00 0.00 signalToColor
0.00 0.13 0.00 117 0.00 0.00 cprModFunction
0.00 0.13 0.00 89 0.00 0.00 drawPlaneHeading
0.00 0.13 0.00 89 0.00 0.00 drawPlaneOffMap
0.00 0.13 0.00 82 0.00 0.00 mstime
0.00 0.13 0.00 78 0.00 0.00 cprNFunction
0.00 0.13 0.00 63 0.00 0.00 getInput
0.00 0.13 0.00 62 0.00 2.10 draw
0.00 0.13 0.00 62 0.00 0.00 drawGrid
0.00 0.13 0.00 62 0.00 2.10 drawMap
0.00 0.13 0.00 62 0.00 0.00 drawStatus
0.00 0.13 0.00 62 0.00 0.00 interactiveRemoveStaleAircrafts
0.00 0.13 0.00 62 0.00 0.00 modesReadFromClient
0.00 0.13 0.00 62 0.00 0.00 updatePlanes
0.00 0.13 0.00 62 0.00 0.00 updateStatus
0.00 0.13 0.00 57 0.00 0.00 decodeAC12Field
0.00 0.13 0.00 57 0.00 0.00 mstime
0.00 0.13 0.00 39 0.00 0.00 cprDlonFunction
0.00 0.13 0.00 39 0.00 0.00 decodeCPR
0.00 0.13 0.00 18 0.00 0.00 decodeCPRrelative
0.00 0.13 0.00 13 0.00 0.00 createPlaneObj
0.00 0.13 0.00 13 0.00 0.00 interactiveCreateAircraft
0.00 0.13 0.00 7 0.00 0.00 decodeID13Field
0.00 0.13 0.00 6 0.00 0.00 interactiveRemoveStaleDF
0.00 0.13 0.00 5 0.00 0.00 closeFont
0.00 0.13 0.00 5 0.00 0.00 loadFont
0.00 0.13 0.00 1 0.00 0.00 anetCreateSocket
0.00 0.13 0.00 1 0.00 0.00 anetNonBlock
0.00 0.13 0.00 1 0.00 0.00 anetTcpConnect
0.00 0.13 0.00 1 0.00 0.00 anetTcpGenericConnect
0.00 0.13 0.00 1 0.00 0.00 init
0.00 0.13 0.00 1 0.00 0.00 initMaps
0.00 0.13 0.00 1 0.00 0.00 modesInitErrorInfo
0.00 0.13 0.00 1 0.00 0.00 setupConnection
0.00 0.13 0.00 1 0.00 0.00 view1090Init
0.00 0.13 0.00 1 0.00 0.00 view1090InitConfig
% the percentage of the total running time of the
time program used by this function.
cumulative a running sum of the number of seconds accounted
seconds for by this function and those listed above it.
self the number of seconds accounted for by this
seconds function alone. This is the major sort for this
listing.
calls the number of times this function was invoked, if
this function is profiled, else blank.
self the average number of milliseconds spent in this
ms/call function per call, if this function is profiled,
else blank.
total the average number of milliseconds spent in this
ms/call function and its descendents per call, if this
function is profiled, else blank.
name the name of the function. This is the minor sort
for this listing. The index shows the location of
the function in the gprof listing. If the index is
in parenthesis it shows where it would appear in
the gprof listing if it were to be printed.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
Call graph (explanation follows)
granularity: each sample hit covers 2 byte(s) for 7.69% of 0.13 seconds
index % time self children called name
0.00 0.13 62/62 main [3]
[1] 100.0 0.00 0.13 62 draw [1]
0.00 0.13 62/62 drawMap [2]
0.00 0.00 124/1057 mstime [11]
0.00 0.00 62/62 updatePlanes [44]
0.00 0.00 62/62 updateStatus [45]
0.00 0.00 62/62 drawStatus [41]
-----------------------------------------------
0.00 0.13 62/62 draw [1]
[2] 100.0 0.00 0.13 62 drawMap [2]
0.05 0.08 62/62 drawGeography [4]
0.00 0.00 698/698 drawTrail [8]
0.00 0.00 406/3503324 screenCoords [5]
0.00 0.00 406/3508939 pxFromLonLat [7]
0.00 0.00 62/62 drawGrid [9]
0.00 0.00 593/1057 mstime [11]
0.00 0.00 248/248 resolveLabelConflicts [25]
0.00 0.00 178/3502994 outOfBounds [10]
0.00 0.00 178/178 drawPlaneText [28]
0.00 0.00 89/89 drawPlaneOffMap [37]
0.00 0.00 89/89 drawPlaneHeading [36]
-----------------------------------------------
<spontaneous>
[3] 100.0 0.00 0.13 main [3]
0.00 0.13 62/62 draw [1]
0.00 0.00 63/63 getInput [40]
0.00 0.00 62/62 interactiveRemoveStaleAircrafts [42]
0.00 0.00 62/62 modesReadFromClient [43]
0.00 0.00 1/1 view1090InitConfig [66]
0.00 0.00 1/1 view1090Init [65]
0.00 0.00 1/1 setupConnection [64]
0.00 0.00 1/1 init [61]
-----------------------------------------------
0.05 0.08 62/62 drawMap [2]
[4] 100.0 0.05 0.08 62 drawGeography [4]
0.03 0.03 3502560/3503324 screenCoords [5]
0.02 0.00 3508175/3508939 pxFromLonLat [7]
0.00 0.00 3502560/3502994 outOfBounds [10]
-----------------------------------------------
0.00 0.00 358/3503324 drawTrail [8]
0.00 0.00 406/3503324 drawMap [2]
0.03 0.03 3502560/3503324 drawGeography [4]
[5] 46.2 0.03 0.03 3503324 screenCoords [5]
0.03 0.00 7006648/7006834 screenDist [6]
-----------------------------------------------
0.00 0.00 186/7006834 drawGrid [9]
0.03 0.00 7006648/7006834 screenCoords [5]
[6] 23.1 0.03 0.00 7006834 screenDist [6]
-----------------------------------------------
0.00 0.00 358/3508939 drawTrail [8]
0.00 0.00 406/3508939 drawMap [2]
0.02 0.00 3508175/3508939 drawGeography [4]
[7] 15.4 0.02 0.00 3508939 pxFromLonLat [7]
-----------------------------------------------
0.00 0.00 698/698 drawMap [2]
[8] 0.0 0.00 0.00 698 drawTrail [8]
0.00 0.00 358/3503324 screenCoords [5]
0.00 0.00 358/3508939 pxFromLonLat [7]
0.00 0.00 256/3502994 outOfBounds [10]
0.00 0.00 73/251 CROSSVP [23]
-----------------------------------------------
0.00 0.00 62/62 drawMap [2]
[9] 0.0 0.00 0.00 62 drawGrid [9]
0.00 0.00 186/7006834 screenDist [6]
0.00 0.00 186/682 drawString [13]
-----------------------------------------------
0.00 0.00 178/3502994 drawMap [2]
0.00 0.00 256/3502994 drawTrail [8]
0.00 0.00 3502560/3502994 drawGeography [4]
[10] 0.0 0.00 0.00 3502994 outOfBounds [10]
-----------------------------------------------
0.00 0.00 124/1057 draw [1]
0.00 0.00 340/1057 drawSignalMarks [32]
0.00 0.00 593/1057 drawMap [2]
[11] 0.0 0.00 0.00 1057 mstime [11]
-----------------------------------------------
0.00 0.00 698/698 updatePlanes [44]
[12] 0.0 0.00 0.00 698 findPlaneObj [12]
-----------------------------------------------
0.00 0.00 186/682 drawGrid [9]
0.00 0.00 496/682 drawStatusBox [24]
[13] 0.0 0.00 0.00 682 drawString [13]
-----------------------------------------------
0.00 0.00 510/510 drawPlaneText [28]
[14] 0.0 0.00 0.00 510 drawStringBG [14]
-----------------------------------------------
0.00 0.00 107/478 modesInitErrorInfo [63]
0.00 0.00 371/478 decodeModesMessage [18]
[15] 0.0 0.00 0.00 478 modesChecksum [15]
-----------------------------------------------
0.00 0.00 173/372 addRecentlySeenICAOAddr [30]
0.00 0.00 199/372 ICAOAddressWasRecentlySeen [27]
[16] 0.0 0.00 0.00 372 ICAOCacheHashAddress [16]
-----------------------------------------------
0.00 0.00 371/371 modesReadFromClient [43]
[17] 0.0 0.00 0.00 371 decodeBinMessage [17]
0.00 0.00 371/371 decodeModesMessage [18]
0.00 0.00 371/371 useModesMessage [20]
-----------------------------------------------
0.00 0.00 371/371 decodeBinMessage [17]
[18] 0.0 0.00 0.00 371 decodeModesMessage [18]
0.00 0.00 371/371 modesMessageLenByType [19]
0.00 0.00 371/478 modesChecksum [15]
0.00 0.00 199/199 ICAOAddressWasRecentlySeen [27]
0.00 0.00 175/175 decodeAC13Field [29]
0.00 0.00 173/173 addRecentlySeenICAOAddr [30]
0.00 0.00 57/57 decodeAC12Field [46]
0.00 0.00 7/7 decodeID13Field [53]
-----------------------------------------------
0.00 0.00 371/371 decodeModesMessage [18]
[19] 0.0 0.00 0.00 371 modesMessageLenByType [19]
-----------------------------------------------
0.00 0.00 371/371 decodeBinMessage [17]
[20] 0.0 0.00 0.00 371 useModesMessage [20]
0.00 0.00 351/351 interactiveReceiveData [22]
-----------------------------------------------
0.00 0.00 351/351 interactiveReceiveData [22]
[21] 0.0 0.00 0.00 351 interactiveFindAircraft [21]
-----------------------------------------------
0.00 0.00 351/351 useModesMessage [20]
[22] 0.0 0.00 0.00 351 interactiveReceiveData [22]
0.00 0.00 351/351 interactiveFindAircraft [21]
0.00 0.00 57/57 mstime [47]
0.00 0.00 39/39 decodeCPR [49]
0.00 0.00 18/18 decodeCPRrelative [50]
0.00 0.00 13/13 interactiveCreateAircraft [52]
-----------------------------------------------
0.00 0.00 73/251 drawTrail [8]
0.00 0.00 89/251 drawPlaneOffMap [37]
0.00 0.00 89/251 drawPlaneHeading [36]
[23] 0.0 0.00 0.00 251 CROSSVP [23]
-----------------------------------------------
0.00 0.00 248/248 drawStatus [41]
[24] 0.0 0.00 0.00 248 drawStatusBox [24]
0.00 0.00 496/682 drawString [13]
-----------------------------------------------
0.00 0.00 248/248 drawMap [2]
[25] 0.0 0.00 0.00 248 resolveLabelConflicts [25]
0.00 0.00 172/172 sign [31]
-----------------------------------------------
0.00 0.00 78/234 cprNFunction [39]
0.00 0.00 156/234 decodeCPR [49]
[26] 0.0 0.00 0.00 234 cprNLFunction [26]
-----------------------------------------------
0.00 0.00 199/199 decodeModesMessage [18]
[27] 0.0 0.00 0.00 199 ICAOAddressWasRecentlySeen [27]
0.00 0.00 199/372 ICAOCacheHashAddress [16]
-----------------------------------------------
0.00 0.00 178/178 drawMap [2]
[28] 0.0 0.00 0.00 178 drawPlaneText [28]
0.00 0.00 510/510 drawStringBG [14]
0.00 0.00 170/170 drawSignalMarks [32]
-----------------------------------------------
0.00 0.00 175/175 decodeModesMessage [18]
[29] 0.0 0.00 0.00 175 decodeAC13Field [29]
-----------------------------------------------
0.00 0.00 173/173 decodeModesMessage [18]
[30] 0.0 0.00 0.00 173 addRecentlySeenICAOAddr [30]
0.00 0.00 173/372 ICAOCacheHashAddress [16]
-----------------------------------------------
0.00 0.00 172/172 resolveLabelConflicts [25]
[31] 0.0 0.00 0.00 172 sign [31]
-----------------------------------------------
0.00 0.00 170/170 drawPlaneText [28]
[32] 0.0 0.00 0.00 170 drawSignalMarks [32]
0.00 0.00 340/1057 mstime [11]
0.00 0.00 170/170 signalToColor [34]
-----------------------------------------------
0.00 0.00 170/170 signalToColor [34]
[33] 0.0 0.00 0.00 170 setColor [33]
-----------------------------------------------
0.00 0.00 170/170 drawSignalMarks [32]
[34] 0.0 0.00 0.00 170 signalToColor [34]
0.00 0.00 170/170 setColor [33]
-----------------------------------------------
0.00 0.00 117/117 decodeCPR [49]
[35] 0.0 0.00 0.00 117 cprModFunction [35]
-----------------------------------------------
0.00 0.00 89/89 drawMap [2]
[36] 0.0 0.00 0.00 89 drawPlaneHeading [36]
0.00 0.00 89/251 CROSSVP [23]
-----------------------------------------------
0.00 0.00 89/89 drawMap [2]
[37] 0.0 0.00 0.00 89 drawPlaneOffMap [37]
0.00 0.00 89/251 CROSSVP [23]
-----------------------------------------------
0.00 0.00 82/82 updatePlanes [44]
[38] 0.0 0.00 0.00 82 mstime [38]
-----------------------------------------------
0.00 0.00 39/78 cprDlonFunction [48]
0.00 0.00 39/78 decodeCPR [49]
[39] 0.0 0.00 0.00 78 cprNFunction [39]
0.00 0.00 78/234 cprNLFunction [26]
-----------------------------------------------
0.00 0.00 63/63 main [3]
[40] 0.0 0.00 0.00 63 getInput [40]
-----------------------------------------------
0.00 0.00 62/62 draw [1]
[41] 0.0 0.00 0.00 62 drawStatus [41]
0.00 0.00 248/248 drawStatusBox [24]
-----------------------------------------------
0.00 0.00 62/62 main [3]
[42] 0.0 0.00 0.00 62 interactiveRemoveStaleAircrafts [42]
0.00 0.00 6/6 interactiveRemoveStaleDF [54]
-----------------------------------------------
0.00 0.00 62/62 main [3]
[43] 0.0 0.00 0.00 62 modesReadFromClient [43]
0.00 0.00 371/371 decodeBinMessage [17]
-----------------------------------------------
0.00 0.00 62/62 draw [1]
[44] 0.0 0.00 0.00 62 updatePlanes [44]
0.00 0.00 698/698 findPlaneObj [12]
0.00 0.00 82/82 mstime [38]
0.00 0.00 13/13 createPlaneObj [51]
-----------------------------------------------
0.00 0.00 62/62 draw [1]
[45] 0.0 0.00 0.00 62 updateStatus [45]
-----------------------------------------------
0.00 0.00 57/57 decodeModesMessage [18]
[46] 0.0 0.00 0.00 57 decodeAC12Field [46]
-----------------------------------------------
0.00 0.00 57/57 interactiveReceiveData [22]
[47] 0.0 0.00 0.00 57 mstime [47]
-----------------------------------------------
0.00 0.00 39/39 decodeCPR [49]
[48] 0.0 0.00 0.00 39 cprDlonFunction [48]
0.00 0.00 39/78 cprNFunction [39]
-----------------------------------------------
0.00 0.00 39/39 interactiveReceiveData [22]
[49] 0.0 0.00 0.00 39 decodeCPR [49]
0.00 0.00 156/234 cprNLFunction [26]
0.00 0.00 117/117 cprModFunction [35]
0.00 0.00 39/78 cprNFunction [39]
0.00 0.00 39/39 cprDlonFunction [48]
-----------------------------------------------
0.00 0.00 18/18 interactiveReceiveData [22]
[50] 0.0 0.00 0.00 18 decodeCPRrelative [50]
-----------------------------------------------
0.00 0.00 13/13 updatePlanes [44]
[51] 0.0 0.00 0.00 13 createPlaneObj [51]
-----------------------------------------------
0.00 0.00 13/13 interactiveReceiveData [22]
[52] 0.0 0.00 0.00 13 interactiveCreateAircraft [52]
-----------------------------------------------
0.00 0.00 7/7 decodeModesMessage [18]
[53] 0.0 0.00 0.00 7 decodeID13Field [53]
-----------------------------------------------
0.00 0.00 6/6 interactiveRemoveStaleAircrafts [42]
[54] 0.0 0.00 0.00 6 interactiveRemoveStaleDF [54]
-----------------------------------------------
0.00 0.00 5/5 cleanup [86]
[55] 0.0 0.00 0.00 5 closeFont [55]
-----------------------------------------------
0.00 0.00 5/5 init [61]
[56] 0.0 0.00 0.00 5 loadFont [56]
-----------------------------------------------
0.00 0.00 1/1 anetTcpGenericConnect [60]
[57] 0.0 0.00 0.00 1 anetCreateSocket [57]
-----------------------------------------------
0.00 0.00 1/1 setupConnection [64]
[58] 0.0 0.00 0.00 1 anetNonBlock [58]
-----------------------------------------------
0.00 0.00 1/1 setupConnection [64]
[59] 0.0 0.00 0.00 1 anetTcpConnect [59]
0.00 0.00 1/1 anetTcpGenericConnect [60]
-----------------------------------------------
0.00 0.00 1/1 anetTcpConnect [59]
[60] 0.0 0.00 0.00 1 anetTcpGenericConnect [60]
0.00 0.00 1/1 anetCreateSocket [57]
-----------------------------------------------
0.00 0.00 1/1 main [3]
[61] 0.0 0.00 0.00 1 init [61]
0.00 0.00 5/5 loadFont [56]
0.00 0.00 1/1 initMaps [62]
-----------------------------------------------
0.00 0.00 1/1 init [61]
[62] 0.0 0.00 0.00 1 initMaps [62]
-----------------------------------------------
0.00 0.00 1/1 view1090Init [65]
[63] 0.0 0.00 0.00 1 modesInitErrorInfo [63]
0.00 0.00 107/478 modesChecksum [15]
-----------------------------------------------
0.00 0.00 1/1 main [3]
[64] 0.0 0.00 0.00 1 setupConnection [64]
0.00 0.00 1/1 anetTcpConnect [59]
0.00 0.00 1/1 anetNonBlock [58]
-----------------------------------------------
0.00 0.00 1/1 main [3]
[65] 0.0 0.00 0.00 1 view1090Init [65]
0.00 0.00 1/1 modesInitErrorInfo [63]
-----------------------------------------------
0.00 0.00 1/1 main [3]
[66] 0.0 0.00 0.00 1 view1090InitConfig [66]
-----------------------------------------------
This table describes the call tree of the program, and was sorted by
the total amount of time spent in each function and its children.
Each entry in this table consists of several lines. The line with the
index number at the left hand margin lists the current function.
The lines above it list the functions that called this function,
and the lines below it list the functions this one called.
This line lists:
index A unique number given to each element of the table.
Index numbers are sorted numerically.
The index number is printed next to every function name so
it is easier to look up where the function is in the table.
% time This is the percentage of the `total' time that was spent
in this function and its children. Note that due to
different viewpoints, functions excluded by options, etc,
these numbers will NOT add up to 100%.
self This is the total amount of time spent in this function.
children This is the total amount of time propagated into this
function by its children.
called This is the number of times the function was called.
If the function called itself recursively, the number
only includes non-recursive calls, and is followed by
a `+' and the number of recursive calls.
name The name of the current function. The index number is
printed after it. If the function is a member of a
cycle, the cycle number is printed between the
function's name and the index number.
For the function's parents, the fields have the following meanings:
self This is the amount of time that was propagated directly
from the function into this parent.
children This is the amount of time that was propagated from
the function's children into this parent.
called This is the number of times this parent called the
function `/' the total number of times the function
was called. Recursive calls to the function are not
included in the number after the `/'.
name This is the name of the parent. The parent's index
number is printed after it. If the parent is a
member of a cycle, the cycle number is printed between
the name and the index number.
If the parents of the function cannot be determined, the word
`<spontaneous>' is printed in the `name' field, and all the other
fields are blank.
For the function's children, the fields have the following meanings:
self This is the amount of time that was propagated directly
from the child into the function.
children This is the amount of time that was propagated from the
child's children to the function.
called This is the number of times the function called
this child `/' the total number of times the child
was called. Recursive calls by the child are not
listed in the number after the `/'.
name This is the name of the child. The child's index
number is printed after it. If the child is a
member of a cycle, the cycle number is printed
between the name and the index number.
If there are any cycles (circles) in the call graph, there is an
entry for the cycle-as-a-whole. This entry shows who called the
cycle (as parents) and the members of the cycle (as children.)
The `+' recursive calls entry shows the number of function calls that
were internal to the cycle, and the calls entry for each member shows,
for that member, how many times it was called from other members of
the cycle.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
Index by function name
[23] CROSSVP [4] drawGeography [15] modesChecksum
[27] ICAOAddressWasRecentlySeen [9] drawGrid [63] modesInitErrorInfo
[16] ICAOCacheHashAddress [2] drawMap [19] modesMessageLenByType
[30] addRecentlySeenICAOAddr [36] drawPlaneHeading [43] modesReadFromClient
[57] anetCreateSocket [37] drawPlaneOffMap [47] mstime
[58] anetNonBlock [28] drawPlaneText [38] mstime
[59] anetTcpConnect [32] drawSignalMarks [11] mstime
[60] anetTcpGenericConnect [41] drawStatus [10] outOfBounds
[55] closeFont [24] drawStatusBox [7] pxFromLonLat
[48] cprDlonFunction [13] drawString [25] resolveLabelConflicts
[35] cprModFunction [14] drawStringBG [5] screenCoords
[39] cprNFunction [8] drawTrail [6] screenDist
[26] cprNLFunction [12] findPlaneObj [33] setColor
[51] createPlaneObj [40] getInput [64] setupConnection
[46] decodeAC12Field [61] init [31] sign
[29] decodeAC13Field [62] initMaps [34] signalToColor
[17] decodeBinMessage [52] interactiveCreateAircraft [44] updatePlanes
[49] decodeCPR [21] interactiveFindAircraft [45] updateStatus
[50] decodeCPRrelative [22] interactiveReceiveData [20] useModesMessage
[53] decodeID13Field [42] interactiveRemoveStaleAircrafts [65] view1090Init
[18] decodeModesMessage [54] interactiveRemoveStaleDF [66] view1090InitConfig
[1] draw [56] loadFont

View file

@ -1 +0,0 @@
e0401e269cca0eea688090bd3b3254ca87db9834

View file

@ -1 +0,0 @@
bf0a21d45c74ca1ec5086a28d3c765f51ca09193

View file

@ -1 +0,0 @@
62f7f97e41c0ad19d03f7bfd16da920c9b6b096b

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 6.7 KiB

View file

@ -1,193 +0,0 @@
<!DOCTYPE html>
<html>
<body>
<head>
<script>
var frames = [];
var currentFrame = 0;
var modes_checksum_table = [
0x3935ea, 0x1c9af5, 0xf1b77e, 0x78dbbf, 0xc397db, 0x9e31e9, 0xb0e2f0, 0x587178,
0x2c38bc, 0x161c5e, 0x0b0e2f, 0xfa7d13, 0x82c48d, 0xbe9842, 0x5f4c21, 0xd05c14,
0x682e0a, 0x341705, 0xe5f186, 0x72f8c3, 0xc68665, 0x9cb936, 0x4e5c9b, 0xd8d449,
0x939020, 0x49c810, 0x24e408, 0x127204, 0x093902, 0x049c81, 0xfdb444, 0x7eda22,
0x3f6d11, 0xe04c8c, 0x702646, 0x381323, 0xe3f395, 0x8e03ce, 0x4701e7, 0xdc7af7,
0x91c77f, 0xb719bb, 0xa476d9, 0xadc168, 0x56e0b4, 0x2b705a, 0x15b82d, 0xf52612,
0x7a9309, 0xc2b380, 0x6159c0, 0x30ace0, 0x185670, 0x0c2b38, 0x06159c, 0x030ace,
0x018567, 0xff38b7, 0x80665f, 0xbfc92b, 0xa01e91, 0xaff54c, 0x57faa6, 0x2bfd53,
0xea04ad, 0x8af852, 0x457c29, 0xdd4410, 0x6ea208, 0x375104, 0x1ba882, 0x0dd441,
0xf91024, 0x7c8812, 0x3e4409, 0xe0d800, 0x706c00, 0x383600, 0x1c1b00, 0x0e0d80,
0x0706c0, 0x038360, 0x01c1b0, 0x00e0d8, 0x00706c, 0x003836, 0x001c1b, 0xfff409,
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000
];
function modesChecksum(frame) {
var crc = 0;
var bits = frame.bits;
var offset = (bits == 112) ? 0 : (112-56);
for(var j = 0; j < bits; j++) {
var byte = j/8;
var bit = j%8;
var bitmask = 1 << (7-bit);
/* If bit is set, xor with corresponding table entry. */
if (frame.hex.charCodeAt(byte) & bitmask)
crc ^= modes_checksum_table[j+offset];
}
return crc; /* 24 bit checksum. */
}
function getFrameChecksum(frame) {
var res = "";
for (j = 0; j < frame.hex.length; j++) {
var val = frame.hex.charCodeAt(j);
var h = val.toString(16);
if (h.length == 1) h = "0"+h;
res += h;
}
return res;
}
function displayFrame(i) {
var div = document.getElementById("frame");
var msgbits = 8+112;
var frame = frames[i];
var padding = frame.mag.length - msgbits*2;
/* Remove the old representation. */
var nodes = div.childNodes.length;
for(var j = 0; j < nodes; j++) {
div.removeChild(div.firstChild);
}
/* Display the new one. */
for (var j = -padding; j < msgbits*2+padding; j++) {
var m = frame.mag[j+padding];
var type;
if (j < 0) type = "noise";
if (j >= 0 && j < 16) type = "pre";
if (j >= 16) {
if (!(j % 2)) {
var next = frame.mag[j+padding+1];
if (m > next)
type = "one";
else
type = "zero";
}
var bit = (j-16)/2;
if (bit == frame.fix1 ||
bit == frame.fix2)
type = "err";
}
var sample = document.createElement("div");
sample.setAttribute("class","sample "+type);
sample.setAttribute("title","sample "+j+" ("+m+")");
sample.style.left = ""+((j+padding)*4)+"px";
sample.style.height = ""+(m/256)+"px";
div.appendChild(sample);
}
document.getElementById("info").innerHTML =
"#"+currentFrame+" "+frame.descr+"<br>"+
"Bits:"+frame.bits+"<br>"+
"DF : "+(frame.hex.charCodeAt(0) >> 3)+"<br>"+
"fix1: "+frame.fix1+"<br>"+
"fix2: "+frame.fix2+"<br>"+
"hex : "+getFrameChecksum(frame)+"<br>"+
"crc (computed): "+modesChecksum(frame).toString(16)+"<br>";
}
function recomputeHex(frame) {
var padding = frame.mag.length - (112+8)*2;
var b = [];
var hex = "";
/* Get bits */
for (var j = 0; j < frame.bits*2; j += 2) {
var bit;
var l = frame.mag[padding+j+16];
var r = frame.mag[padding+j+1+16];
if (l > r)
bit = 1;
else
bit = 0;
b.push(bit);
}
/* Pack into bytes */
for (j = 0; j < frame.bits; j+= 8) {
hex += String.fromCharCode(
b[j]<<7 |
b[j+1]<<6 |
b[j+2]<<5 |
b[j+3]<<4 |
b[j+4]<<3 |
b[j+5]<<2 |
b[j+6]<<1 |
b[j+7]);
}
frame.hex = hex;
}
window.onload = function() {
document.getElementById("next").onclick = function() {
if (currentFrame != frames.length-1) currentFrame++;
displayFrame(currentFrame);
}
document.getElementById("prev").onclick = function() {
if (currentFrame != 0) currentFrame--;
displayFrame(currentFrame);
}
document.getElementById("re").onclick = function() {
recomputeHex(frames[currentFrame]);
displayFrame(currentFrame);
}
displayFrame(currentFrame);
}
</script>
<script src="frames.js"></script>
<style>
#frame {
width: 1024px;
height: 255px;
border: 1px #aaa solid;
position: relative;
}
.sample {
position: absolute;
bottom: 0px;
}
.pre {
width:4px;
background-color: orange;
}
.one {
width:4px;
background-color: #0000cc;
}
.zero {
width:4px;
background-color: #aaaaaa;
}
.err {
width:4px;
background-color: #cc6666;
}
.noise {
width:2px;
background-color: #ffffff;
border: 1px #aaa dotted;
}
</style>
</head>
<div id="frame">
</div>
<pre id="info">
</pre>
<input type="button" id="prev" value="Prev frame">
<input type="button" id="next" value="Next frame">
<input type="button" id="re" value="Recompute Hex">
</body>
</html>

View file

@ -1 +1 @@
57081b3b8e95e553e4b5ef8d741befabb4cbbcdd
9ff39d15cbd3fab99fcdbff1a18051b256c66b1a

View file

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleIdentifier</key>
<string>com.apple.xcode.dsym.view1090</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>dSYM</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
</dict>
</plist>

View file

@ -1 +0,0 @@
8090a053ba2c7c31e5b2cfc5870918d933a99849

View file

@ -1 +0,0 @@
14bceef428bd087e58e4552f6ee11d3afc8586ed