From 63ac13a98853f41e0d7f37e05832133b808f014f Mon Sep 17 00:00:00 2001 From: nathan Date: Sun, 8 Sep 2019 23:52:09 -0500 Subject: [PATCH] fixed message rates and plane count Former-commit-id: 4581c1049aae72ad054560c00d9c4fce5e2adaa2 Former-commit-id: 622f7ce9989c8ca5caeddd33d85cd9e433b521fe --- draw.c | 46 ++++++++++++++++++-------------------- draw.o.REMOVED.git-id | 2 +- font.o | Bin 36192 -> 36272 bytes init.o | Bin 45776 -> 45856 bytes input.o.REMOVED.git-id | 2 +- list.c | 2 +- list.o | Bin 47808 -> 46784 bytes monokai.o | Bin 26192 -> 26272 bytes planeObj.c | 14 +++++++++--- planeObj.o | Bin 41536 -> 41424 bytes status.c | 18 +++++++-------- status.o.REMOVED.git-id | 2 +- structs.h | 3 ++- view1090.REMOVED.git-id | 2 +- view1090.o.REMOVED.git-id | 2 +- 15 files changed, 50 insertions(+), 43 deletions(-) diff --git a/draw.c b/draw.c index aabdba7..564296b 100644 --- a/draw.c +++ b/draw.c @@ -350,6 +350,26 @@ void drawGeography() { } } +void drawPlaneText(struct planeObj *p, int x, int y) { + drawStringBG(p->flight, x + 5, y + appData.mapFontHeight, appData.mapBoldFont, white, black); + + char alt[10] = " "; + if (Modes.metric) { + snprintf(alt,10,"%dm", (int) (p->altitude / 3.2828)); + } else { + snprintf(alt,10,"%d'", p->altitude); + } + drawStringBG(alt, x + 5, y + 2*appData.mapFontHeight, appData.mapFont, grey, black); + + char speed[10] = " "; + if (Modes.metric) { + snprintf(speed,10,"%dkm/h", (int) (p->speed * 1.852)); + } else { + snprintf(speed,10,"%dmph", p->speed); + } + drawStringBG(speed, x + 5, y + 3*appData.mapFontHeight, appData.mapFont, grey, black); +} + void drawMap() { struct planeObj *p = planes; time_t now = time(NULL); @@ -386,18 +406,7 @@ void drawMap() { if(outOfBounds(x,y)) { int outx, outy; drawPlaneOffMap(x, y, &outx, &outy, planeColor); - - drawStringBG(p->flight, outx + 5, outy + appData.mapFontHeight, appData.mapBoldFont, white, black); - - char alt[10] = " "; - snprintf(alt,10,"%dm", p->altitude); - drawStringBG(alt, outx + 5, outy + 2*appData.mapFontHeight, appData.mapFont, grey, black); - - char speed[10] = " "; - snprintf(speed,10,"%dkm/h", p->speed); - drawStringBG(speed, outx + 5, outy + 3*appData.mapFontHeight, appData.mapFont, grey, black); - - // continue; + drawPlaneText(p, outx, outy); } @@ -412,18 +421,7 @@ void drawMap() { if(MODES_ACFLAGS_HEADING_VALID) { drawPlaneHeading(x, y,p->track, planeColor); - //char flight[11] = " "; - //snprintf(flight,11," %s ", p->flight); - //drawStringBG(flight, x, y + appData.mapFontHeight, appData.mapBoldFont, black, planeColor); - drawStringBG(p->flight, x + 5, y + appData.mapFontHeight, appData.mapBoldFont, white, black); - - char alt[10] = " "; - snprintf(alt,10,"%dm", p->altitude); - drawStringBG(alt, x + 5, y + 2*appData.mapFontHeight, appData.mapFont, grey, black); - - char speed[10] = " "; - snprintf(speed,10,"%dkm/h", p->speed); - drawStringBG(speed, x + 5, y + 3*appData.mapFontHeight, appData.mapFont, grey, black); + drawPlaneText(p, x, y); lineRGBA(appData.renderer, x, y, x, y + 4*appData.mapFontHeight, grey.r, grey.g, grey.b, SDL_ALPHA_OPAQUE); } else { diff --git a/draw.o.REMOVED.git-id b/draw.o.REMOVED.git-id index 901f5ae..001c031 100644 --- a/draw.o.REMOVED.git-id +++ b/draw.o.REMOVED.git-id @@ -1 +1 @@ -935a39fc34ea31bd03a177786917177c0d74191a \ No newline at end of file +fda1ba88522832395454de10738083bda8677b29 \ No newline at end of file diff --git a/font.o b/font.o index 3132bb43fa22186585f718299e08fc7c3a29ce08..55e9ba8b912fbb37c021566ad47101eb298885e9 100644 GIT binary patch delta 7251 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 delta 7083 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 m(v9h257ckW#*fxktVT}Qc zRMn|dRi~;ur@!!(ed*hn<;y&j==_#X1uL%lD$Lkz8A;!?w5$}1o{Z!RP3gmxQyg`& zD>wKj$xU22)oNu~X|CMJkuzPnu_I@>auY}H=E{Dn6;d+(T;#rW{=A-LZM2e-I~a?~ z`)bQRRQhTi=<*_o?Q6w*lBkW8I*#l-+9~GVl@aWc?s<6c8ET8Y?S3@bvg*2h^r%j< ztmdwKUk{QU4~uAc_s=DJcCn`;cXf?=IWoJO>&QJ^{R0nE_q|;CK}YVLHYI+?Pk3 z=#1i*K8`07`6c`)SNn~|bdHtkxaBZ@PfG4cVRIumz|ngV{CCT0mX$H^ zWk*%(;A2ipEDv&Ip6j1E-SS)yc4UrZ#IfOdA99?coypz&d_4BG>G)Ki49n{1wCp@< z+x$OYwon6|+_o$$j?S4GY8v`wwtajW0q<$Sf@*qp_j?{2E9@RUvlQHp&Tc@?X~zGy=1m_TkUpBeTLKnpaUK1eL>O$ zgaT>xu8_16BLc0OeoxZP7V2kORt44uTGn%<_isuyj+Er+nzX^XfGKiBn`)9j-W*!D z#iS|Wj-;r4GBR)LA&Xu{xfN;Tci33n9CP1zXIkqxb3~DG-Y?VcyVvUOyf{zB@a`63 zZRe#9yQLamk<{+nyHjS&99KAU*0^!gD!%VkC$-U({8_X6&di@W?(u@D<0^i5Q zY;r$tTCPE4tgW6yjBJ|KCIrhmC2U?oVysr5;_b1vxx|D2R@f|rf1Eb|NORSVmHX-W z^EZUXg-r@Y$9Z}S+8J@G``TSDeNxb~s3Mxj3v;%h$DqcC&EYJ!?mj^;B7eL#x$N_C zLHD4T>RxA`zZJAKYN+l@P2857)FxBwX52a;FhQHHZC%<~(C&y#(CQotCWKWO39>9~ z=2}LDWiG18vJ%%P*rr3kwRun2Jb=(d-M=kI;F_Qfr5rmJ;_#!;GeA3SIC}h(<&W4**1N6*4_~I zdk~-eu{w--Q*1N5z3ay|=ftDO^JfDpr)XcjOq`vPqqZPrYFMQsGIgZNLt?5{uj6gf zJOKYRZ4PkY`X$}j#1@2z=5f*-CFoT|iKg@PEE9Ay;?r#Ew~B1e)5+pIe-t)9z_XFhiRRj@Eu* zGXfE!yE?d?92c}4F`|v>2ymXWf_{Po(KmVKuL}A-s)-Kn!r^$5-ko662^PuGP_If`d$GmZW6 z*Pi&d{P`4>)WT-ekWE7leW9>9iNGvdy^6>zZHCa5!g*d0HqRnP^a|5TLHi;>v@F}L z`yYayNA;|*NzQU^hfhd)$5uZKB{ERc-6=As=!Kbwu%Zo3y;hpWY zLO#)B9HlHlH>3Dzt@@(;>98t74O#w)ds!naA3~teR)Y~Kw0$Wpu(U8o1(6`tepDAy zpm__o=bME$4BB~fwE2oBvbUh=2+h&Hlva3hPEP-y-0gZkR~X&Rr{)Twf1l645}`kb zsyQ0n<|g}(2(kuht~TrGg6%x-3i?+BiC*KqaY4{?$e$Zl>rg&7+|s?%(uJpy+mbif zqz-5>FUR=Wy6U9@A4O!It)4_|o;Fi>$^1^(EJlK8dyeKuf}TV*(f4@(R|UNQ|9o5h z4k0QJB06821#H>3@tuwqB2IKICyCL5mZ6I1OH3CF`U2DfZT^?XSSn~g1Q+O*J2=z+ zR?y_TF?vB?)2^%Q&esBOMCAhQvpV7If*kV^FX*Q@-FZR&GXe{>I)L1TubU{RsuzXL z-{D`RRZnCu3j2~eVdkP7)fVwZ8`Q@LF4iW8ht`I}>^0p1`9x2*bG^$IvC?=b4P)X$s)KGZ_fu-7X zZ|-`#M%dE3j#L$Mb&-s))Ac7P<=h7}PRtM({}z5_AND%WU-!@|QVro=5Ue zQNAop+pvb@y$CF~)ia1J*M`1Z);`aR7XF6Va;+|7`|>btt7@|U68;rhokaEu+iYg* zWWF(aKJP_zg*FvTn+tjzaiUdBGX?z&RYWf{?JDTMpjK+rh_$^0O-GPu7uG%^=mW?n z+Ml(91s#Usm0C?e`AXX?WHwRQtVIpAP|Dibf|et&iuMR=mk9b6B1Au8?K(lfKx~z* z8X`e9b$IN1g-ugb6AdsuB4{`GSJOp~>8pYcLWt-unVu4K3Zg_8F#S-_ZxCN?t5Q_0 z4x49rmHv;gDL`-ywV&y(qPo1dy!EgU`D>iyUraVV`HV>yHaAd7bPey~EJ3@VhFZ9W zz*?<-gWR=YH3_k`uTvfftc-(psYT5Azq7d92V>&gWE3RP719nNV71swpjUaM9x z>%;0DpbO(9hVLKV?LoCu}}IudH5 zHZ3^O%oVf~f<${UT_)&i3*rC?@(U)1898hsuq%I*l4Cs}U&H=D*qU4PiMD z5u%1KobL)c7_nmQYnFx5;=VqASDY{IYu@Ao>xQtUtNJFo>~l-Wd=Pna`x&A{Z!m2x zXd2?1oRnTgHe)-x+o7wlSpo&EcEaE?9UmzrVfu0tDbZ#rZ?1L1{xD)Cnryb0%uy%c z-%M$QJ$_YKmLf#-AZt$v`URq!HQiiSZ?;VdU%fvQHv3Su*`{M!ZLujC2DfO_gV$7D z-kM$<`XZm`{d~)6BIr026P?3#(*-R+CD9`s|13dQqlS79BCyp~9T3?%lCCa^tzpxN zFDEmE{X6h)(`FBEE)oH zsl0=a3jGb3?ap2--mYmj%eOm;@eFBF5h)FuzwoUtgENa4?Q2Ms+NvX}OSO6m*Gt1{ zAVNE|d5qW06T*HnqC3K-4JX^Epqo&&LsJgBxWhJI^OxH7!e$VHJGHM)dkol_W8URu zQZ9_Hp?Ie@m-xE+vY?dHcWU)tIJ47MW0A7UR-KT$%QnS)f%bmS@&@?>V!N~fFR5ny z>Cs#ycIm*sIGk++ZOl{H5o)*Iw0oHO&by8ZLm;|4tR~}?-L{&8i&VZ0vxmOe84TEy zL%%Q1+hdy;Z?LaK<HycUy-3a-G{xP1_)N4) z@)+{>($UV;ahF3^+y8qgCi=l`)ET(9o-UzsukQbypf`B6)#X?_uTHIGj+tNRo3p+( z0>7s3DuQ-k+6xh)eVKamrW@9}X$?e-=omrMnNCH5=uAO#c_%MKHPPjw-{*J~W$-_* z&94Q0h3RVu5j}ewt>-#aThjG{=nuD1XE3}Ztp^jsDJQqHQ2RTf$^PV`FNNJuPVtw1 zL|-HH=lMc)?ML)CgnogSaWZSC953!qN%3^asNApVYDHzRnagjc_d|SJ(LbW69eP01 zZ)Z-KjR=+ZR8Z+tM=A;qg_XJwiNifpPK~bZ)w+V3!#(MOmi=O$I)wr%kD;8(=WvnA z)5t!Or#?WzkvyMu5c`ijl=3mB^sT5l(v$wZot?<@l@3MK&=y#d$Wmn}Cq>#pTuMBo Zt|0qpo*IUNqj@R)4!RwFgv6mX{|CY3y`2C6 delta 8637 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 literal 47808 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 diff --git a/monokai.o b/monokai.o index 11cca7559b595a201997a274e49699b6941ee3b3..529c7467ceb7fa30c5cb7945c8b135b2754143f3 100644 GIT binary patch delta 5242 zcmZ9Qe{fXQ702HN3W?^|63XR9eg#wrSe~Ke7lb4mNH!ZFVM7A>0fYrp%ou?Ps9?vq z{)VhGXC8*}fWlm~y#C{Bx&J=R(h(=h$Ug9pNojX0a2rDyw7T2DX=an$o@W z;KpkxfR$P1*yBccH~zh8^!z`L^6ttH5qj)u?`FX^iq)9z-7IuwXAR#}IGNncH-Q(a z&!%)M6weKOHa(`5+@SRZjEDeDbzY?aVacyY@X?mqv5isn?YeFTNK?{WGCjhQI4It?1R4j z>0hTMZ@R7R_SVg9Z5z-x@xj!N@a8R*w}o$Qt8c%xt*>y>qEz%uOvC#*nSDEM_}3`) zSYKpLsZvGg&(r2)h7-xMzU%#1SJAIC{c|vwXR9U1&etYytOsWc%~uE!eVrqe3Hl8p zMCW9A?!|&GLM-1_cVZwvU_NuJ(XxIbG^gM%(CQ4D3Tzd@jsn}fK=tfgfA)T^WLt+g zXpUE=Iu78 zskoeLs#834CGvj~{qt;f4ukWwd4iu_Cp7mWyEtIFsal+CyP%IFQf#YZh!txS<@G%% zH1A=cxK;fI{`oYD6fe$Sgk}Xgi9XEqyr7p6CAw#f*Y~oZHzH1SJJX~Qo+>fMOHd`+ z?Bv|W2)YfqMC-V6W(hhUVWJ;$?adYR33Qie^%f45*ydf1utsS1V2~pCn05#{4cVpI zJj~d{RGwl)d9|#fsFVn+6e1W&`Id&^CEIpXEZ+i+<9)g_ER7=L4ZxXx>70 zg;w97sKQovp}oR3Pw^ggw@~&VR-w%l?Tv7!p!FD_I5Y5dML?CoU#ZnbG*#MWKkI)d z^v@w$NwdoIbwQ6KPV_X>_XRx<70|{zr7i1}pc%*|I@vwLE$f`1k04C+JikX@33>$G zL@RiY9p;|O-@Y}Y&>sk>i%6~tC>x_A}45@FL*cJAe8m!3~KWOuCDEZ-iIjBqr7K6DCnbz2W@p3s#*_Ay9Qa+ zv&>eOJ}sm_Lb$qBU61~1ZN`lEmj7L$xekNXI+)M&PlAr-$ft$BhV_3F{;3Ep((2b} zU$k3&gs&Ib<}*GNrzHLV3w9Fz#dnx?j#DY<&4@2KpRGVX5PBlV#6oX5(`Z6(=r5S=6!ZuNLU!^+XWygirx;kOeFuc51O7T~`uL^z zm7qJ&S!b&sBU%?w?Kn&A3gj-cRSCk>#?eh}2l|(3bD2k)#!pLZwy$Auna=9v8OsuM z<2X#I-$kcmtX`{!@J4+=)x+1IO*3~`D>^j5-=OK6tf?WOwj$bK(<=}s{a#+My+Yp( zwOp$OFv|nVhwySb%lXYbDwMm?O-hYJq}+tT<+f@-_6l2_M2Ol!L{{{gKX9K~9;|cg z%-A6Ojatn@Q=@JE&R;X@g(e@-MmuXP7igEDV<+HTW2L$dxlLOA9>Jzws*b@XTeTp& zS*zhFY7VGgM4DUGEf{FlW<4JrxAQiXNM#y)Em~cLoEF=hyM(`(v)>2bD(&wPw2E^(Ed0fMl)Nnb7Z6#canGuxt`mYxd<}-EvT;#fOpIC`VtL~~BLivNhr7a@n2HrW=57G1H9gYTPdItd_0kYMe`&h@ zV~DQNUB`z|-tSy`QbcRyMf>XzJ(skr|5E5rv;NW$J)5q6xYxP)%HYTI-$dyg)fqg; za661+e`0no@XTC0M9&50>Wlii!=ETsj?Q%j$-m8WeO4J_>k8CioLyI{CL`yjQuS}N zQ(J~ZHiOO;%>y&PWm74 Chn6V- delta 5173 zcmZ9PdvMjo6~}*zmzmmurL7zhqC2`WDmAumFb8z7fFNVpI}9>(MfSg;H<$N<4g zdL3V&JmS|nz*x&wc?i>LNCzKdsTs?wwM>FYX-jLbIE-NJ5ZlrQ1$%z?cP@tW`(y9f z^ZD-C-Lw1K{oP%EP<hhH<*#3#DDe9sQp1p$_St-*Ud-ia*QtVXX;@nC} zh$_cNx|Pxn3iWJ~Tk&qC$~LZamN~s|=i1C}YP2iKO4v`%cCr&Q$)LJTKhC@&^;j#x z8Jg4E(7MxMq`uZlaHiqJ;(AQnQcA6xWuN1}k>w>;T4qYcok`KGRyvV6!&Q#Wt6l93 zlUI9=V{^7^91X90?F0%l-lFi96%*&gbbFlpQO~}l!BKeZo;z?L{i&Yfag~WZuibMk zR&DDEO({{T2;r&PoJ)2ZTGnmuk2QjRos8$flWVKF@aAfhKh}jgLNkbVq9-^)si4;p zBAS-!x~m1PK|jTR3@XoOejnL%mbF=Ejv|n!RUbO?Z1p7G$g|CRv~8W|FYeEc(JsIM zX^tQxU#m(K?^8Ag^IJ{joi5ueG_7bauvHpD1wNC& zbNr9cq(BvFlgcz{*v-9UAe-nc9&?tUn-D0p)pO{gawK}GEX4qoSCBDHtBEL>w$+@c z4dgs`Is1d2==k>`Jk3^L!BeEotK9oMp?M14BAHRKdxe5NgYIIjPU1wdZ4PmSHlYDLCE5%|-X%Jy1f2vg z(Stnlb%MTxcA~d2eL>K>5hD6Wk2~8}1brC&C0bp=#S+^zaD+obV~|~Ht7{09YBPcJ zb53a9Ko?Q>ShTD!1U-x1(pJhqhS$kMf!C)tBk0xUA%0)hIJXZy(Y1IJ-9$GseL~Rf z2ov4Qbc>*e;3?DQ2-BT{o`#p`d8T^={Tl5=Rf;>BgMua_M06a}!-7smKhfz-eeyh@NM9O3;5H!>7$H{4W1Z&=mNI-o^Bipz9GNdN%SAVOduM-HmRd zv-yl27JKt*jzHMwQ~yKOY@f>jxKf*MIdLb2CJ~-0U6G#VChX6GUgbmi@4}zU`U}E8675x5y^M`j zTh*s9)wa37m*RxDo0sGq0@Z7cpW~DZ`a=v_*Wt@Pn$#hn*37G=g~FK zR$I|K&!_x|pYKy8@XxoE7eOjdqnpZ=2+!B%JMMRsbMDd;J$`=yPn}NP&pAvL^rs_G zR<}icfc`p7fiBkh)Iwx0(58hOJR}-4Ah1BIQ|MUWQ|r*Xz*bopAbpURaEH(@M@GF? zW4zP7Tu&w#R*bA3eQ4YHNZ>dCA3rdZ-f@^HD|d^El<{|IvM*D z0u7qZi;f1{e9SM}4}>Niy$yEib>7#Vf?iLt5GC`o_e&_#G`o@Ih^SvKiAlbQ66?P=?lT z5q?m2ej?~$-UDIbkKrkPCHys!m9(ru;s1v3l3RHS(G*1Yn#c8HZL7zm3r!j?Qx-z4 zbU`z9)|59$q|ajXx9ZNyA(X!YB6PlpStNmxz9;&=2r@R}azi>P7UAyZ%Wx zmgHyL`^F&+czZ?~ynwDYUGd5g${(u{x|jXYG`-~*^z;nT^XFy6|2_uVbm#FQl#jFs z?HAFSd2#+aM9*6{qQ4;Y=UM;t5Ivg_{Wosq`xh~d{|Lo$RA;R?Mx;S9`=itQFJ~rg zh@KN3(P#IB1D`5Yh~7nc@!O|Hd{#2l;ygM43l^8C+tESgKDH oqid;SNy#uP2N^kI(YGX1Sr{b87gJF9aB=(x0XO1Ss72%c4^{Atvj6}9 diff --git a/planeObj.c b/planeObj.c index 958baf5..c8f518c 100644 --- a/planeObj.c +++ b/planeObj.c @@ -19,11 +19,11 @@ struct planeObj *createPlaneObj(struct aircraft *a) { p->addr = a->addr; p->created = 0; p->oldIdx = 0; + p->prev_seen = 0; memset(p->oldLon, 0, sizeof(p->oldLon)); memset(p->oldLat, 0, sizeof(p->oldLat)); memset(p->oldHeading, 0, sizeof(p->oldHeading)); - memset(p->messageRate, 0, sizeof(p->messageRate)); return (p); } @@ -45,6 +45,8 @@ void updatePlanes() { p = createPlaneObj(a); p->next = planes; planes = p; + } else { + p->prev_seen = p->seen; } p->live = 1; @@ -53,7 +55,14 @@ void updatePlanes() { a = a->next; continue; } - + + p->seen = a->seen; + + if((p->seen - p->prev_seen) > 0) { + p->messageRate = 1.0 / (double)(p->seen - p->prev_seen); + } + + memcpy(p->flight, a->flight, sizeof(p->flight)); memcpy(p->signalLevel, a->signalLevel, sizeof(p->signalLevel)); @@ -61,7 +70,6 @@ void updatePlanes() { p->speed = a->speed; p->track = a->track; p->vert_rate = a->vert_rate; - p->seen = a->seen; p->lon = a->lon; p->lat = a->lat; diff --git a/planeObj.o b/planeObj.o index b23c4133e654bd50a61d46d933caa08e2886a2c1..0b63cf4d9b575fe3b63c2e79bb71cd34645ccbc2 100644 GIT binary patch literal 41424 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±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 Q%YTU5|8gRyO33{G3zF>jg#Z8m literal 41536 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 xNDboyeu#S)e5EP#V+g=+uzjhQ)Dlon && p->lat) { + + + //distance measurements got borked during refactor - need to redo here + /* double d = sqrt(p->dx * a->dx + a->dy * a->dy); if(d < appData.maxDist) { if(d > maxDist) { maxDist = d; } - + */ numVisiblePlanes++; - } + //} } - */ + totalCount++; - msgRateAccumulate += (p->messageRate[0] + p->messageRate[1] + p->messageRate[2] + p->messageRate[3] + - p->messageRate[4] + p->messageRate[5] + p->messageRate[6] + p->messageRate[7]); + msgRateAccumulate += p->messageRate; p = p->next; } diff --git a/status.o.REMOVED.git-id b/status.o.REMOVED.git-id index 301bdea..f8fd904 100644 --- a/status.o.REMOVED.git-id +++ b/status.o.REMOVED.git-id @@ -1 +1 @@ -73f15d7f49718ad2118fa30449dffa3f088a20bd \ No newline at end of file +7626e2885663816ca0afea4b99f4464dbaa595f7 \ No newline at end of file diff --git a/structs.h b/structs.h index 9791424..2f3be7f 100644 --- a/structs.h +++ b/structs.h @@ -50,12 +50,13 @@ struct planeObj { uint32_t addr; // ICAO address char flight[16]; // Flight number unsigned char signalLevel[8]; // Last 8 Signal Amplitudes - double messageRate[8]; + double messageRate; int altitude; // Altitude int speed; // Velocity int track; // Angle of flight int vert_rate; // Vertical rate. time_t seen; // Time at which the last packet was received + time_t prev_seen; double lat, lon; // Coordinated obtained from CPR encoded data //history diff --git a/view1090.REMOVED.git-id b/view1090.REMOVED.git-id index a619b91..f0478ea 100644 --- a/view1090.REMOVED.git-id +++ b/view1090.REMOVED.git-id @@ -1 +1 @@ -cc7b8e99972e34a43bebde90a9679815d2219511 \ No newline at end of file +68fb7031fcec17eff186d2abd88b6bf9f0726707 \ No newline at end of file diff --git a/view1090.o.REMOVED.git-id b/view1090.o.REMOVED.git-id index 743b1f9..66035d0 100644 --- a/view1090.o.REMOVED.git-id +++ b/view1090.o.REMOVED.git-id @@ -1 +1 @@ -6a3d6fb29439db4b118b48c859c390d687566a2d \ No newline at end of file +56d4666551743e2bb5da41ccce658ff2be58cdf2 \ No newline at end of file