From 37c22bd963667d9884312988d2d44ebd24897c10 Mon Sep 17 00:00:00 2001 From: Chris Teubert Date: Tue, 5 May 2015 11:11:35 -0700 Subject: [PATCH 01/28] Added prototypes for functions not in header --- C/src/xplaneConnect.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/C/src/xplaneConnect.c b/C/src/xplaneConnect.c index 98be7f5f..24234e75 100755 --- a/C/src/xplaneConnect.c +++ b/C/src/xplaneConnect.c @@ -48,8 +48,10 @@ #include #include - - +int sendUDP(XPCSocket sock, char buffer[], int len); +int readUDP(XPCSocket sock, char buffer[], int len); +int sendDREFRequest(XPCSocket sock, const char* drefs[], unsigned char count); +int getDREFResponse(XPCSocket sock, float* values[], unsigned char count, int sizes[]); void printError(char *functionName, char *format, ...) { From 5b7fc9fb146ba7b2bdcb5a93b240faa5d2310d6d Mon Sep 17 00:00:00 2001 From: Chris Teubert Date: Tue, 5 May 2015 11:12:40 -0700 Subject: [PATCH 02/28] Removed comma at end of enum --- xpcPlugin/DataManager.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xpcPlugin/DataManager.h b/xpcPlugin/DataManager.h index 74010d22..9eab1e86 100644 --- a/xpcPlugin/DataManager.h +++ b/xpcPlugin/DataManager.h @@ -133,7 +133,7 @@ namespace XPC DREF_MP4Alt, DREF_MP5Alt, DREF_MP6Alt, - DREF_MP7Alt, + DREF_MP7Alt }; /// Maps X-Plane dataref lines to XPC DREF values. From ed16227103414c547f94f75d7bab4294238f3a93 Mon Sep 17 00:00:00 2001 From: Chris Teubert Date: Tue, 5 May 2015 11:13:12 -0700 Subject: [PATCH 03/28] Changed mac C++ compiler to 98 --- xpcPlugin/xpcPlugin.xcodeproj/project.pbxproj | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/xpcPlugin/xpcPlugin.xcodeproj/project.pbxproj b/xpcPlugin/xpcPlugin.xcodeproj/project.pbxproj index 3c800156..a7c37d57 100755 --- a/xpcPlugin/xpcPlugin.xcodeproj/project.pbxproj +++ b/xpcPlugin/xpcPlugin.xcodeproj/project.pbxproj @@ -207,7 +207,8 @@ D607B16309A5563100699BC3 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + CLANG_CXX_LANGUAGE_STANDARD = "c++98"; CLANG_CXX_LIBRARY = "libc++"; CONFIGURATION_BUILD_DIR = ./XPlaneConnect; DYLIB_COMPATIBILITY_VERSION = ""; @@ -246,7 +247,7 @@ PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = YES; PRODUCT_NAME = "${TARGET_NAME}"; SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = NO; - SDKROOT = macosx10.8; + SDKROOT = macosx; SYMROOT = build; XPSDK_ROOT = SDK; }; @@ -255,7 +256,8 @@ D607B16409A5563100699BC3 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + CLANG_CXX_LANGUAGE_STANDARD = "c++98"; CLANG_CXX_LIBRARY = "libc++"; CONFIGURATION_BUILD_DIR = ./Mac; DYLIB_COMPATIBILITY_VERSION = ""; @@ -293,7 +295,7 @@ PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = YES; PRODUCT_NAME = "${TARGET_NAME}"; SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = NO; - SDKROOT = macosx10.8; + SDKROOT = macosx; SYMROOT = build; XPSDK_ROOT = SDK; }; @@ -331,6 +333,7 @@ ); MACH_O_TYPE = mh_bundle; PRODUCT_NAME = mac; + SDKROOT = macosx; STRIP_INSTALLED_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = XPC; @@ -368,7 +371,9 @@ "$(USER_LIBRARY_DIR)/Developer/Xcode/DerivedData/xplaneConnect-asdjuezcjkhojuewbyxhyhabxfwc/Build/Products/Debug", ); MACH_O_TYPE = mh_bundle; + ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = mac; + SDKROOT = macosx; STRIP_INSTALLED_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = XPC; From 8d5af7e47ee5a8c167fe197dd6b2ecb1015e45f6 Mon Sep 17 00:00:00 2001 From: Chris Teubert Date: Tue, 5 May 2015 11:13:19 -0700 Subject: [PATCH 04/28] Mac Binary --- xpcPlugin/XPlaneConnect/mac.xpl | Bin 145188 -> 126604 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/xpcPlugin/XPlaneConnect/mac.xpl b/xpcPlugin/XPlaneConnect/mac.xpl index 1e806491ba1d4afa761633c9b3561b2d36be98cb..c87728b990a69daeaa0316b44e3f9db323f3ee6c 100755 GIT binary patch literal 126604 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 z z%oj}Z#5dDRd=nG@+L-2loB4u;e;fUPBaiqdCjQcd3U+?Te8D77@!zF`J-&&F|2*@5 z&V0eb|A56eG4b7`7WftO1q)yHFC$FpH!<6p&==9F)!(Cmi_O2_&8%|wbNqrO z{^#fEaEafW0W)!|PuU$F4;x>q^jo0#|wm+SClc#xp{3l@Hd4))5=#Ka$EzRP^U zm$K1VhXhEc}&L{3fROw=w@?%oi+t?w-8*H?c}T^Z!=T&$wKEGKp zzKMzd;+2~J2j&YF{zX=POicXLCp7=qlXZRs3;zc?*sBi{6MyB^S|GrD!NQ+o@l8zp z9_HW6e8J`N&tiV(DLVavg+FY?Z(@r7Tg?AD^92ik!s45l_$zpT(T90Dx*i1!-;A#t zCrwQJFEanz%oqIk7&sMcPv0ZOaO9Cb6O+CRKdFM9lisJ(Bbelm#bG|L5#PkbzvMd2 z|9{LEEd15<1CBi6o0#~Ieo6&9-&wBX7fkXL|CkQ;_$DU)itDw&qivcmSomgtK=GTH z_;)h@f)$!CSor4iF7ZuF{OpZ7{!g}RzF^^-S_+|g0|6#sh;mbZ^go!Ws zHOSNZ^VWaR`9E~6#u3KHFusa$GvfysuV(x_>J0}w@Bkp zFkb#1jp=Vh|5Wmogw-$o=W~!Z@m;{?`~gv^Jl=k*mS2H^5Y>lZ3O^RdyLGU4J(!sI zr!YUve8IxM#p0Wo_)jzcL(CT}{CV^Pj=XOCF){Ifdz%V&zQBCJBv0u-R0n%}6BGYW z%zupef`$LnDy@Jp#cyKbKlue6{yXLi7XDLK{3a&;y(Y@dZa9f84?7Ke@eS89&7MGRBWEzJ~BTjEA`WeUb45;|B!S zQOtOs%=jwCzY^@%;gvmF-*(1t75rWuUI*+`n)IJ`3vaM6v8K8nHbFjO=o<$vc0C+? zhZdT5x~>nwq@T)@v*VSgiK#wL`LgC8$$Y`Wmwhb>Q+=A4__OcQ{P!|nu<$7jqs$j9{Mi;?@C4+ke{JIa@M^~A zF}{`YHpce>`&buw-==W1&+VNQljHoz3jdjfpR@3_O$@GSo?aF z%jXLSr~Xzj>8HA^(aHDf*TkxQd<8;q4>Er?W8s_658XIvV&czd`5!S~u<+}(dM|zx z6Ms4Lf5&{m!Z+h97XKRN&+60p7cBf*D}EDG{A0|25Ay{J-yAPf{3a&;3(W6lzF^_Y z{hl!K1#g8swa@#x{cU5slQGGg?c-*IM>sF!9o?Ug7XzE^<3V7bA^!sl+xmZva9Rr@ z>)kunYb@*2&txp?&A-Z6){8$5JP&+X|NUDIm-W_jFfnsf#e^g4r`I!<_0YF7mi5j5 zkMV5IM8^ir-^TcpjOQJ#GxIYz{wOr|%fXvL5s@#M*qSk|izFqZXW*D;p$U5_%B^;)ko zmi1Q+@7M9kda6OjvOekt#8 z9_gF#*5^FNcut!x?{r9qFJQc#v8;bNcR+{BdX~$>8q4~W@8e=6{j%QVs6mZoy~z1P zEFaMEeUq`Q=Xim!tj}m1*7DVSgWbYd)=zw$v8;!9Da!HTxrp4O=W8tM6>4G{%X))% z#Wj}o1FZ>-Wj(;ljOG3QOGzCr@9PiWtg*a*&!jb$_v!zg(OBM(zimWgdEb5HsK)aC z`sghh%lqg?bi7oa@_sowuKOE#U%UmFu9vx}CvulEmiL9*7|Z*=>ln-XyzPwT{oEHA z%lo!_7|Z*!uQQhSVc%vf@3;PyvAnPPF=KiE^dF4nebP&e<^9mCtvWyQzGog|d4F>R zV|gF*ZpQL{WijLXP%q?K7|Z*Q<&5QhM1--tU-%Ydd0+5fjAj1+trzI@$$b9%7|Z;8 znz78ce~z)tpZ_ysnGgSO#xlSCmJ79hnXi5?<6S&~;4+r^Z$7>$_g3|819PEc0uPAJkap%NAa)vCMzH?L!*NeAWt-8>PQ#yVkel z!x}%%xbh4Zj((%v#iY}jpjAguf3S$|64ltJSF>3^e_|}(PyCRv zd_VCk#-BQKBMcemGRw-*AhN>!nq1- zV#s}p@%(Cy|DEx9j8|Q&<)2}E2jlu#TK=$4>Tubw{2a#HIs9{seLO+_YlZQA#rTiF z^A66<&m44}#xg(i4#qM+b0Y9jkbi>bYnD>@yxjLOs~F4t;zq_Yzj!`lnP0q+vCQ{e z!&v5fZWGKCAm3mt^F7}a%=0_HVJ!1K&Zl(xw)1??5rX;o{Y2oS4#D>ZjC&dHWIW1v z7vt@W=daP_{~f{nLDqjVK7#Qd8T%L?f_|IgTg3Pn#`TO(VBE^Mp7C zxEJ^kBu(aH1{lly%4WtgUvdRwnSZ*DvCId34jAgHRAa@T`z`#4g@0_}-&yz-3(xs< zzWyUDe4K@wE!<(@^%hQA_~RD-jD^2s;lH==cP#uv3;)8x6*uJP?-&a=Yb?`KPC(;X zQr_2C_z4UD(ZX-LQN`!+n=E{>g&(uxYYvHRbOyee8FJAc{{MmfmW#LOL{51=I z&%zaWu~A{@Kif7`AD-@oX<*-|0;nTJJYzaTh!owPS{0l6+&BC`>{JSmuEerp^ z!p~Xw*B1UC3-7YC4UE6_)rVK&B8tlA8+AW3oo(osTN+TF`Bq`>nwbh zg+msOYwYD`%)*yi_(}`kV&VHN{0$2~Y~jZ({38oLZQxg%7sy zTP%E(g^#mvy@gvX+-Bi57Vfj~nHCOPIA-Cc)sC|a$H_QO!STH+$N4^vCvf}##}9G* z2*;B+evIQMIOtvJQ#gKx<7pf}$MFn~f5-7Gj{m^%9FAY$_$7}2#PKT}zsB(!9KXf! zUpRh;x-Pb_kC7 zI1a^e7!Dtfqj4OIV`!GAaWV{jagV-b!Mal8k|VjL&osKrr-qaKGJM+1&V98EZy zakSuAf}<73dvTnK<9#@m<7mUN0!KTJ4jcg-D{-vCu^LAwjx{(=!_kFfEsky+>u~ho zI2}hXjy@dyIM(Ah1IGp&a1&H62jVxqt2hD2Mty$yO#SWu_2+Zy*2AJ?rY@XyM+RVw zwyq-?hDEhRHdEJ=PM+_E@nd68yN>~W$3h9WJ()-#sBSD3)|RO1oUY_hZ8(+MTlxk@ zqOnL$f33zH?!d@U!P#{KDxD`KlIeITRyWq#5^QOzqXZ=#GO^!?3^W4z>pNlMGYad! zFv=-rrVGrc`h$KynI8*g)1hcK1M}XH^#_;294$<+W|L_;19N?KZK+f&iZfAI+pF6c zPDb3?P%2f2vdOCQ>u^Wi7|gS!>-v+)7*s|@uEQM+jl{CGW8tiX)Qx1)b+9T|S6f>b zO@w135w|Y?;_+aBlcm0Fpjv-E~97? z=KQ1Rp!U^u3v0%MTOwZT)jiNk>Z7viB1O~QszTYaajR*!c&Z&VU`N#Ijg*N{TqgZ_ zX7BfgLd!V&UQj6=@1Cfl-Andrc17V{%r2{x?B?v_qBEa#XOPLOc8~S!rSvSxxbCLp z;9!8v*?LB3)!9gtY{c%f>q}oEC`$7pnr<W>8T|I_kLrLs+FdSDo5VQ8v zE#gKr3mzDW#dxz{EpDc`@Umlj@SQzs_!nI2CPD)-7_}Yj+?Yv|dHiT5IG9Xt!6p$w z?9~9X&KMZ>2LplT(NGL~^Na?XXuFd@-_jud@4Ld3w4f|$*OkN&3@688LC@&2(MqtZ zNf6uQzzlLI9m4oO4dc0+N8CghTiT#N3P!;JGTtBbTNcLqgZ=f$cHfd<&uM*4!T7$* zYI0wXkAm79vTKwf_Nxh|LJ?(kJ2{d?aq6;L%85holxrT7lxiS=5`?+@p40k+eXaDL z%Gv8$1ASP?w9h(KZF1bq;T~OxYKtoSA*8P%h?as!s8#Llu!9|TQ`sOk>xj8c1!o#s z3QjfFQ|kKrq%YosaYP_r({yvH)ts@{64bxfG_~&yP4%#2AM_V&4uD!j6;f5~#aQg^ zmG*KZYI~`IE-ajj#oM!Mk6V@39QLeLc?sGhHEIf^t6>n^l(9|l{cEm95|x{;S;D8( zei1aXp-CL?ByIj=pKR@QLy?uR1+Q*XOV@Yw^eKbxs*UE+{Y}^!X>DjI8txv6W74aL zvL%pM4Shv|mLh1y$l&0lygr&H5cWc@PQ;u1Twc?q&wW093zKyjhK2g`8k z`r4(nnaCzJr6zM}vFN}iH=U@9Hnz6Z1=sbh7|*)v(in`_4)430>j-8j5v3c!E(&{X zrqn8OZ>)%ORSwdSArKA(X zbb3<|Y{f%V2v1x|InxxRR5YbR(RAl&kizpIy+8=aq@9e>_FBq&R*v@O-SAYpb~lwP ztW?qsxMXp>Zh3m$Ya=>_9lcft&8E~~wlUR`@X|rGI`xdN_A`C`8Qao6krhin#$| z1_JS3JgLqU6iV1DsHQ<|2&GF07AlLoAcER1)o+1yOZ6vep@M|0UI?ISyLA((a7lE&*?Y*5L)&+b+pjd6GeSa)c2 z-4wjTF6;gs2xE*(_gkZas6&j8r18HYm`n%5s6I+zXS^%k(i9*@&uOE29$F74N)Y_5 zd`V*`uV6jy`9Xh+-a?czQl5&Xh6?`@($UzkCpxenAao!*YAe%RI{dHm?X1YCqx7w- zV>-7kMVjK))j_weY4pe)lk~`YZD97g4`Lc{<568@dL)d!{cxWNZo!+C;3ju`W^^ON zBJZY68yTxI!onOZec~}rVA7k*zPq)Au|_~Y$ICk`?j+RX&R^tE6gL*?stRlTSZpqVpmc(RkU)JA38_w!gcQ_s6Yb*i_jGNFVC zfOZ=2V94F0W}3=+`joNGKp?PgpFYg*Z-t8&`1vEI&Nao0mmX>S^?Dv8n98QrT{!=d zUKc9lXu3u{`l#VW#KlSl49KuTL{AxPRP}`!z|>!K*_S{5`b+Nu-iX1^es-ZwGSHC= z?Jsv=ypM+uZ-Oy#=^=%ld&Q7qRoA)|ZC$}&XE0Q-(8ynKrlH_W;fkf^0vUgO;i)20 zg)5yJS__Dcg-K{E)YVw1tEoW^po+i5@#79i-}BIyEV<o7&E^*PBY#F{c##Sw7mt>)TLYCl^F;iW3K2BKwSk9q^UXCFef*JaY-I%f2xyf1o6#N0?TilV95Iwrtg*1xs02Ls2^!8ui-P< z_I2Ie&=DHRxOgw`U?FNE($Uu6=HTHr#J|+J-oQ!@#jjpkuA0d@!6B>}P&ku93wFH| z-j9qX^{ngb)W6#Md%N_n{=mk5{cFRSJ^kFy5}_fi4B4+fXVXnhCoI?6{C?wn-uG>} z1xR@^jaXlSk?fv*9M&_aSDUNe#7qILaq38pU@0e!mYb+j0=e(E@)FVt(Uq}eh*C4P zWD6ua(YQ*<`6+KoWm`HO8qdiixsxQq@7KC*LUb}hBNj~L6h|gen=dt3mQ;B$PM($g zID1Ov;B{&MOHe+m+)z3&IDp=&{4cHc#u6`@Gc{K~nGMtLN5W{C5Z&VfJ(E?5zX@XN z(ouZBslMx+T(T8{D`U7J1@b;WvFF|B3elHA&nUHD^|nbZHw7|YVbEGyoH0J@B57VS zg5}bU`ib#%TV7$NuIzOzv=#uaRHF8B8DOEtI+UO}A7q#MwBH%-NinDeBpp+xYwwpt zZ(mzpjO9HJndvAo^VvvWCgfT!wL^K2GWqfnAsG!kk7zV=Xh#z&en0X7*@8V86=^zpkds1Xo*GQ@DI76s{oJFS^62Uq$El zljU7ad(f+w=;SbkzSQXC%%yOXcXC29IysX_Z<*CX&+_{=d@9(A`rrM2=1p2Md(a!b zNprkMeb$>a&(m0l!xutf&sJVXvEOy>ewbpRRdK;kCKDaPy8gaZ)ZO@(V9vxHN@KOS zdIc3qWIG4+=xX=-fc-Ah&EXh52sd;1eN!OAK$*8V8V!>da1~*f@&xStwIGB>!S^oQMZ!om)Uua_$ zH`?x$EA(H#(Z%%I#GCY1Qu@VCZU_|&kBtR~V#xvYt|6Ka3`Xz*9=*U+uY3w$=M=t4 zDSRo@u%z%k&C-HXO@7q{(dF3H9Kn}y#;caDmUzLL44>&phql0E%zic-&56p*L@(iV z`WxD*-vPohahvmrE|O5!e> zF+RBM@-OLyEe5xYXd2ogk(>%zd(SUhl2NObiZQwx!|@cYC5Pd- zT&*|7GeaA5ue!PjpK0L6^w59-{q+bBD7z#0ZkrZ}skYOCvuA{2#uM>IpG zEIh0$(1X2h*o}_5+_noki6XCx3uKy{V0avZt4x1VT>~niet#Bb@!FFK81O;T>7^U?0D+6fN8u*+~fl-`8Cqz{Y2!&qM&ruO2d9lVCqUxDslRg+6ruA9kyqKd(usv~t( z7^nS3PkZ-Cx`uMn-rRNm=_axz5a=0>_Owz-h9VKVbLa~&M{eoEYs&s4uJhsel!D5d zKr)jJ7*e+FlfoDKEpNo@-VQg7<{8n33Nm$0JQNP1N#VWw897 zFLwIaQYNZ6cT(GU@Tza`8v>PvL7Ml0VNNqT!{ldaLzyPgUq54rP~L*?fvJ}cu^YJ8 z>@JGJ8AF7&310K%C|TewX^4>8JI^~z*Lcp1RX{3f(<&ep>Yt~HzBkNZp3zSCku^CZ z#_3)e%FN=_*4-!;_4vetT@2WaCp|g&=WfbLN}*siXACcb3 z8{j017x&szVv!Hdb8EuN{wRgbmQK19Y{t~gz8lpQsnOC6`1LciQ+oN(U%H)%5=--D zOwE`E+=Dq|x@C>qXs;Nx&et=}H)Cohlrjw&zkZi~`2(WA^e*6y82s#K_lZdcIx_=f zZxNN)5BQ6>N?CeH;XPoP>yH0y%w>3QD)T`-K)VXRlB zovvvIy)rl9p41RYo*jzfjdaE$gt@`Fy}Bx}C#Dcey}G1TA$!p(#*9S>u@9o&y#9q+ zgxKwA4YL)Nn3j-l++N=gEFR>W%s2t1)EA zXDnBn+N{C!Cdc->hEd`b(2RA4P)zNgs7yK-jl*2yMk_3zP}iEw?8K@ zOnYIm?13c{JGycTxG+hDMczU~tNuRuZgUSl%~ggea+;?5og38TeNA5C6Z8Hv_FB^W z_nM~my`iaISuATB2+>4+G>NHtHx%y-D_h2@()MC3jU3DC6bTk$V8X%Au@uP)CONcy z>^*LOUUS%k_J<3?OVA#vQELpn{R!mms?5-oVV0)A=7>_))i7upr`a9DMqUE;PeV6d zmPr-9lNNr)_9oapLyCGjc6)ZymW2-&&wV|6ftx#!25>jYZNQcAp6{VUJ$cPijh||D`lfXz4D3C+fC(@IqC>J(anl>cU zF_^mPN`{pk?DYwlB#Q)l-ONZFrj87o0Mpv5c}X}KPleLh{qHnw>5DB4&<7^^R)9MJ z-V9^;Ts)pkbSfK}G;^CBPA9hnvH9{4Ho0|a_YwZYoE5Yv>s9Vj>?;x+427|GLvMFq zeXt?QeHM$g;(kUExh+F(7L`aYifV2Z<;r`6i zQkHfz(XB|9E;yN#nvSX^Q01nvcenYC&-6CmUYZ)g3j<}}ZO_xy?x%gcoAd45PbY)+ zYw2mV)lgqyYV7e!v33v;TQM@WD32uO5x8RQF-y^yTCi14Ha$+|h8M%;WaaMA?b0fX zJ4q(JF;>y^PAjHZCV-v|JNh(qPb>~vp`QcZ;OR; z*<%@W+St=&y6n^lu}_;8eQ9Pmxg{P-j8CuZJ&P#2SJ~FAVski)(M@MK;N8}=x|T5R zj)|ndAv2DFNIZx=xWb$K{=sxI9wcLd!EC@R@S@_439C|zN-fPMMI*JNdhC;`B2cC| zJF%FH&b3BH(rQzk&M`E#X7#(XE9MX2s8}XRX>1&(1_ya9(jzwM8?auRs7uQW<2NJc8_8Iz?=~1EOmg{2jr3)gV#pVd zCPGZf5?CW^)d+vY)P zh#1@qCbeXqRkZRFCO44&>2SHn?YE4ll~wd!#M2^A9rM%`SR&>UNPH-^3OgIR*!|x@j`li6#;X;zAgUlATV42Ji@y2!=z-`lvny6PmdbL$KMLf-T2n zA{2{e$AhEw#EiS~aB4gl9)?L%G`1|v1{1)DK1v;!ab{>Fl*W@1ok}M>&H$cOVC>Y5 z#_-&vb|NIxr+7}oADqz%9OQt(!5GG_PH-?D8iV#hT+HOrPKNN*HizI0;;w;_?cf%A zD8)8|u@#gv`q7?@CDV-%8Hxoc+MyVp3sDGk3MP89!9?@CS7Y@e7Yz5TOF5B&Z*$as5LDX~9vi WtVUT|WIPsu_{czzDg5({!2sv From 2c2e4c267489a2ebd1902967c132716465930ab6 Mon Sep 17 00:00:00 2001 From: oberion Date: Wed, 27 Jan 2016 13:10:29 +0100 Subject: [PATCH 05/28] [xDATA]: fix non working Data gathering functions in MATLAB. Matlab does not know the istrue() function. Further the java readData() function was misspelled. --- MATLAB/+XPlaneConnect/readDATA.m | 4 ++-- MATLAB/+XPlaneConnect/selectDATA.m | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/MATLAB/+XPlaneConnect/readDATA.m b/MATLAB/+XPlaneConnect/readDATA.m index 80f888ef..1667c713 100644 --- a/MATLAB/+XPlaneConnect/readDATA.m +++ b/MATLAB/+XPlaneConnect/readDATA.m @@ -37,7 +37,7 @@ %% Get client global clients; if ~exist('socket', 'var') - assert(istrue(length(clients) < 2), '[readDATA] ERROR: Multiple clients open. You must specify which client to use.'); + assert(isequal((length(clients) < 2),1), '[readDATA] ERROR: Multiple clients open. You must specify which client to use.'); if isempty(clients) socket = openUDP(); else @@ -46,7 +46,7 @@ end %% Get data -result.raw = socket.readDATA(); +result.raw = socket.readData(); %% Format data rows = (length(result.raw) - 5) / 9; diff --git a/MATLAB/+XPlaneConnect/selectDATA.m b/MATLAB/+XPlaneConnect/selectDATA.m index dc54fdc3..47293f28 100644 --- a/MATLAB/+XPlaneConnect/selectDATA.m +++ b/MATLAB/+XPlaneConnect/selectDATA.m @@ -19,7 +19,7 @@ function selectDATA( rows, socket ) %% Get client global clients; if ~exist('socket', 'var') - assert(istrue(length(clients) < 2), '[selectDATA] ERROR: Multiple clients open. You must specify which client to use.'); + assert(isequal((length(clients) < 2),1), '[selectDATA] ERROR: Multiple clients open. You must specify which client to use.'); if isempty(clients) socket = openUDP(); else From cfdd183214322e058c87a062220652c90af4ac72 Mon Sep 17 00:00:00 2001 From: Chris Teubert Date: Mon, 29 Feb 2016 12:48:30 -0800 Subject: [PATCH 06/28] Merge branch 'master' into develop # Conflicts: # xpcPlugin/XPlaneConnect/mac.xpl # xpcPlugin/xpcPlugin.xcodeproj/project.pbxproj --- C/monitorExample/main.c | 101 ++ C/monitorExample/monitorExample.sln | 22 + C/monitorExample/monitorExample.vcxproj | 79 ++ .../monitorExample.vcxproj.filters | 25 + C/playbackExample/src/chrome.c | 71 ++ C/playbackExample/src/chrome.h | 40 + C/playbackExample/src/main.c | 70 ++ C/playbackExample/src/playback.c | 106 ++ C/playbackExample/src/playback.h | 32 + C/playbackExample/win/playbackExample.sln | 22 + C/playbackExample/win/playbackExample.vcxproj | 89 ++ .../win/playbackExample.vcxproj.filters | 42 + C/src/xplaneConnect.c | 155 ++- C/src/xplaneConnect.h | 64 +- Docs/Capability Matrix.xlsx | Bin 29406 -> 0 bytes Docs/Interface Control Document.xlsx | Bin 155106 -> 0 bytes Docs/PBS.pdf | Bin 78989 -> 0 bytes Java/Examples/ContinuousOperation/.idea/.name | 1 + .../ContinuousOperation/.idea/compiler.xml | 22 + .../.idea/copyright/profiles_settings.xml | 3 + .../.idea/libraries/XPlaneConnect.xml | 9 + .../ContinuousOperation/.idea/misc.xml | 19 + .../ContinuousOperation/.idea/modules.xml | 8 + .../ContinuousOperation/.idea/vcs.xml | 6 + .../ContinuousOperation.iml | 12 + .../libs/XPlaneConnect.jar | Bin 0 -> 8657 bytes .../ContinuousOperation/src/Main.java | 47 + Java/Examples/Playback/.idea/compiler.xml | 22 + .../.idea/copyright/profiles_settings.xml | 3 + Java/Examples/Playback/.idea/description.html | 1 + .../.idea/libraries/XPlaneConnect.xml | 9 + Java/Examples/Playback/.idea/misc.xml | 12 + Java/Examples/Playback/.idea/modules.xml | 8 + .../Playback/.idea/project-template.xml | 3 + Java/Examples/Playback/.idea/vcs.xml | 6 + Java/Examples/Playback/Playback.iml | 12 + .../Playback/src/gov/nasa/xpc/Main.java | 147 +++ Java/src/ViewType.java | 60 + Java/src/XPlaneConnect.java | 185 ++- MATLAB/+XPlaneConnect/XPlaneConnect.jar | Bin 6821 -> 8679 bytes MATLAB/+XPlaneConnect/closeUDP.m | 6 +- MATLAB/+XPlaneConnect/getCTRL.m | 29 + MATLAB/+XPlaneConnect/getPOSI.m | 29 + MATLAB/+XPlaneConnect/openUDP.m | 3 +- MATLAB/+XPlaneConnect/sendDREF.m | 34 +- MATLAB/+XPlaneConnect/sendDREFs.m | 37 + MATLAB/+XPlaneConnect/sendVIEW.m | 35 + MATLAB/Example/Example.m | 26 +- MATLAB/MonitorExample/MonitorExample.m | 19 + MATLAB/PlaybackExample/MyRecording.txt | 100 ++ MATLAB/PlaybackExample/Playback.m | 36 + MATLAB/PlaybackExample/Record.m | 34 + Python/src/{example.py => basicExample.py} | 0 Python/src/monitorExample.py | 16 + Python/src/playbackExample.py | 82 ++ Python/src/xpc.py | 143 ++- Python/xplaneConnect.pyproj | 10 +- README.md | 2 +- TestScripts/C Tests.win/CTests.vcxproj | 11 + .../C Tests.win/CTests.vcxproj.filters | 30 + TestScripts/C Tests.xcodeproj/project.pbxproj | 24 + TestScripts/C Tests/CtrlTests.h | 188 +++ TestScripts/C Tests/DataTests.h | 62 + TestScripts/C Tests/DrefTests.h | 247 ++++ TestScripts/C Tests/PosiTests.h | 158 +++ TestScripts/C Tests/SimuTests.h | 81 ++ TestScripts/C Tests/Test.c | 51 + TestScripts/C Tests/Test.h | 25 + TestScripts/C Tests/TextTests.h | 32 + TestScripts/C Tests/UDPTests.h | 55 + TestScripts/C Tests/ViewTests.h | 73 ++ TestScripts/C Tests/WyptTests.h | 42 + TestScripts/C Tests/main.c | 1088 +---------------- TestScripts/Java Tests/XPlaneConnectTest.java | 75 ++ TestScripts/MATLAB Tests/getCTRLTest.m | 15 + TestScripts/MATLAB Tests/getPOSITest.m | 17 + .../{CTRLTest.m => sendCTRLTest.m} | 2 +- .../{POSITest.m => sendPOSITest.m} | 2 +- TestScripts/MATLAB Tests/sendVIEWTest.m | 26 + TestScripts/MATLAB Tests/tests.m | 12 +- TestScripts/Python Tests/Tests.py | 97 +- xpcPlugin/CMakeLists.txt | 2 - xpcPlugin/DataManager.cpp | 363 +++--- xpcPlugin/DataManager.h | 31 +- xpcPlugin/Drawing.cpp | 92 +- xpcPlugin/Drawing.h | 8 +- xpcPlugin/Log.cpp | 95 +- xpcPlugin/Log.h | 58 +- xpcPlugin/Message.cpp | 181 ++- xpcPlugin/Message.h | 26 +- xpcPlugin/MessageHandlers.cpp | 407 +++--- xpcPlugin/MessageHandlers.h | 46 +- xpcPlugin/UDPSocket.cpp | 66 +- xpcPlugin/UDPSocket.h | 24 +- xpcPlugin/XPCPlugin.cpp | 142 +-- xpcPlugin/XPlaneConnect/64/lin.xpl | Bin 405950 -> 271892 bytes xpcPlugin/XPlaneConnect/64/win.xpl | Bin 1154560 -> 314368 bytes xpcPlugin/XPlaneConnect/lin.xpl | Bin 370446 -> 251774 bytes xpcPlugin/XPlaneConnect/win.xpl | Bin 897024 -> 268800 bytes xpcPlugin/xpcPlugin.xcodeproj/project.pbxproj | 12 +- 100 files changed, 4216 insertions(+), 1904 deletions(-) create mode 100644 C/monitorExample/main.c create mode 100644 C/monitorExample/monitorExample.sln create mode 100644 C/monitorExample/monitorExample.vcxproj create mode 100644 C/monitorExample/monitorExample.vcxproj.filters create mode 100644 C/playbackExample/src/chrome.c create mode 100644 C/playbackExample/src/chrome.h create mode 100644 C/playbackExample/src/main.c create mode 100644 C/playbackExample/src/playback.c create mode 100644 C/playbackExample/src/playback.h create mode 100644 C/playbackExample/win/playbackExample.sln create mode 100644 C/playbackExample/win/playbackExample.vcxproj create mode 100644 C/playbackExample/win/playbackExample.vcxproj.filters delete mode 100644 Docs/Capability Matrix.xlsx delete mode 100644 Docs/Interface Control Document.xlsx delete mode 100644 Docs/PBS.pdf create mode 100644 Java/Examples/ContinuousOperation/.idea/.name create mode 100644 Java/Examples/ContinuousOperation/.idea/compiler.xml create mode 100644 Java/Examples/ContinuousOperation/.idea/copyright/profiles_settings.xml create mode 100644 Java/Examples/ContinuousOperation/.idea/libraries/XPlaneConnect.xml create mode 100644 Java/Examples/ContinuousOperation/.idea/misc.xml create mode 100644 Java/Examples/ContinuousOperation/.idea/modules.xml create mode 100644 Java/Examples/ContinuousOperation/.idea/vcs.xml create mode 100644 Java/Examples/ContinuousOperation/ContinuousOperation.iml create mode 100644 Java/Examples/ContinuousOperation/libs/XPlaneConnect.jar create mode 100644 Java/Examples/ContinuousOperation/src/Main.java create mode 100644 Java/Examples/Playback/.idea/compiler.xml create mode 100644 Java/Examples/Playback/.idea/copyright/profiles_settings.xml create mode 100644 Java/Examples/Playback/.idea/description.html create mode 100644 Java/Examples/Playback/.idea/libraries/XPlaneConnect.xml create mode 100644 Java/Examples/Playback/.idea/misc.xml create mode 100644 Java/Examples/Playback/.idea/modules.xml create mode 100644 Java/Examples/Playback/.idea/project-template.xml create mode 100644 Java/Examples/Playback/.idea/vcs.xml create mode 100644 Java/Examples/Playback/Playback.iml create mode 100644 Java/Examples/Playback/src/gov/nasa/xpc/Main.java create mode 100644 Java/src/ViewType.java create mode 100644 MATLAB/+XPlaneConnect/getCTRL.m create mode 100644 MATLAB/+XPlaneConnect/getPOSI.m create mode 100644 MATLAB/+XPlaneConnect/sendDREFs.m create mode 100644 MATLAB/+XPlaneConnect/sendVIEW.m create mode 100644 MATLAB/MonitorExample/MonitorExample.m create mode 100644 MATLAB/PlaybackExample/MyRecording.txt create mode 100644 MATLAB/PlaybackExample/Playback.m create mode 100644 MATLAB/PlaybackExample/Record.m rename Python/src/{example.py => basicExample.py} (100%) create mode 100644 Python/src/monitorExample.py create mode 100644 Python/src/playbackExample.py create mode 100644 TestScripts/C Tests/CtrlTests.h create mode 100644 TestScripts/C Tests/DataTests.h create mode 100644 TestScripts/C Tests/DrefTests.h create mode 100644 TestScripts/C Tests/PosiTests.h create mode 100644 TestScripts/C Tests/SimuTests.h create mode 100644 TestScripts/C Tests/Test.c create mode 100644 TestScripts/C Tests/Test.h create mode 100644 TestScripts/C Tests/TextTests.h create mode 100644 TestScripts/C Tests/UDPTests.h create mode 100644 TestScripts/C Tests/ViewTests.h create mode 100644 TestScripts/C Tests/WyptTests.h create mode 100644 TestScripts/MATLAB Tests/getCTRLTest.m create mode 100644 TestScripts/MATLAB Tests/getPOSITest.m rename TestScripts/MATLAB Tests/{CTRLTest.m => sendCTRLTest.m} (98%) rename TestScripts/MATLAB Tests/{POSITest.m => sendPOSITest.m} (96%) create mode 100644 TestScripts/MATLAB Tests/sendVIEWTest.m diff --git a/C/monitorExample/main.c b/C/monitorExample/main.c new file mode 100644 index 00000000..b9f7c439 --- /dev/null +++ b/C/monitorExample/main.c @@ -0,0 +1,101 @@ +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +// +// DISCLAIMERS +// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, +// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT +// THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY +// THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, +// WILL CONFORM TO THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN +// ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, +// HARDWARE, SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT +// SOFTWARE. FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING +// THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." +// +// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES +// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF +// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, EXPENSES +// OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING +// FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE +// UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT, +// TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER SHALL BE THE +// IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. + +#include "../src/xplaneConnect.h" +#include +#include "stdio.h" + +#ifdef WIN32 +HANDLE hStdIn = NULL; +INPUT_RECORD buffer; +int waitForInput() +{ + if (hStdIn == NULL) + { + hStdIn = GetStdHandle(STD_INPUT_HANDLE); + } + FlushConsoleInputBuffer(hStdIn); + DWORD result = WaitForSingleObject(hStdIn, 100); + if (result == WAIT_OBJECT_0) + { + DWORD eventsRead; + PeekConsoleInput(hStdIn, &buffer, 1, &eventsRead); + if (eventsRead > 0) + { + return buffer.EventType == KEY_EVENT; + } + } + return FALSE; +} +#else +int fdstdin = 0; +fd_set fds; +struct timeval tv; + +int waitForInput() +{ + + FD_ZERO(&fds); + FD_SET(fdstdin, &fds); + select(1, &fds, NULL, NULL, &tv); + return FD_ISSET(fdstdin, &fds); +} +#endif + +int main(void) +{ + XPCSocket client = openUDP("127.0.0.1"); + const int aircraftNum = 0; + tv.tv_usec = 100 * 1000; + while (1) + { + float posi[7]; + int result = getPOSI(client, posi, aircraftNum); + if (result < 0) // Error in getPOSI + { + break; + } + + float ctrl[7]; + result = getCTRL(client, ctrl, aircraftNum); + if (result < 0) // Error in getCTRL + { + break; + } + + printf("Loc: (%4f, %4f, %4f) Aileron:%2f Elevator:%2f Rudder:%2f\n", + posi[0], posi[1], posi[2], ctrl[1], ctrl[0], ctrl[2]); + + // Check if any key has been pressed and break + if (waitForInput()) + { + break; + } + } + + + printf("\n\nPress Any Key to exit..."); + getchar(); + return 0; +} \ No newline at end of file diff --git a/C/monitorExample/monitorExample.sln b/C/monitorExample/monitorExample.sln new file mode 100644 index 00000000..11435f79 --- /dev/null +++ b/C/monitorExample/monitorExample.sln @@ -0,0 +1,22 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.31101.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "monitorExample", "monitorExample.vcxproj", "{0F45204B-6910-46C7-BECD-273985390F75}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {0F45204B-6910-46C7-BECD-273985390F75}.Debug|Win32.ActiveCfg = Debug|Win32 + {0F45204B-6910-46C7-BECD-273985390F75}.Debug|Win32.Build.0 = Debug|Win32 + {0F45204B-6910-46C7-BECD-273985390F75}.Release|Win32.ActiveCfg = Release|Win32 + {0F45204B-6910-46C7-BECD-273985390F75}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/C/monitorExample/monitorExample.vcxproj b/C/monitorExample/monitorExample.vcxproj new file mode 100644 index 00000000..3be8e308 --- /dev/null +++ b/C/monitorExample/monitorExample.vcxproj @@ -0,0 +1,79 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + + {0F45204B-6910-46C7-BECD-273985390F75} + monitorExample + + + + Application + true + v120 + MultiByte + + + Application + false + v120 + true + MultiByte + + + + + + + + + + + + + ../src;$(IncludePath) + + + ../src;$(IncludePath) + + + + Level3 + Disabled + true + _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + + + true + + + + + Level3 + MaxSpeed + true + true + true + + + true + true + true + + + + + + + + + + \ No newline at end of file diff --git a/C/monitorExample/monitorExample.vcxproj.filters b/C/monitorExample/monitorExample.vcxproj.filters new file mode 100644 index 00000000..50a53c3e --- /dev/null +++ b/C/monitorExample/monitorExample.vcxproj.filters @@ -0,0 +1,25 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/C/playbackExample/src/chrome.c b/C/playbackExample/src/chrome.c new file mode 100644 index 00000000..652de969 --- /dev/null +++ b/C/playbackExample/src/chrome.c @@ -0,0 +1,71 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +// +//DISCLAIMERS +// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, +// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT +// THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY +// THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, +// WILL CONFORM TO THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN +// ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, +// HARDWARE, SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT +// SOFTWARE. FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING +// THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." +// +// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES +// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF +// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, EXPENSES +// OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING +// FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE +// UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT, +// TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER SHALL BE THE +// IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. + +#include "chrome.h" + +#include + +void displayStart(char* version) +{ + printf("X-Plane Connect Playback Example [Version %s]\n", version); + printf("(c) 2013-2015 United States Government as represented by the Administrator\n"); + printf("of the National Aeronautics and Space Administration. All Rights Reserved.\n"); +} + +int displayMenu(char* title, char* opts[], size_t count) +{ + printf("\n"); + printf("+---------------------------------------------- +\n"); + printf("| %-42s |\n", title); + printf("+---------------------------------------------- +\n"); + for (size_t i = 0; i < count; i++) + { + printf("| %2u. %-40s |\n", i + 1, opts[i]); + } + printf("+---------------------------------------------- +\n"); + printf("Please select an option: "); + + int opt; + scanf("%d", &opt); + return opt; +} + +void displayMsg(char* msg) +{ + printf("%s\n", msg); +} + +void getString(char* prompt, char buffer[255]) +{ + printf("%s: ", prompt); + scanf("%255s", buffer); +} + +int getInt(char* prompt) +{ + printf("%s: ", prompt); + int result; + scanf("%d", &result); + return result; +} \ No newline at end of file diff --git a/C/playbackExample/src/chrome.h b/C/playbackExample/src/chrome.h new file mode 100644 index 00000000..d0da842c --- /dev/null +++ b/C/playbackExample/src/chrome.h @@ -0,0 +1,40 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +// +//DISCLAIMERS +// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, +// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT +// THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY +// THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, +// WILL CONFORM TO THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN +// ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, +// HARDWARE, SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT +// SOFTWARE. FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING +// THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." +// +// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES +// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF +// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, EXPENSES +// OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING +// FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE +// UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT, +// TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER SHALL BE THE +// IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. + +#ifndef XPC_PLAYBACKEX_CHROME_H_ +#define XPC_PLAYBACKEX_CHROME_H_ + +#include + +void displayStart(char* version); + +int displayMenu(char* title, char* opts[], size_t count); + +void displayMsg(char* msg); + +void getString(char* prompt, char buffer[255]); + +int getInt(char* prompt); + +#endif \ No newline at end of file diff --git a/C/playbackExample/src/main.c b/C/playbackExample/src/main.c new file mode 100644 index 00000000..c796eddd --- /dev/null +++ b/C/playbackExample/src/main.c @@ -0,0 +1,70 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +// +//DISCLAIMERS +// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, +// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT +// THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY +// THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, +// WILL CONFORM TO THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN +// ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, +// HARDWARE, SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT +// SOFTWARE. FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING +// THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." +// +// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES +// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF +// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, EXPENSES +// OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING +// FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE +// UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT, +// TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER SHALL BE THE +// IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. + +#include "chrome.h" +#include "playback.h" + +int main(void) +{ + char* mainOpts[3] = + { + "Record X-Plane", + "Playback File", + "Exit" + }; + char path[256] = { 0 }; + + displayStart("1.2.0.0"); + while (1) + { + switch (displayMenu("What would you like to do?", mainOpts, 3)) + { + case 1: + { + getString("Enter save file path", path); + int interval = getInt("Enter interval between frames (milliseconds)"); + int duration = getInt("Enter duration to record for (seconds)"); + + record(path, interval, duration); + break; + } + case 2: + { + getString("Enter path to saved playback file", path); + int interval = getInt("Enter interval between frames (milliseconds)"); + + playback(path, interval); + break; + } + case 3: + displayMsg("Exiting."); + return 0; + default: + displayMsg("Unrecognized option."); + break; + } + } + + return 0; +} \ No newline at end of file diff --git a/C/playbackExample/src/playback.c b/C/playbackExample/src/playback.c new file mode 100644 index 00000000..75ad5235 --- /dev/null +++ b/C/playbackExample/src/playback.c @@ -0,0 +1,106 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +// +//DISCLAIMERS +// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, +// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT +// THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY +// THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, +// WILL CONFORM TO THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN +// ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, +// HARDWARE, SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT +// SOFTWARE. FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING +// THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." +// +// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES +// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF +// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, EXPENSES +// OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING +// FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE +// UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT, +// TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER SHALL BE THE +// IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. + +#include "playback.h" + +#include "chrome.h" + +#include "xplaneConnect.h" + +#include +#include + +#ifdef WIN32 +#include +#else +#include +#endif + +void playbackSleep(int ms) +{ +#ifdef WIN32 + Sleep(ms); +#else + usleep(ms * 1000); +#endif +} + +void record(char* path, int interval, int duration) +{ + FILE* fd = fopen(path, "w"); + int count = duration * 1000 / interval; + if (!fd) + { + displayMsg("Unable to open output file."); + return; + } + if (count < 1) + { + displayMsg("Duration is less than one iteration."); + return; + } + displayMsg("Recording..."); + + XPCSocket sock = openUDP("127.0.0.1"); + for (int i = 0; i < count; ++i) + { + float posi[7]; + int result = getPOSI(sock, posi, 0); + playbackSleep(interval); + if (result < 0) + { + continue; + } + fprintf(fd, "%f, %f, %f, %f, %f, %f, %f\n", posi[0], posi[1], posi[2], posi[3], posi[4], posi[5], posi[6]); + } + closeUDP(sock); + displayMsg("Recording Complete"); +} + +void playback(char* path, int interval) +{ + FILE* fd = fopen(path, "r"); + if (!fd) + { + displayMsg("Unable to open output file."); + return; + } + displayMsg("Starting Playback..."); + + XPCSocket sock = openUDP("127.0.0.1"); + float posi[7]; + while (!feof(fd) && !ferror(fd)) + { + int result = fscanf(fd, "%f, %f, %f, %f, %f, %f, %f\n", + &posi[0], &posi[1], &posi[2], &posi[3], &posi[4], &posi[5], &posi[6]); + playbackSleep(interval); + if (result != 7) + { + continue; + } + sendPOSI(sock, posi, 7, 0); + } + closeUDP(sock); + displayMsg("Playback Complete"); +} \ No newline at end of file diff --git a/C/playbackExample/src/playback.h b/C/playbackExample/src/playback.h new file mode 100644 index 00000000..e54a3b11 --- /dev/null +++ b/C/playbackExample/src/playback.h @@ -0,0 +1,32 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +// +//DISCLAIMERS +// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, +// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT +// THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY +// THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, +// WILL CONFORM TO THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN +// ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, +// HARDWARE, SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT +// SOFTWARE. FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING +// THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." +// +// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES +// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF +// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, EXPENSES +// OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING +// FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE +// UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT, +// TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER SHALL BE THE +// IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. + +#ifndef XPC_PLAYBACKEX_PLAYBACK_H_ +#define XPC_PLAYBACKEX_PLAYBACK_H_ + +void record(char* path, int interval, int duration); + +void playback(char* path, int interval); + +#endif \ No newline at end of file diff --git a/C/playbackExample/win/playbackExample.sln b/C/playbackExample/win/playbackExample.sln new file mode 100644 index 00000000..18a4c814 --- /dev/null +++ b/C/playbackExample/win/playbackExample.sln @@ -0,0 +1,22 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.40629.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "playbackExample", "playbackExample.vcxproj", "{40781C32-3EE6-4B3C-A94F-E128BD41E21C}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {40781C32-3EE6-4B3C-A94F-E128BD41E21C}.Debug|Win32.ActiveCfg = Debug|Win32 + {40781C32-3EE6-4B3C-A94F-E128BD41E21C}.Debug|Win32.Build.0 = Debug|Win32 + {40781C32-3EE6-4B3C-A94F-E128BD41E21C}.Release|Win32.ActiveCfg = Release|Win32 + {40781C32-3EE6-4B3C-A94F-E128BD41E21C}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/C/playbackExample/win/playbackExample.vcxproj b/C/playbackExample/win/playbackExample.vcxproj new file mode 100644 index 00000000..a8adf8ab --- /dev/null +++ b/C/playbackExample/win/playbackExample.vcxproj @@ -0,0 +1,89 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + + {40781C32-3EE6-4B3C-A94F-E128BD41E21C} + playbackExample + + + + Application + true + v120 + MultiByte + + + Application + false + v120 + true + MultiByte + + + + + + + + + + + + + ../../src;../src;$(IncludePath) + ../../src;../src;$(SourcePath) + + + ../../src;../src;$(IncludePath) + ../../src;../src;$(SourcePath) + + + + Level3 + Disabled + true + _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + + + true + + + + + Level3 + MaxSpeed + true + true + true + _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + + + true + true + true + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/C/playbackExample/win/playbackExample.vcxproj.filters b/C/playbackExample/win/playbackExample.vcxproj.filters new file mode 100644 index 00000000..6a83f74f --- /dev/null +++ b/C/playbackExample/win/playbackExample.vcxproj.filters @@ -0,0 +1,42 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/C/src/xplaneConnect.c b/C/src/xplaneConnect.c index 24234e75..71533215 100755 --- a/C/src/xplaneConnect.c +++ b/C/src/xplaneConnect.c @@ -117,7 +117,7 @@ XPCSocket aopenUDP(const char *xpIP, unsigned short xpPort, unsigned short port) #else struct timeval timeout; timeout.tv_sec = 0; - timeout.tv_usec = 1000; + timeout.tv_usec = 250000; #endif if (setsockopt(sock.sock, SOL_SOCKET, SO_RCVTIMEO, (char*)&timeout, sizeof(timeout)) < 0) { @@ -367,33 +367,47 @@ int readDATA(XPCSocket sock, float data[][9], int rows) /**** DREF functions ****/ /*****************************************************************************/ int sendDREF(XPCSocket sock, const char* dref, float value[], int size) +{ + return sendDREFs(sock, &dref, &value, &size, 1); +} + +int sendDREFs(XPCSocket sock, const char* drefs[], float* values[], int sizes[], int count) { // Setup command - // 5 byte header + max 255 char dref name + max 255 values * 4 bytes per value = 1279 - unsigned char buffer[1279] = "DREF"; - int drefLen = strnlen(dref, 256); - if (drefLen > 255) - { - printError("setDREF", "dref length is too long. Must be less than 256 characters."); - return -1; - } - if (size > 255) + // Max size is technically unlimited. + unsigned char buffer[65536] = "DREF"; + int pos = 5; + for (int i = 0; i < count; ++i) { - printError("setDREF", "size is too big. Must be less than 256."); - return -2; - } - int len = 7 + drefLen + size * sizeof(float); - - // Copy dref to buffer - buffer[5] = (unsigned char)drefLen; - memcpy(buffer + 6, dref, drefLen); + int drefLen = strnlen(drefs[i], 256); + if (pos + drefLen + sizes[i] * 4 + 2 > 65536) + { + printError("sendDREF", "About to overrun the send buffer!"); + return -4; + } + if (drefLen > 255) + { + printError("sendDREF", "dref %d is too long. Must be less than 256 characters.", i); + return -1; + } + if (sizes[i] > 255) + { + printError("sendDREF", "size %d is too big. Must be less than 256.", i); + return -2; + } + // Copy dref to buffer + buffer[pos++] = (unsigned char)drefLen; + memcpy(buffer + pos, drefs[i], drefLen); + pos += drefLen; - // Copy values to buffer - buffer[6 + drefLen] = (unsigned char)size; - memcpy(buffer + 7 + drefLen, value, size * sizeof(float)); + // Copy values to buffer + buffer[pos++] = (unsigned char)sizes[i]; + memcpy(buffer + pos, values[i], sizes[i] * sizeof(float)); + pos += sizes[i] * sizeof(float); + } // Send command - if (sendUDP(sock, buffer, len) < 0) + if (sendUDP(sock, buffer, pos) < 0) { printError("setDREF", "Failed to send command"); return -3; @@ -508,6 +522,38 @@ int getDREFs(XPCSocket sock, const char* drefs[], float* values[], unsigned char /*****************************************************************************/ /**** POSI functions ****/ /*****************************************************************************/ +int getPOSI(XPCSocket sock, float values[7], char ac) +{ + // Setup send command + unsigned char buffer[6] = "GETP"; + buffer[5] = ac; + + // Send command + if (sendUDP(sock, buffer, 6) < 0) + { + printError("getPOSI", "Failed to send command."); + return -1; + } + + // Get response + unsigned char readBuffer[34]; + int readResult = readUDP(sock, readBuffer, 34); + if (readResult < 0) + { + printError("getPOSI", "Failed to read response."); + return -2; + } + if (readResult != 34) + { + printError("getPOSI", "Unexpected response length."); + return -3; + } + + // Copy response into values + memcpy(values, readBuffer + 6, 7 * sizeof(float)); + return 0; +} + int sendPOSI(XPCSocket sock, float values[], int size, char ac) { // Validate input @@ -552,6 +598,41 @@ int sendPOSI(XPCSocket sock, float values[], int size, char ac) /*****************************************************************************/ /**** CTRL functions ****/ /*****************************************************************************/ +int getCTRL(XPCSocket sock, float values[7], char ac) +{ + // Setup send command + unsigned char buffer[6] = "GETC"; + buffer[5] = ac; + + // Send command + if (sendUDP(sock, buffer, 6) < 0) + { + printError("getCTRL", "Failed to send command."); + return -1; + } + + // Get response + unsigned char readBuffer[31]; + int readResult = readUDP(sock, readBuffer, 31); + if (readResult < 0) + { + printError("getCTRL", "Failed to read response."); + return -2; + } + if (readResult != 31) + { + printError("getCTRL", "Unexpected response length."); + return -3; + } + + // Copy response into values + memcpy(values, readBuffer + 5, 4 * sizeof(float)); + values[4] = readBuffer[21]; + values[5] = *((float*)(readBuffer + 22)); + values[6] = *((float*)(readBuffer + 27)); + return 0; +} + int sendCTRL(XPCSocket sock, float values[], int size, char ac) { // Validate input @@ -672,7 +753,7 @@ int sendWYPT(XPCSocket sock, WYPT_OP op, float points[], int count) memcpy(buffer + 7, points, ptLen); // Send Command - if (sendUDP(sock, buffer, 40) < 0) + if (sendUDP(sock, buffer, 7 + 12 * count) < 0) { printError("sendWYPT", "Failed to send command"); return -2; @@ -682,3 +763,31 @@ int sendWYPT(XPCSocket sock, WYPT_OP op, float points[], int count) /*****************************************************************************/ /**** End Drawing functions ****/ /*****************************************************************************/ + +/*****************************************************************************/ +/**** View functions ****/ +/*****************************************************************************/ +int sendVIEW(XPCSocket sock, VIEW_TYPE view) +{ + // Validate Input + if (view < XPC_VIEW_FORWARDS || view > XPC_VIEW_FULLSCREENNOHUD) + { + printError("sendVIEW", "Unrecognized view"); + return -1; + } + + // Setup Command + char buffer[9] = "VIEW"; + *((int*)(buffer + 5)) = view; + + // Send Command + if (sendUDP(sock, buffer, 9) < 0) + { + printError("sendVIEW", "Failed to send command"); + return -2; + } + return 0; +} +/*****************************************************************************/ +/**** End View functions ****/ +/*****************************************************************************/ \ No newline at end of file diff --git a/C/src/xplaneConnect.h b/C/src/xplaneConnect.h index abcfd1fa..161178ad 100644 --- a/C/src/xplaneConnect.h +++ b/C/src/xplaneConnect.h @@ -61,6 +61,23 @@ typedef enum XPC_WYPT_DEL = 2, XPC_WYPT_CLR = 3 } WYPT_OP; + +typedef enum +{ + XPC_VIEW_FORWARDS = 73, + XPC_VIEW_DOWN, + XPC_VIEW_LEFT, + XPC_VIEW_RIGHT, + XPC_VIEW_BACK, + XPC_VIEW_TOWER, + XPC_VIEW_RUNWAY, + XPC_VIEW_CHASE, + XPC_VIEW_FOLLOW, + XPC_VIEW_FOLLOWWITHPANEL, + XPC_VIEW_SPOT, + XPC_VIEW_FULLSCREENWITHHUD, + XPC_VIEW_FULLSCREENNOHUD, +} VIEW_TYPE; // Low Level UDP Functions @@ -127,12 +144,26 @@ int sendDATA(XPCSocket sock, float data[][9], int rows); /// http://www.xsquawkbox.net/xpsdk/docs/DataRefs.html. The size of values should match /// the size given on that page. XPC currently sends all values as floats regardless of /// the type described on the wiki. This doesn't cause any data loss for most datarefs. +/// \param sock The socket to use to send the command. +/// \param dref The name of the dataref to set. +/// \param value An array of values representing the data to set. +/// \param size The number of elements in values. +/// \returns 0 if successful, otherwise a negative value. +int sendDREF(XPCSocket sock, const char* dref, float value[], int size); + +/// Sets the specified datarefs to the specified values. +/// +/// \details dref names and their associated data types can be found on the XPSDK wiki at +/// http://www.xsquawkbox.net/xpsdk/docs/DataRefs.html. The size of values should match +/// the size given on that page. XPC currently sends all values as floats regardless of +/// the type described on the wiki. This doesn't cause any data loss for most datarefs. /// \param sock The socket to use to send the command. -/// \param dref The name of the dataref to set. -/// \param values An array of values representing the data to set. -/// \param size The number of elements in values. +/// \param drefs The names of the datarefs to set. +/// \param values A multidimensional array containing the values for each dataref to set. +/// \param sizes The number of elements in each array in values +/// \param count The number of datarefs being set. /// \returns 0 if successful, otherwise a negative value. -int sendDREF(XPCSocket sock, const char* dref, float value[], int size); +int sendDREFs(XPCSocket sock, const char* drefs[], float* values[], int sizes[], int count); /// Gets the value of the specified dataref. /// @@ -165,6 +196,14 @@ int getDREFs(XPCSocket sock, const char* drefs[], float* values[], unsigned char // Position +/// Gets the position and orientation of the specified aircraft. +/// +/// \param sock The socket used to send the command and receive the response. +/// \param values An array to store the position information returned by the +/// plugin. The format of values is [Lat, Lon, Alt, Pitch, Roll, Yaw, Gear] +/// \returns 0 if successful, otherwise a negative value. +int getPOSI(XPCSocket sock, float values[7], char ac); + /// Sets the position and orientation of the specified aircraft. /// /// \param sock The socket to use to send the command. @@ -178,6 +217,16 @@ int sendPOSI(XPCSocket sock, float values[], int size, char ac); // Controls +/// Gets the control surface information for the specified aircraft. +/// +/// \param sock The socket used to send the command and receive the response. +/// \param values An array to store the position information returned by the +/// plugin. The format of values is [Elevator, Aileron, Rudder, +/// Throttle, Gear, Flaps, Speed Brakes] +/// \param ac The aircraft to set the control surfaces of. 0 is the main/player aircraft. +/// \returns 0 if successful, otherwise a negative value. +int getCTRL(XPCSocket sock, float values[7], char ac); + /// Sets the control surfaces of the specified aircraft. /// /// \param sock The socket to use to send the command. @@ -200,6 +249,13 @@ int sendCTRL(XPCSocket sock, float values[], int size, char ac); /// \returns 0 if successful, otherwise a negative value. int sendTEXT(XPCSocket sock, char* msg, int x, int y); +/// Sets the camera view in X-Plane. +/// +/// \param sock The socket to use to send the command. +/// \param view The view to use. +/// \returns 0 if successful, otherwise a negative value. +int sendVIEW(XPCSocket sock, VIEW_TYPE view); + /// Adds, removes, or clears a set of waypoints. If the command is clear, the points are ignored /// and all points are removed. /// diff --git a/Docs/Capability Matrix.xlsx b/Docs/Capability Matrix.xlsx deleted file mode 100644 index 4809af991c23adde213321e394d02fd0fb2ed798..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29406 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 Qh$jwf09ZljH2>Q_0dr(y7ytkO diff --git a/Docs/Interface Control Document.xlsx b/Docs/Interface Control Document.xlsx deleted file mode 100644 index c989b60bdaa0f23d2d4c006ea61efbf9e58a607d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155106 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 TKwyDC-QWpzcn$E|590p-ymZBR diff --git a/Docs/PBS.pdf b/Docs/PBS.pdf deleted file mode 100644 index cc5ad0553dcda80c71c6cce49548cefd6de5996d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 78989 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 diff --git a/Java/Examples/ContinuousOperation/.idea/.name b/Java/Examples/ContinuousOperation/.idea/.name new file mode 100644 index 00000000..9ac7aa61 --- /dev/null +++ b/Java/Examples/ContinuousOperation/.idea/.name @@ -0,0 +1 @@ +ContinuousOperation \ No newline at end of file diff --git a/Java/Examples/ContinuousOperation/.idea/compiler.xml b/Java/Examples/ContinuousOperation/.idea/compiler.xml new file mode 100644 index 00000000..96cc43ef --- /dev/null +++ b/Java/Examples/ContinuousOperation/.idea/compiler.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/ContinuousOperation/.idea/copyright/profiles_settings.xml b/Java/Examples/ContinuousOperation/.idea/copyright/profiles_settings.xml new file mode 100644 index 00000000..e7bedf33 --- /dev/null +++ b/Java/Examples/ContinuousOperation/.idea/copyright/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/Java/Examples/ContinuousOperation/.idea/libraries/XPlaneConnect.xml b/Java/Examples/ContinuousOperation/.idea/libraries/XPlaneConnect.xml new file mode 100644 index 00000000..da48fd95 --- /dev/null +++ b/Java/Examples/ContinuousOperation/.idea/libraries/XPlaneConnect.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/ContinuousOperation/.idea/misc.xml b/Java/Examples/ContinuousOperation/.idea/misc.xml new file mode 100644 index 00000000..a61f7bca --- /dev/null +++ b/Java/Examples/ContinuousOperation/.idea/misc.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/ContinuousOperation/.idea/modules.xml b/Java/Examples/ContinuousOperation/.idea/modules.xml new file mode 100644 index 00000000..0a1c2fec --- /dev/null +++ b/Java/Examples/ContinuousOperation/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/ContinuousOperation/.idea/vcs.xml b/Java/Examples/ContinuousOperation/.idea/vcs.xml new file mode 100644 index 00000000..6564d52d --- /dev/null +++ b/Java/Examples/ContinuousOperation/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Java/Examples/ContinuousOperation/ContinuousOperation.iml b/Java/Examples/ContinuousOperation/ContinuousOperation.iml new file mode 100644 index 00000000..6c4f0abc --- /dev/null +++ b/Java/Examples/ContinuousOperation/ContinuousOperation.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/ContinuousOperation/libs/XPlaneConnect.jar b/Java/Examples/ContinuousOperation/libs/XPlaneConnect.jar new file mode 100644 index 0000000000000000000000000000000000000000..eba5283b15fa5c42fbefe5574182eeb93a54c183 GIT binary patch literal 8657 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 literal 0 HcmV?d00001 diff --git a/Java/Examples/ContinuousOperation/src/Main.java b/Java/Examples/ContinuousOperation/src/Main.java new file mode 100644 index 00000000..61a14eb5 --- /dev/null +++ b/Java/Examples/ContinuousOperation/src/Main.java @@ -0,0 +1,47 @@ +package gov.nasa.xpc.ex; + +import gov.nasa.xpc.XPlaneConnect; + +import java.io.IOException; + +/** + * An example program demonstrating the use of X-PlaneConnect in a continuous loop. + * + * @author Jason Watkins + * @version 1.0 + * @since 2015-06-19 + */ +public class Main +{ + public static void main(String[] args) + { + try (XPlaneConnect xpc = new XPlaneConnect()) + { + int aircraft = 0; + while(true) + { + float[] posi = xpc.getPOSI(aircraft); + float[] ctrl = xpc.getCTRL(aircraft); + + System.out.format("Loc: (%4f, %4f, %4f) Aileron:%2f Elevator:%2f Rudder:%2f\n", + posi[0], posi[1], posi[2], ctrl[1], ctrl[0], ctrl[2]); + + try + { + Thread.sleep(100); + } + catch (InterruptedException ex) {} + + if(System.in.available() > 0) + { + break; + } + } + } + catch(IOException ex) + { + System.out.println("Error:"); + System.out.println(ex.getMessage()); + } + } +} diff --git a/Java/Examples/Playback/.idea/compiler.xml b/Java/Examples/Playback/.idea/compiler.xml new file mode 100644 index 00000000..96cc43ef --- /dev/null +++ b/Java/Examples/Playback/.idea/compiler.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/Playback/.idea/copyright/profiles_settings.xml b/Java/Examples/Playback/.idea/copyright/profiles_settings.xml new file mode 100644 index 00000000..e7bedf33 --- /dev/null +++ b/Java/Examples/Playback/.idea/copyright/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/Java/Examples/Playback/.idea/description.html b/Java/Examples/Playback/.idea/description.html new file mode 100644 index 00000000..db5f1295 --- /dev/null +++ b/Java/Examples/Playback/.idea/description.html @@ -0,0 +1 @@ +Simple Java application that includes a class with main() method \ No newline at end of file diff --git a/Java/Examples/Playback/.idea/libraries/XPlaneConnect.xml b/Java/Examples/Playback/.idea/libraries/XPlaneConnect.xml new file mode 100644 index 00000000..f0cda694 --- /dev/null +++ b/Java/Examples/Playback/.idea/libraries/XPlaneConnect.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/Playback/.idea/misc.xml b/Java/Examples/Playback/.idea/misc.xml new file mode 100644 index 00000000..5a65e9a6 --- /dev/null +++ b/Java/Examples/Playback/.idea/misc.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/Playback/.idea/modules.xml b/Java/Examples/Playback/.idea/modules.xml new file mode 100644 index 00000000..7ba8a90f --- /dev/null +++ b/Java/Examples/Playback/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/Playback/.idea/project-template.xml b/Java/Examples/Playback/.idea/project-template.xml new file mode 100644 index 00000000..1f08b887 --- /dev/null +++ b/Java/Examples/Playback/.idea/project-template.xml @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/Java/Examples/Playback/.idea/vcs.xml b/Java/Examples/Playback/.idea/vcs.xml new file mode 100644 index 00000000..6564d52d --- /dev/null +++ b/Java/Examples/Playback/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Java/Examples/Playback/Playback.iml b/Java/Examples/Playback/Playback.iml new file mode 100644 index 00000000..6c4f0abc --- /dev/null +++ b/Java/Examples/Playback/Playback.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/Java/Examples/Playback/src/gov/nasa/xpc/Main.java b/Java/Examples/Playback/src/gov/nasa/xpc/Main.java new file mode 100644 index 00000000..0e0b3761 --- /dev/null +++ b/Java/Examples/Playback/src/gov/nasa/xpc/Main.java @@ -0,0 +1,147 @@ +package gov.nasa.xpc; + +import com.sun.javafx.scene.EnteredExitedHandler; + +import java.io.*; +import java.util.Scanner; + +public class Main +{ + + public static void main(String[] args) throws IOException + { + String[] mainOpts = new String[] { "Record X-Plane", "Playback File", "Exit" }; + + System.out.println("X-Plane Connect Playback Example [Version 1.2.0.0]"); + System.out.println("(c) 2013-2015 United States Government as represented by the Administrator"); + System.out.println("of the National Aeronautics and Space Administration. All Rights Reserved."); + while(true) + { + int result = displayMenu("What would you like to do?", mainOpts); + switch(result) + { + case 1: + { + String path = getString("Enter a save file path: "); + int interval = getInt("Enter interval between frames (milliseconds): "); + int duration = getInt("Enter duration to record for (seconds): "); + + record(path, interval, duration); + break; + } + case 2: + { + String path = getString("Enter path to saved playback file: "); + int interval = getInt("Enter interval between frames (milliseconds): "); + + playback(path, interval); + break; + } + case 3: + { + System.out.println("Exiting."); + return; + } + default: + { + System.out.println("Unrecognized menu option."); + break; + } + } + } + } + + private static int displayMenu(String title, String[] opts) throws IOException + { + System.out.println(); + System.out.println("+---------------------------------------------- +"); + System.out.println(String.format("| %1$-42s |", title)); + System.out.println("+---------------------------------------------- +"); + for(int i = 0; i < opts.length; ++i) + { + System.out.println(String.format("| %1$2d. %2$-40s |", i + 1, opts[i])); + + } + System.out.println("+---------------------------------------------- +"); + return getInt("Please select an option: "); + } + + private static String getString(String prompt) throws IOException + { + System.out.print(prompt); + + BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); + return reader.readLine(); + } + + private static int getInt(String prompt) throws IOException + { + System.out.print(prompt); + + BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); + String result = reader.readLine(); + + return Integer.parseInt(result); + } + + public static void record(String path, int interval, int duration) throws IOException + { + int count = duration * 1000 / interval; + if (count < 1) + { + throw new IllegalArgumentException("duration is less than one interval."); + } + + try (BufferedWriter writer = new BufferedWriter(new FileWriter(path))) + { + System.out.println("Recording..."); + try (XPlaneConnect xpc = new XPlaneConnect()) + { + for (int i = 0; i < count; ++i) + { + float[] posi = xpc.getPOSI(0); + writer.write(String.format("%1$f, %2$f, %3$f, %4$f, %5$f, %6$f, %7$f\n", + posi[0], posi[1], posi[2], posi[3], posi[4], posi[5], posi[6])); + try + { + Thread.sleep(interval); + } + catch (InterruptedException ex) + { + } + } + } + System.out.println("Recording Complete"); + } + } + + public static void playback(String path, int interval) throws IOException + { + try(Scanner reader = new Scanner(new FileReader(path))) + { + reader.useDelimiter("[\\s\\r\\n,]+"); + System.out.println("Starting playback..."); + try (XPlaneConnect xpc = new XPlaneConnect()) + { + while(reader.hasNextLine()) + { + float[] posi = new float[7]; + for (int i = 0; i < 7; ++i) + { + String s = reader.next(); + posi[i] = Float.parseFloat(s); + } + reader.nextLine(); + xpc.sendPOSI(posi); + try + { + Thread.sleep(interval); + } + catch (InterruptedException ex) + { + } + } + } + } + } +} diff --git a/Java/src/ViewType.java b/Java/src/ViewType.java new file mode 100644 index 00000000..2f24c3dc --- /dev/null +++ b/Java/src/ViewType.java @@ -0,0 +1,60 @@ +//NOTICES: +// Copyright ã 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +// +// DISCLAIMERS +// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, +// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT THE +// SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY THAT THE SUBJECT +// SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, WILL CONFORM TO +// THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN ENDORSEMENT BY +// GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, HARDWARE, +// SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT SOFTWARE. +// FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING THIRD-PARTY +// SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." +// +// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES +// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF +// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, +// EXPENSES OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR +// RESULTING FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD +// HARMLESS THE UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY +// PRIOR RECIPIENT, TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER +// SHALL BE THE IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. +package gov.nasa.xpc; + +/** + * Represents a camera view in X-Plane + * + * @author Jason Watkins + * @version 1.1 + * @since 2015-05-08 + */ +public enum ViewType +{ + Forwards(73), + Down(74), + Left(75), + Right(76), + Back(77), + Tower(78), + Runway(79), + Chase(80), + Follow(81), + FollowWithPanel(82), + Spot(83), + FullscreenWithHud(84), + FullscreenNoHud(85); + + private final int value; + private ViewType(int value) + { + this.value = value; + } + + public int getValue() + { + return value; + } +} diff --git a/Java/src/XPlaneConnect.java b/Java/src/XPlaneConnect.java index 511613b6..f98816ee 100644 --- a/Java/src/XPlaneConnect.java +++ b/Java/src/XPlaneConnect.java @@ -331,44 +331,112 @@ public void sendDREF(String dref, float value) throws IOException * @throws IOException If the command cannot be sent. */ public void sendDREF(String dref, float[] value) throws IOException + { + sendDREFs(new String[] {dref}, new float[][] {value}); + } + + /** + * Sends a command to X-Plane that sets the given DREF. + * + * @param drefs The names of the X-Plane datarefs to set. + * @param values A sequence of arrays of floating point values whose structure depends on the drefs specified. + * @throws IOException If the command cannot be sent. + */ + public void sendDREFs(String[] drefs, float[][] values) throws IOException { //Preconditions - if(dref == null) + if(drefs == null || drefs.length == 0) { - throw new IllegalArgumentException("dref must be a valid string."); + throw new IllegalArgumentException(("drefs must be non-empty.")); } - if(value == null || value.length == 0) + if(values == null || values.length != drefs.length) { - throw new IllegalArgumentException("value must be non-null and should contain at least one value."); + throw new IllegalArgumentException("values must be of the same size as drefs."); } - //Convert drefs to bytes. - byte[] drefBytes = dref.getBytes(StandardCharsets.UTF_8); - if(drefBytes.length == 0) - { - throw new IllegalArgumentException("DREF is an empty string!"); - } - if(drefBytes.length > 255) + ByteArrayOutputStream os = new ByteArrayOutputStream(); + os.write("DREF".getBytes(StandardCharsets.UTF_8)); + os.write(0xFF); //Placeholder for message length + for(int i = 0; i < drefs.length; ++i) { - throw new IllegalArgumentException("dref must be less than 255 bytes in UTF-8. Are you sure this is a valid dref?"); - } + String dref = drefs[i]; + float[] value = values[i]; - ByteBuffer bb = ByteBuffer.allocate(4 * value.length); - bb.order(ByteOrder.LITTLE_ENDIAN); - for(int i = 0; i < value.length; ++i) - { - bb.putFloat(i * 4, value[i]); + if (dref == null) + { + throw new IllegalArgumentException("dref must be a valid string."); + } + if (value == null || value.length == 0) + { + throw new IllegalArgumentException("value must be non-null and should contain at least one value."); + } + + //Convert drefs to bytes. + byte[] drefBytes = dref.getBytes(StandardCharsets.UTF_8); + if (drefBytes.length == 0) + { + throw new IllegalArgumentException("DREF is an empty string!"); + } + if (drefBytes.length > 255) + { + throw new IllegalArgumentException("dref must be less than 255 bytes in UTF-8. Are you sure this is a valid dref?"); + } + + ByteBuffer bb = ByteBuffer.allocate(4 * value.length); + bb.order(ByteOrder.LITTLE_ENDIAN); + for (int j = 0; j < value.length; ++j) + { + bb.putFloat(j * 4, value[j]); + } + + //Build and send message + os.write(drefBytes.length); + os.write(drefBytes, 0, drefBytes.length); + os.write(value.length); + os.write(bb.array()); } + sendUDP(os.toByteArray()); + } - //Build and send message + /** + * Gets the control surface information for the specified airplane. + * + * @param ac The aircraft to get control surface information for. + * @return An array containing control surface data in the same format as {@code sendCTRL}. + * @throws IOException If the command cannot be sent or a response cannot be read. + */ + public float[] getCTRL(int ac) throws IOException + { + // Send request ByteArrayOutputStream os = new ByteArrayOutputStream(); - os.write("DREF".getBytes(StandardCharsets.UTF_8)); + os.write("GETC".getBytes(StandardCharsets.UTF_8)); os.write(0xFF); //Placeholder for message length - os.write(drefBytes.length); - os.write(drefBytes, 0, drefBytes.length); - os.write(value.length); - os.write(bb.array()); + os.write(ac); sendUDP(os.toByteArray()); + + // Read response + byte[] data = readUDP(); + if(data.length == 0) + { + throw new IOException("No response received."); + } + if(data.length < 31) + { + throw new IOException("Response too short"); + } + + // Parse response + float[] result = new float[7]; + ByteBuffer bb = ByteBuffer.wrap(data); + bb.order(ByteOrder.LITTLE_ENDIAN); + result[0] = bb.getFloat(5); + result[1] = bb.getFloat(9); + result[2] = bb.getFloat(13); + result[3] = bb.getFloat(17); + result[4] = bb.get(21); + result[5] = bb.getFloat(22); + result[6] = bb.getFloat(27); + return result; } /** @@ -382,6 +450,7 @@ public void sendDREF(String dref, float[] value) throws IOException *
  • Throttle [-1, 1]
  • *
  • Gear (0=up, 1=down)
  • *
  • Flaps [0, 1]
  • + *
  • Speedbrakes [-0.5, 1.5]
  • * *

    * If @{code ctrl} is less than 6 elements long, The missing elements will not be changed. To @@ -406,6 +475,7 @@ public void sendCTRL(float[] values) throws IOException *

  • Throttle [-1, 1]
  • *
  • Gear (0=up, 1=down)
  • *
  • Flaps [0, 1]
  • + *
  • Speedbrakes [-0.5, 1.5]
  • * *

    * If @{code ctrl} is less than 6 elements long, The missing elements will not be changed. To @@ -440,7 +510,14 @@ public void sendCTRL(float[] values, int ac) throws IOException { if(i == 4) { - bb.put(cur, (byte) values[i]); + if(i >= values.length) + { + bb.put(cur, (byte)-1); + } + else + { + bb.put(cur, (byte)values[i]); + } cur += 1; } else if (i >= values.length) @@ -465,6 +542,44 @@ else if (i >= values.length) sendUDP(os.toByteArray()); } + /** + * Gets position information for the specified airplane. + * + * @param ac The aircraft to get position information for. + * @return An array containing control surface data in the same format as {@code sendPOSI}. + * @throws IOException If the command cannot be sent or a response cannot be read. + */ + public float[] getPOSI(int ac) throws IOException + { + // Send request + ByteArrayOutputStream os = new ByteArrayOutputStream(); + os.write("GETP".getBytes(StandardCharsets.UTF_8)); + os.write(0xFF); //Placeholder for message length + os.write(ac); + sendUDP(os.toByteArray()); + + // Read response + byte[] data = readUDP(); + if(data.length == 0) + { + throw new IOException("No response received."); + } + if(data.length < 34) + { + throw new IOException("Response too short"); + } + + // Parse response + float[] result = new float[7]; + ByteBuffer bb = ByteBuffer.wrap(data); + bb.order(ByteOrder.LITTLE_ENDIAN); + for(int i = 0; i < 7; ++i) + { + result[i] = bb.getFloat(6 + 4 * i); + } + return result; + } + /** * Sets the position of the player ac. * @@ -693,6 +808,26 @@ public void sendTEXT(String msg, int x, int y) throws IOException sendUDP(os.toByteArray()); } + /** + * Sets the camera view in X-Plane. + * + * @param view The view to use. + * @throws IOException If the command cannot be sent. + */ + public void sendVIEW(ViewType view) throws IOException + { + ByteBuffer bb = ByteBuffer.allocate(4); + bb.order(ByteOrder.LITTLE_ENDIAN); + bb.putInt(view.getValue()); + + //Build and send message + ByteArrayOutputStream os = new ByteArrayOutputStream(); + os.write("VIEW".getBytes(StandardCharsets.UTF_8)); + os.write(0xFF); //Placeholder for message length + os.write(bb.array()); + sendUDP(os.toByteArray()); + } + /** * Adds, removes, or clears a set of waypoints. If the command is clear, the points are ignored * and all points are removed. diff --git a/MATLAB/+XPlaneConnect/XPlaneConnect.jar b/MATLAB/+XPlaneConnect/XPlaneConnect.jar index 755bb2935c7c642d34542cded39df7ee6558f8a8..f9d9e0b5d7f663ee0ef9b3e25f8e3dd94d83faed 100644 GIT binary patch delta 7708 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 delta 5814 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 z

    >8ZZp=!6+T6v$KiUd93jYL2AB+gb`E`J2bqUm2ZBoM;K&Y4aW!PHoY za@Qh0o2^$46m}M^)+Mu56BgVDzwlJ#$lYGPw=hcb=`CM5hHw0tJGro)I>~!%+IGEj zE`o|x>EA+ty&I84ZN2Xe1<5ch{rl-z7crgrFQo%Xj6E}etsv%S{UV6q7k0gPVif&* zuCMYI2V*LCZ$~EfKAQ}&olo@|^LGkaFy(yis3jBaruxf2Aw%OR zY)Q%5)B%Hu4uq6`=_bEDh9)pO)3q4vM%bpb=IBG>>VDZDG9I$lqf940f;$t7DwY4N z365-*xFdXz{`tqkEVj;P-G4tAK7yRah3a$bQp)TN^a5!pUX@WT(rYRi=yef9X^kYK zq!^TJf3M!IEVP@r?le2sZhSm{!0f9B5j!D?89W(J$FX(g5FOh25w5U|5}gcs!6Hpg zcC{ZQwXuQz&5{PTCu$w0F zEQ&-ufgB@OPvGzTwVdxd3rozcdsfg_l69hLHLn~kmiRbidBmNAOqT0A@$#s_V+dHE z&gqQ$pLJ!NGcc23s(ikpTbN~O=6;Mpi~bj&f}`=%V%*0T^DmWGylzOf<}Uhg;gJFM zTU0$-1w))OFIBpjrKlI7_Lcs9AM~2P$;mAK;V^f3F%}SD!91n=6Lp@v{$k+fNU#m& zX;ezYPvlc=vl7*5D*Wf|Gs%I)l&}5;sQq@Yw?lne zC?LMtKt7(4ChyP6)67IM$~;xMQkpR~gxj%)j1@2Znc%cV30^u`8gUyZ=`G_uOYgxK zjCxMlf2BGLR#wELChfUqCV&z&CXXlpMSGp7-1>E144}@#wJ`!`$eT@B8HpJPZuUED z(b^9HGMM}`nGa~zfVWhGg+bl9-3iF{M zI52yk>67#)Lk;g!Bw0y3>w*sgb8aZnzty~b_oTy2v-hqi`{8Wpq&P|=<=woG{VX%s zZl|hF!5D3i3;`w9nc_ za-NkEdWdu*6w^-ws|zT*p5HM=b&|yJA@z*)J?q-HJUsGHc-C z(+&sa1(`Vgh_RnX4n-8l^(g!H)!IQQvVY%j6K$5LALK2X zvxO+gZ-2k0M-b)5Nkf6W;pszRL|phiLq80;14#H*jMT>5fg=T_C_&qIy`U-|kle5S z(6yJkcEozE_b==}W7d~PV1-cL%mtwJnGf_q;8D$5WlO@E5k}hD5RuQ4sY_pDC4W!X zx=Xre3o(l=w0jXv?thq-dO6;J^uFVo<>vZ0YgCrkB}7mgu%v$w-s@Ewo34cJALv0K z*in~|Gcsj=$+`TY8c{7kd3gKdt21fsufG`$;-!)Hq+u)wQYU->Z52RSb*IbztI3DJ zQ;QL~lKR8KJ(Rj1{lIUg%OsB6@w)V{uI!sK{`=_e}u8p@P-g;Ffs^~g$e>ur(x66q;;U; ybN##i3iJx};>C-9U9-~vo~8r+Z^@vfd0;S*Xse^4|2szer)7~qAWiar)Bgb!H5@zu diff --git a/MATLAB/+XPlaneConnect/closeUDP.m b/MATLAB/+XPlaneConnect/closeUDP.m index f49dd623..4941ae16 100644 --- a/MATLAB/+XPlaneConnect/closeUDP.m +++ b/MATLAB/+XPlaneConnect/closeUDP.m @@ -22,6 +22,10 @@ function closeUDP(socket) %% Track open clients global clients; -%TODO: Remove stale clients +for i = 1:length(clients) + if socket == clients(i) + clients = [clients(1:i-1) clients(i+1:length(clients))]; + end +end end \ No newline at end of file diff --git a/MATLAB/+XPlaneConnect/getCTRL.m b/MATLAB/+XPlaneConnect/getCTRL.m new file mode 100644 index 00000000..820afcac --- /dev/null +++ b/MATLAB/+XPlaneConnect/getCTRL.m @@ -0,0 +1,29 @@ +function ctrl = getCTRL(ac, socket) +% getCTRL Gets control surface information for the specified aircraft +% +% Inputs +% ac: The aircraft number to get control surface data for. +% Outputs +% posi: An array of values matching the the format used by sendCTRL + + +import XPlaneConnect.* + +%% Get client +global clients; +if ~exist('socket', 'var') + assert(isequal(length(clients) < 2, 1), '[getCTRL] ERROR: Multiple clients open. You must specify which client to use.'); + if isempty(clients) + socket = openUDP(); + else + socket = clients(1); + end +end + +%% Validate input +ac = int32(ac); + +%% Send command +ctrl = socket.getCTRL(ac); + +end \ No newline at end of file diff --git a/MATLAB/+XPlaneConnect/getPOSI.m b/MATLAB/+XPlaneConnect/getPOSI.m new file mode 100644 index 00000000..35b8d5a5 --- /dev/null +++ b/MATLAB/+XPlaneConnect/getPOSI.m @@ -0,0 +1,29 @@ +function posi = getPOSI(ac, socket) +% getPOSI Gets position information for the specified aircraft +% +% Inputs +% ac: The aircraft number to get position data for. +% Outputs +% posi: An array of values matching the the format used by sendPOSI + + +import XPlaneConnect.* + +%% Get client +global clients; +if ~exist('socket', 'var') + assert(isequal(length(clients) < 2, 1), '[getPOSI] ERROR: Multiple clients open. You must specify which client to use.'); + if isempty(clients) + socket = openUDP(); + else + socket = clients(1); + end +end + +%% Validate input +ac = int32(ac); + +%% Send command +posi = socket.getPOSI(ac); + +end \ No newline at end of file diff --git a/MATLAB/+XPlaneConnect/openUDP.m b/MATLAB/+XPlaneConnect/openUDP.m index c38e0877..29615983 100644 --- a/MATLAB/+XPlaneConnect/openUDP.m +++ b/MATLAB/+XPlaneConnect/openUDP.m @@ -26,6 +26,7 @@ addOptional(p,'xpHost','127.0.0.1',@ischar); addOptional(p,'xpPort',49009,@isnumeric); addOptional(p,'port',0,@isnumeric); +addOptional(p,'timeout',100,@isnumeric); parse(p,varargin{:}); %% Create client @@ -33,7 +34,7 @@ [folder, ~, ~] = fileparts(which('XPlaneConnect.openUDP')); javaaddpath(fullfile(folder, 'XPlaneConnect.jar')); end -socket = gov.nasa.xpc.XPlaneConnect(p.Results.xpHost, p.Results.xpPort, p.Results.port); +socket = gov.nasa.xpc.XPlaneConnect(p.Results.xpHost, p.Results.xpPort, p.Results.port, p.Results.timeout); %% Track open clients global clients; diff --git a/MATLAB/+XPlaneConnect/sendDREF.m b/MATLAB/+XPlaneConnect/sendDREF.m index cbf2119d..e9a1b5c7 100644 --- a/MATLAB/+XPlaneConnect/sendDREF.m +++ b/MATLAB/+XPlaneConnect/sendDREF.m @@ -1,17 +1,8 @@ function sendDREF( dref, value, socket ) -% sendDREF Sends a command to X-Plane that sets the given DREF. +% sendDREFs Sends a command to X-Plane that sets the given DREF. This +% function is now an alias to sendDREFs. It is kept only for backwards +% compatibility. % -% Inputs -% dref: The name of the X-Plane dataref to set. -% Value: An array of floating point values whose structure depends on the dref specified. -% socket (optional): The client to use when sending the command. -% -% Use -% 1. import XPlaneConnect.* -% 2. dataRef = 'sim/aircraft/parts/acf_gear_deploy'; // Landing Gear -% 3. Value = 0; -% 4. status = setDREF(dataRef, Value); -% % Contributors % [CT] Christopher Teubert (SGT, Inc.) % christopher.a.teubert@nasa.gov @@ -20,19 +11,8 @@ function sendDREF( dref, value, socket ) import XPlaneConnect.* -%% Get client -global clients; if ~exist('socket', 'var') - assert(isequal(length(clients) < 2, 1), '[setDREF] ERROR: Multiple clients open. You must specify which client to use.'); - if isempty(clients) - socket = openUDP(); - else - socket = clients(1); - end -end - -%% Validate input -value = single(value); - -%%Send command -socket.sendDREF(dref, value); \ No newline at end of file + sendDREFs(dref, value) +else + sendDREFs(dref, value, socket) +end \ No newline at end of file diff --git a/MATLAB/+XPlaneConnect/sendDREFs.m b/MATLAB/+XPlaneConnect/sendDREFs.m new file mode 100644 index 00000000..88fa3b20 --- /dev/null +++ b/MATLAB/+XPlaneConnect/sendDREFs.m @@ -0,0 +1,37 @@ +function sendDREFs( drefs, values, socket ) +% sendDREFs Sends a command to X-Plane that sets the given DREF(s). +% +% Inputs +% dref: The name or names of the X-Plane dataref(s) to set. +% Value: An array or an multidimensional array of floating point values +% whose structure depends on the dref specified. +% socket (optional): The client to use when sending the command. +% +% Use +% 1. import XPlaneConnect.* +% 2. dataRef = 'sim/aircraft/parts/acf_gear_deploy'; // Landing Gear +% 3. Value = 0; +% 4. status = setDREF(dataRef, Value); +% +% Contributors +% [JW] Jason Watkins +% jason.w.watkins@nasa.gov + +import XPlaneConnect.* + +%% Get client +global clients; +if ~exist('socket', 'var') + assert(isequal(length(clients) < 2, 1), '[setDREF] ERROR: Multiple clients open. You must specify which client to use.'); + if isempty(clients) + socket = openUDP(); + else + socket = clients(1); + end +end + +%% Validate input +values = single(values); + +%%Send command +socket.sendDREFs(drefs, values); \ No newline at end of file diff --git a/MATLAB/+XPlaneConnect/sendVIEW.m b/MATLAB/+XPlaneConnect/sendVIEW.m new file mode 100644 index 00000000..d95814c3 --- /dev/null +++ b/MATLAB/+XPlaneConnect/sendVIEW.m @@ -0,0 +1,35 @@ +function sendVIEW(view, socket) +% sendVIEW Sets the camera +% +%Inputs +% view: The view to use. +% socket (optional): The client to use when sending the command. +% +%Use +% 1. import XPlaneConnect.*; +% 2. sendView(Forwards); +% +% Contributors +% [JW] Jason Watkins + +import XPlaneConnect.* + +%% Get client +global clients; +if ~exist('socket', 'var') + assert(isequal(length(clients) < 2, 1), '[pauseSim] ERROR: Multiple clients open. You must specify which client to use.'); + if isempty(clients) + socket = openUDP(); + else + socket = clients(1); + end +end + +%% Validate input + + +%% Send command +socket.sendVIEW(view) + +end + diff --git a/MATLAB/Example/Example.m b/MATLAB/Example/Example.m index f25e848a..03e1ceff 100644 --- a/MATLAB/Example/Example.m +++ b/MATLAB/Example/Example.m @@ -10,21 +10,21 @@ disp('xplaneconnect Example Script-'); disp('Setting up Simulation'); -Socket = openUDP(49005); +Socket = openUDP('127.0.0.1', 49009); %% Ensure connected -getDREFs('sim/test/test_float') +getDREFs('sim/test/test_float', Socket); %% Set position of the player aircraft disp('Setting position'); - pauseSim(1); + pauseSim(1, Socket); % Lat Lon Alt Pitch Roll Heading Gear POSI = [37.524, -122.06899, 2500, 0, 0, 0, 1]; -sendPOSI(POSI); % Set own aircraft position +sendPOSI(POSI, 0, Socket); % Set own aircraft position % Lat Lon Alt Pitch Roll Heading Gear POSI = [37.52465, -122.06899, 2500, 0, 20, 0, 1]; -sendPOSI(POSI, 1); % Place another aircraft just north of us +sendPOSI(POSI, 1, Socket); % Place another aircraft just north of us %% Set rates disp('Setting rates'); % Alpha Velocity PQR @@ -32,30 +32,30 @@ 'd',[0,-999,0,-999,-999,-999,-999,-999;... % Alpha data 130,130,130,130,-999,-999,-999,-999;... % Velocity data 0,0,0,-999,-999,-999,-999,-999]); % PQR data -sendDATA(data); +sendDATA(data, Socket); %% Set CTRL % Throttle - CTRL = [0,0,0,0.8]; - sendCTRL(CTRL); + CTRL = [0,0,0,0.8,0,0]; + sendCTRL(CTRL, 0, Socket); pause(5); - pauseSim(0); + pauseSim(0, Socket); pause(5) % Run sim for 5 seconds %% Pause sim disp('Pausing simulation'); - pauseSim(1); + pauseSim(1, Socket); pause(5); disp('Unpausing simulation'); - pauseSim(0); + pauseSim(0, Socket); pause(10) % Run sim for 10 seconds %% Use DREF to raise landing gear disp('Raising gear'); gearDREF = 'sim/cockpit/switches/gear_handle_status'; - sendDREF(gearDREF, 0); + sendDREF(gearDREF, 0, Socket); pause(10) % Run sim for 10 seconds %% Confirm gear and paus status by reading DREFs disp('Checking gear'); pauseDREF = 'sim/operation/override/override_planepath'; - result = requestDREF({gearDREF, pauseDREF}); + result = getDREFs({gearDREF, pauseDREF}, Socket); if result{1} == 0 disp('Gear stowed'); else diff --git a/MATLAB/MonitorExample/MonitorExample.m b/MATLAB/MonitorExample/MonitorExample.m new file mode 100644 index 00000000..ffbdc145 --- /dev/null +++ b/MATLAB/MonitorExample/MonitorExample.m @@ -0,0 +1,19 @@ +%% X-Plane Connect MATLAB Example Script +% This script demonstrates how to read and write data to the XPC plugin. +% Before running this script, ensure that the XPC plugin is installed and +% X-Plane is running. +%% Import XPC +clear all +addpath('../') +import XPlaneConnect.* + +Socket = openUDP(); +while 1 + posi = getPOSI(0, Socket); + ctrl = getCTRL(0, Socket); + + fprintf('Loc: (%4f, %4f, %4f) Aileron:%2f Elevator:%2f Rudder:%2f\n', ... + posi(1), posi(2), posi(3), ctrl(2), ctrl(1), ctrl(3)); + pause(0.1); +end +closeUDP(Socket); \ No newline at end of file diff --git a/MATLAB/PlaybackExample/MyRecording.txt b/MATLAB/PlaybackExample/MyRecording.txt new file mode 100644 index 00000000..60c546aa --- /dev/null +++ b/MATLAB/PlaybackExample/MyRecording.txt @@ -0,0 +1,100 @@ +37.184181, -120.793640, 3904.040771, 1.856917, 0.001644, 116.058609, 0.000000 +37.184143, -120.793541, 3903.825928, 2.172139, -0.034512, 115.875587, 0.000000 +37.184090, -120.793404, 3903.511719, 2.425995, -0.111958, 115.577911, 0.000000 +37.184040, -120.793282, 3903.230225, 2.497653, -0.205506, 115.289268, 0.000000 +37.183994, -120.793167, 3902.961914, 2.478850, -0.315117, 115.006279, 0.000000 +37.183949, -120.793053, 3902.683838, 2.412536, -0.447890, 114.716370, 0.000000 +37.183910, -120.792953, 3902.452881, 2.344441, -0.570747, 114.485756, 0.000000 +37.183857, -120.792824, 3902.137939, 2.253826, -0.752984, 114.194984, 0.000000 +37.183807, -120.792702, 3901.830566, 2.178489, -0.942979, 113.943779, 0.000000 +37.183765, -120.792595, 3901.561279, 2.125190, -1.116157, 113.754135, 0.000000 +37.183735, -120.792511, 3901.342773, 2.089507, -1.260052, 113.621834, 0.000000 +37.183693, -120.792404, 3901.058350, 2.051378, -1.449701, 113.479713, 0.000000 +37.183628, -120.792244, 3900.620361, 2.004393, -1.742637, 113.320374, 0.000000 +37.183571, -120.792107, 3900.232178, 1.969860, -1.999084, 113.234406, 0.000000 +37.183529, -120.791992, 3899.922852, 1.945357, -2.199157, 113.199463, 0.000000 +37.183487, -120.791885, 3899.607666, 1.922479, -2.397843, 113.190887, 0.000000 +37.183441, -120.791771, 3899.279297, 1.738008, -2.604320, 113.214371, 0.000000 +37.183395, -120.791649, 3898.942383, 1.172052, -2.819112, 113.280800, 0.000000 +37.183342, -120.791512, 3898.525879, 0.437769, -3.059577, 113.392952, 0.000000 +37.183292, -120.791389, 3898.116943, -0.110597, -3.260861, 113.510010, 0.000000 +37.183247, -120.791275, 3897.675293, -0.458939, -3.399007, 113.635101, 0.000000 +37.183220, -120.791206, 3897.409668, -0.495934, -3.425584, 113.706985, 0.000000 +37.183182, -120.791107, 3896.976318, -0.338542, -3.312644, 113.832870, 0.000000 +37.183128, -120.790962, 3896.313965, 0.088305, -2.812056, 114.069130, 0.000000 +37.183083, -120.790848, 3895.734863, 0.355302, -2.143086, 114.327766, 0.000000 +37.183033, -120.790718, 3895.112061, 0.345563, -1.171917, 114.668144, 0.000000 +37.182987, -120.790604, 3894.519043, 0.034761, -0.025642, 115.037415, 0.000000 +37.182941, -120.790489, 3893.926270, -0.549108, 1.265883, 115.421654, 0.000000 +37.182888, -120.790344, 3893.151611, -1.627703, 3.039703, 115.896240, 0.000000 +37.182831, -120.790199, 3892.313477, -2.879907, 4.868656, 116.325722, 0.000000 +37.182785, -120.790077, 3891.557129, -3.883288, 6.350969, 116.633751, 0.000000 +37.182743, -120.789970, 3890.766602, -4.752331, 7.729563, 116.888329, 0.000000 +37.182705, -120.789871, 3889.997314, -5.439554, 8.871016, 117.077042, 0.000000 +37.182659, -120.789749, 3888.965820, -6.164141, 10.014505, 117.239494, 0.000000 +37.182610, -120.789627, 3887.832031, -6.734039, 10.811956, 117.319382, 0.000000 +37.182560, -120.789505, 3886.558594, -7.134449, 11.245357, 117.313339, 0.000000 +37.182514, -120.789383, 3885.197510, -7.320403, 11.326477, 117.228592, 0.000000 +37.182465, -120.789261, 3883.700439, -7.264509, 11.086659, 117.071564, 0.000000 +37.182415, -120.789131, 3882.124023, -7.020517, 10.579235, 116.843575, 0.000000 +37.182365, -120.789009, 3880.477295, -6.698184, 9.864036, 116.538239, 0.000000 +37.182316, -120.788887, 3878.771973, -6.407937, 8.986709, 116.154274, 0.000000 +37.182266, -120.788765, 3877.028076, -6.217397, 7.992366, 115.705994, 0.000000 +37.182217, -120.788643, 3875.249023, -6.173934, 6.988136, 115.220467, 0.000000 +37.182167, -120.788521, 3873.432617, -6.285208, 6.050294, 114.729034, 0.000000 +37.182117, -120.788399, 3871.583496, -6.453388, 5.213163, 114.269440, 0.000000 +37.182068, -120.788269, 3869.689209, -6.484870, 4.480176, 113.873062, 0.000000 +37.182014, -120.788147, 3867.766357, -6.310386, 3.856612, 113.555290, 0.000000 +37.181965, -120.788025, 3865.820801, -6.021461, 3.327790, 113.311180, 0.000000 +37.181915, -120.787903, 3863.870361, -5.728759, 2.874094, 113.135651, 0.000000 +37.181866, -120.787781, 3861.910156, -5.480271, 2.475115, 113.025513, 0.000000 +37.181816, -120.787651, 3859.973145, -5.302026, 2.122235, 112.979225, 0.000000 +37.181767, -120.787529, 3858.042969, -5.182843, 1.808723, 112.993736, 0.000000 +37.181717, -120.787407, 3856.119629, -5.038956, 1.552066, 113.070557, 0.000000 +37.181667, -120.787285, 3854.215088, -4.828547, 1.368155, 113.206085, 0.000000 +37.181614, -120.787148, 3852.185059, -4.515563, 1.254129, 113.410904, 0.000000 +37.181557, -120.787010, 3850.030762, -4.132499, 1.210060, 113.681358, 0.000000 +37.181507, -120.786888, 3848.263916, -3.831450, 1.225745, 113.935280, 0.000000 +37.181458, -120.786766, 3846.475342, -3.528734, 1.284648, 114.214294, 0.000000 +37.181408, -120.786644, 3844.712158, -3.243377, 1.382594, 114.502975, 0.000000 +37.181358, -120.786522, 3842.987549, -2.982575, 1.515415, 114.790489, 0.000000 +37.181309, -120.786392, 3841.302246, -2.688687, 1.679037, 115.070442, 0.000000 +37.181259, -120.786270, 3839.659424, -2.305070, 1.869125, 115.338135, 0.000000 +37.181210, -120.786148, 3838.070068, -1.827937, 2.080883, 115.588036, 0.000000 +37.181156, -120.786018, 3836.515137, -1.326015, 2.315055, 115.817902, 0.000000 +37.181107, -120.785889, 3835.020508, -0.858468, 2.566000, 116.019691, 0.000000 +37.181053, -120.785767, 3833.605713, -0.446646, 2.827466, 116.188957, 0.000000 +37.181004, -120.785637, 3832.263672, -0.082390, 3.097450, 116.326546, 0.000000 +37.180950, -120.785515, 3830.996094, 0.248427, 3.372406, 116.433670, 0.000000 +37.180901, -120.785385, 3829.802734, 0.561189, 3.648955, 116.513596, 0.000000 +37.180847, -120.785263, 3828.686279, 0.901348, 3.909596, 116.570610, 0.000000 +37.180798, -120.785133, 3827.642090, 1.422296, 4.101938, 116.610832, 0.000000 +37.180744, -120.785011, 3826.675537, 2.124010, 4.216800, 116.636208, 0.000000 +37.180691, -120.784889, 3825.800049, 2.895841, 4.268193, 116.644135, 0.000000 +37.180641, -120.784767, 3825.024658, 3.647615, 4.264566, 116.632553, 0.000000 +37.180588, -120.784637, 3824.355469, 4.389325, 4.198403, 116.604164, 0.000000 +37.180538, -120.784523, 3823.797119, 5.116096, 4.063403, 116.559959, 0.000000 +37.180489, -120.784401, 3823.351562, 5.802851, 3.858843, 116.500069, 0.000000 +37.180435, -120.784279, 3823.021240, 6.434232, 3.583184, 116.425621, 0.000000 +37.180386, -120.784164, 3822.803223, 7.040646, 3.237821, 116.340439, 0.000000 +37.180336, -120.784042, 3822.697021, 7.629384, 2.839028, 116.249237, 0.000000 +37.180286, -120.783928, 3822.700195, 8.181519, 2.404881, 116.155312, 0.000000 +37.180244, -120.783821, 3822.798828, 8.596326, 1.981372, 116.066658, 0.000000 +37.180183, -120.783684, 3823.074219, 9.020256, 1.372200, 115.947289, 0.000000 +37.180126, -120.783554, 3823.453369, 9.331639, 0.798377, 115.847244, 0.000000 +37.180073, -120.783424, 3823.932129, 9.642418, 0.224538, 115.759720, 0.000000 +37.180019, -120.783302, 3824.521729, 9.962214, -0.365530, 115.680557, 0.000000 +37.179970, -120.783188, 3825.146240, 10.216949, -0.901261, 115.617035, 0.000000 +37.179928, -120.783081, 3825.777100, 10.420901, -1.378152, 115.566948, 0.000000 +37.179871, -120.782951, 3826.665283, 10.683296, -1.973540, 115.510689, 0.000000 +37.179817, -120.782829, 3827.599854, 10.932059, -2.526971, 115.463028, 0.000000 +37.179764, -120.782700, 3828.676758, 11.182608, -3.091355, 115.418022, 0.000000 +37.179710, -120.782570, 3829.791748, 11.405788, -3.608584, 115.379250, 0.000000 +37.179657, -120.782448, 3830.954102, 11.541166, -4.084742, 115.349564, 0.000000 +37.179604, -120.782326, 3832.230469, 11.431418, -4.526593, 115.343117, 0.000000 +37.179554, -120.782204, 3833.525391, 11.053594, -4.891589, 115.367775, 0.000000 +37.179501, -120.782082, 3834.855957, 10.596283, -5.199400, 115.407677, 0.000000 +37.179451, -120.781960, 3836.201660, 10.188977, -5.458726, 115.448441, 0.000000 +37.179401, -120.781837, 3837.573486, 9.879080, -5.681745, 115.481895, 0.000000 +37.179348, -120.781715, 3838.972656, 9.667299, -5.869191, 115.505310, 0.000000 +37.179298, -120.781593, 3840.342529, 9.507944, -5.992330, 115.524872, 0.000000 diff --git a/MATLAB/PlaybackExample/Playback.m b/MATLAB/PlaybackExample/Playback.m new file mode 100644 index 00000000..f5ea2a5d --- /dev/null +++ b/MATLAB/PlaybackExample/Playback.m @@ -0,0 +1,36 @@ +%% X-Plane Connect MATLAB Playback Example Script +% This script demonstrates how to playback recorded data from X-Plane. +% (See Record.m) +% Before running this script, ensure that the XPC plugin is installed and +% X-Plane is running. +%% Import XPC +addpath('../') +import XPlaneConnect.* + +%% Setup +% Create variables and open connection to X-Plane +path = 'MyRecording.txt'; % File containing stored data +interval = 0.1; % Time between snapshots in seconds +duration = 10; +Socket = openUDP(); % Open connection to X-Plane +fd = fopen(path, 'r'); % Open file + +disp('X-Plane Connect Playback Example Script'); +fprintf('Playing back ''%s'' in %fs increments.\n', path, interval); + +%% Start Playback +count = floor(duration / interval); +pauseSim(1); +for i = 1:count + line = fgetl(fd); + posi = sscanf(line, '%f, %f, %f, %f, %f, %f, %f\n'); + sendPOSI(posi); + pause(interval); +end + +%% Close connection and file +pauseSim(0); +closeUDP(Socket); +fclose(fd); + +disp('Playback complete.'); \ No newline at end of file diff --git a/MATLAB/PlaybackExample/Record.m b/MATLAB/PlaybackExample/Record.m new file mode 100644 index 00000000..8f0d0b01 --- /dev/null +++ b/MATLAB/PlaybackExample/Record.m @@ -0,0 +1,34 @@ +%% X-Plane Connect MATLAB Recording Example Script +% This script demonstrates how to record data from X-Plane that can later +% be played back. (See Playback.m) +% Before running this script, ensure that the XPC plugin is installed and +% X-Plane is running. +%% Import XPC +addpath('../') +import XPlaneConnect.* + +%% Setup +% Create variables and open connection to X-Plane +path = 'MyRecording.txt'; % File to save the data in +interval = 0.1; % Time between snapshots in seconds +duration = 10; % Time to record for in seconds +Socket = openUDP(); % Open connection to X-Plane +fd = fopen(path, 'w'); % Open file + +disp('X-Plane Connect Recording Example Script'); +fprintf('Recording to ''%s'' for %f seconds in %fs increments.\n', path, duration, interval); + +%% Start Recording +count = floor(duration / interval); +for i = 1:count + posi = getPOSI(0, Socket); + fprintf(fd, '%f, %f, %f, %f, %f, %f, %f\n', ... + posi(1), posi(2), posi(3), posi(4), posi(5), posi(6), posi(7)); + pause(interval); +end + +%% Close connection and file +closeUDP(Socket); +fclose(fd); + +disp('Recording complete.'); \ No newline at end of file diff --git a/Python/src/example.py b/Python/src/basicExample.py similarity index 100% rename from Python/src/example.py rename to Python/src/basicExample.py diff --git a/Python/src/monitorExample.py b/Python/src/monitorExample.py new file mode 100644 index 00000000..c4cdb480 --- /dev/null +++ b/Python/src/monitorExample.py @@ -0,0 +1,16 @@ +import sys + +import xpc + +def monitor(): + with xpc.XPlaneConnect() as client: + while True: + posi = client.getPOSI(); + ctrl = client.getCTRL(); + + print "Loc: (%4f, %4f, %4f) Aileron:%2f Elevator:%2f Rudder:%2f\n"\ + % (posi[0], posi[1], posi[2], ctrl[1], ctrl[0], ctrl[2]) + + +if __name__ == "__main__": + monitor() \ No newline at end of file diff --git a/Python/src/playbackExample.py b/Python/src/playbackExample.py new file mode 100644 index 00000000..dfa4f522 --- /dev/null +++ b/Python/src/playbackExample.py @@ -0,0 +1,82 @@ +from time import sleep +import xpc + +def record(path, interval = 0.1, duration = 60): + try: + fd = open(path, "w") + except: + print "Unable to open file." + return + + count = int(duration / interval) + if count < 1: + print "duration is less than a single frame." + return + + with xpc.XPlaneConnect("localhost", 49009, 0, 1000) as client: + print "Recording..." + for i in range(0, count): + try: + posi = client.getPOSI() + fd.write("{0}, {1}, {2}, {3}, {4}, {5}, {6}\n".format(*posi)) + except: + print "Error reading position" + continue + sleep(interval); + print "Recording Complete" + fd.close() + +def playback(path, interval): + try: + fd = open(path, "r") + except: + print "Unable to open file." + return + + with xpc.XPlaneConnect("localhost", 49009, 0, 1000) as client: + print "Starting Playback..." + for line in fd: + try: + posi = [ float(x) for x in line.split(',') ] + posi = client.sendPOSI(posi) + except: + print "Error sending position" + continue + sleep(interval); + print "Playback Complete" + fd.close() + +def printMenu(title, opts): + print "\n+---------------------------------------------- +" + print "| {0:42} |\n".format(title) + print "+---------------------------------------------- +" + for i in range(0,len(opts)): + print "| {0:2}. {1:40} |".format(i + 1, opts[i]) + print "+---------------------------------------------- +" + return int(raw_input("Please select and option: ")) + +def ex(): + print "X-Plane Connect Playback Example [Version 1.2.0]" + print "(c) 2013-2015 United States Government as represented by the Administrator" + print "of the National Aeronautics and Space Administration. All Rights Reserved." + + mainOpts = [ "Record X-Plane", "Playback File", "Exit" ] + + while True: + opt = printMenu("What would you like to do?", mainOpts) + if opt == 1: + path = raw_input("Enter save file path: ") + interval = float(raw_input("Enter interval between frames (seconds): ")) + duration = float(raw_input("Enter duration to record for (seconds): ")) + record(path, interval, duration) + elif opt == 2: + path = raw_input("Enter save file path: ") + interval = float(raw_input("Enter interval between frames (seconds): ")) + playback(path, interval) + elif opt == 3: + return; + else: + print "Unrecognized option." + +if __name__ == "__main__": + ex() \ No newline at end of file diff --git a/Python/src/xpc.py b/Python/src/xpc.py index 13d3bbd7..e2b5c5ea 100644 --- a/Python/src/xpc.py +++ b/Python/src/xpc.py @@ -79,8 +79,20 @@ def setCONN(self, port): if port < 0 or port > 65535: raise ValueError("The specified port is not a valid port number.") + #Send command buffer = struct.pack("<4sxH", "CONN", port) self.sendUDP(buffer) + + #Rebind socket + clientAddr = ("0.0.0.0", port) + timeout = self.socket.gettimeout(); + self.socket.close(); + self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP) + self.socket.bind(clientAddr) + self.socket.settimeout(timeout) + + #Read response + buffer = self.socket.recv(1024) def pauseSim(self, pause): '''Pauses or un-pauses the physics simulation engine in X-Plane. @@ -131,7 +143,29 @@ def sendDATA(self, data): buffer += struct.pack(" 255: - raise ValueError("dref must be a non-empty string less than 256 characters.") - if values == None: - raise ValueError("values must be a scalar or sequence of floats.") + self.sendDREFs([dref], [values]) + + def sendDREFs(self, drefs, values): + '''Sets the specified datarefs to the specified values. + + Args: + drefs: A list of names of the datarefs to set. + values: A list of scalar or vector values to set. + ''' + if len(drefs) != len(values): + raise ValueError("drefs and values must have the same number of elements.") + + buffer = struct.pack("<4sx", "DREF") + for i in range(len(drefs)): + dref = drefs[i] + value = values[i] + # Preconditions + if len(dref) == 0 or len(dref) > 255: + raise ValueError("dref must be a non-empty string less than 256 characters.") + if value == None: + raise ValueError("value must be a scalar or sequence of floats.") - # Pack message - fmt = "" - buffer = None - if hasattr(values, "__len__"): - if len(values) > 255: - raise ValueError("values must have less than 256 items.") - fmt = "<4sxB{0:d}sB{1:d}f".format(len(dref), len(values)) - buffer = struct.pack(fmt, "DREF", len(dref), dref, len(values), values) - else: - fmt = "<4sxB{0:d}sBf".format(len(dref)) - buffer = struct.pack(fmt, "DREF", len(dref), dref, 1, values) + # Pack message + if hasattr(value, "__len__"): + if len(value) > 255: + raise ValueError("value must have less than 256 items.") + fmt = " ViewType.FullscreenNoHud: + raise ValueError("Unknown view command.") + + # Pack buffer + buffer = struct.pack("<4sxi", "VIEW", view) + + # Send message + self.sendUDP(buffer) + def sendWYPT(self, op, points): '''Adds, removes, or clears waypoints. Waypoints are three dimensional points on or above the Earth's surface that are represented visually in the simulator. Each @@ -324,3 +412,18 @@ def sendWYPT(self, op, points): else: buffer = struct.pack("<4sxBB" + str(len(points)) + "f", "WYPT", op, len(points), *points) self.sendUDP(buffer) + +class ViewType(object): + Forwards = 73 + Down = 74 + Left = 75 + Right = 76 + Back = 77 + Tower = 78 + Runway = 79 + Chase = 80 + Follow = 81 + FollowWithPanel = 82 + Spot = 83 + FullscreenWithHud = 84 + FullscreenNoHud = 85 diff --git a/Python/xplaneConnect.pyproj b/Python/xplaneConnect.pyproj index c288a9cc..446a9ffc 100644 --- a/Python/xplaneConnect.pyproj +++ b/Python/xplaneConnect.pyproj @@ -5,7 +5,7 @@ 2.0 3c7a940d-17c8-4e91-882f-9bc8b1d2f54b . - src\example.py + src\basicExample.py . @@ -24,8 +24,14 @@ false + + Code + + + Code + - + Code diff --git a/README.md b/README.md index 0065c566..774afc9f 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ The X-Plane Connect (XPC) Toolbox is an open source research tool used to interact with the commercial flight simulator software X-Plane. XPC allows users to control aircraft and receive state information from aircraft simulated in -X-Plane using functions written in C, C++, Java, or MATLAB in real time over the +X-Plane using functions written in C, C++, Java, MATLAB, or Python in real time over the network. This research tool has been used to visualize flight paths, test control algorithms, simulate an active airspace, or generate out-the-window visuals for in-house flight simulation software. Possible applications include active control diff --git a/TestScripts/C Tests.win/CTests.vcxproj b/TestScripts/C Tests.win/CTests.vcxproj index c057e7dc..6c557441 100644 --- a/TestScripts/C Tests.win/CTests.vcxproj +++ b/TestScripts/C Tests.win/CTests.vcxproj @@ -21,9 +21,20 @@ + + + + + + + + + + + {BC701AF4-552C-4C9D-82A1-B352542783A4} diff --git a/TestScripts/C Tests.win/CTests.vcxproj.filters b/TestScripts/C Tests.win/CTests.vcxproj.filters index cd3ca2c1..6e294b0a 100644 --- a/TestScripts/C Tests.win/CTests.vcxproj.filters +++ b/TestScripts/C Tests.win/CTests.vcxproj.filters @@ -21,10 +21,40 @@ Source Files + + Source Files + Header Files + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + \ No newline at end of file diff --git a/TestScripts/C Tests.xcodeproj/project.pbxproj b/TestScripts/C Tests.xcodeproj/project.pbxproj index 6235e485..a9335297 100644 --- a/TestScripts/C Tests.xcodeproj/project.pbxproj +++ b/TestScripts/C Tests.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + BE7CF6311B0CFA34008B1E07 /* Test.c in Sources */ = {isa = PBXBuildFile; fileRef = BE7CF62B1B0CFA34008B1E07 /* Test.c */; }; BEB0F5071A28F9A3001975A6 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = BEB0F5061A28F9A3001975A6 /* main.c */; }; BEB0F5091A28F9A3001975A6 /* C_Tests.1 in CopyFiles */ = {isa = PBXBuildFile; fileRef = BEB0F5081A28F9A3001975A6 /* C_Tests.1 */; }; BEB0F5111A28F9D5001975A6 /* xplaneConnect.c in Sources */ = {isa = PBXBuildFile; fileRef = BEB0F50F1A28F9D5001975A6 /* xplaneConnect.c */; }; @@ -27,6 +28,17 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + BE7CF6261B0CFA34008B1E07 /* CtrlTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CtrlTests.h; sourceTree = ""; }; + BE7CF6271B0CFA34008B1E07 /* DataTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DataTests.h; sourceTree = ""; }; + BE7CF6281B0CFA34008B1E07 /* DrefTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DrefTests.h; sourceTree = ""; }; + BE7CF6291B0CFA34008B1E07 /* PosiTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PosiTests.h; sourceTree = ""; }; + BE7CF62A1B0CFA34008B1E07 /* SimuTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimuTests.h; sourceTree = ""; }; + BE7CF62B1B0CFA34008B1E07 /* Test.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = Test.c; sourceTree = ""; }; + BE7CF62C1B0CFA34008B1E07 /* Test.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Test.h; sourceTree = ""; }; + BE7CF62D1B0CFA34008B1E07 /* TextTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextTests.h; sourceTree = ""; }; + BE7CF62E1B0CFA34008B1E07 /* UDPTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UDPTests.h; sourceTree = ""; }; + BE7CF62F1B0CFA34008B1E07 /* ViewTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewTests.h; sourceTree = ""; }; + BE7CF6301B0CFA34008B1E07 /* WyptTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WyptTests.h; sourceTree = ""; }; BEB0F5031A28F9A3001975A6 /* C Tests */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "C Tests"; sourceTree = BUILT_PRODUCTS_DIR; }; BEB0F5061A28F9A3001975A6 /* main.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = ""; }; BEB0F5081A28F9A3001975A6 /* C_Tests.1 */ = {isa = PBXFileReference; lastKnownFileType = text.man; path = C_Tests.1; sourceTree = ""; }; @@ -66,6 +78,17 @@ BEB0F5051A28F9A3001975A6 /* C Tests */ = { isa = PBXGroup; children = ( + BE7CF6261B0CFA34008B1E07 /* CtrlTests.h */, + BE7CF6271B0CFA34008B1E07 /* DataTests.h */, + BE7CF6281B0CFA34008B1E07 /* DrefTests.h */, + BE7CF6291B0CFA34008B1E07 /* PosiTests.h */, + BE7CF62A1B0CFA34008B1E07 /* SimuTests.h */, + BE7CF62B1B0CFA34008B1E07 /* Test.c */, + BE7CF62C1B0CFA34008B1E07 /* Test.h */, + BE7CF62D1B0CFA34008B1E07 /* TextTests.h */, + BE7CF62E1B0CFA34008B1E07 /* UDPTests.h */, + BE7CF62F1B0CFA34008B1E07 /* ViewTests.h */, + BE7CF6301B0CFA34008B1E07 /* WyptTests.h */, BEB0F5061A28F9A3001975A6 /* main.c */, BEB0F5081A28F9A3001975A6 /* C_Tests.1 */, ); @@ -126,6 +149,7 @@ BEB0F5111A28F9D5001975A6 /* xplaneConnect.c in Sources */, BEB0F5121A28F9D5001975A6 /* xplaneConnect.h in Sources */, BEB0F5071A28F9A3001975A6 /* main.c in Sources */, + BE7CF6311B0CFA34008B1E07 /* Test.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/TestScripts/C Tests/CtrlTests.h b/TestScripts/C Tests/CtrlTests.h new file mode 100644 index 00000000..7b9e4459 --- /dev/null +++ b/TestScripts/C Tests/CtrlTests.h @@ -0,0 +1,188 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef CTRLTESTS_H +#define CTRLTESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +int doCTRLTest(char* drefs[7], float values[], int size, int ac, float expected[7]) +{ + float* data[7]; + int sizes[7]; + for (int i = 0; i < 7; ++i) + { + data[i] = (float*)malloc(sizeof(float) * 16); + sizes[i] = 16; + } + + // Execute command + XPCSocket sock = openUDP(IP); + int result = sendCTRL(sock, values, size, ac); + if (result >= 0) + { + result = getDREFs(sock, drefs, data, 7, sizes); + } + closeUDP(sock); + if (result < 0) + { + return -1; + } + + // Test values + float actual[7]; + for (int i = 0; i < 7; ++i) + { + actual[i] = data[i][0]; + } + return compareArray(expected, actual, 7); +} + +int doGETCTest(float values[7], int ac, float expected[7]) +{ + // Execute Test + float actual[7]; + XPCSocket sock = openUDP(IP); + int result = sendCTRL(sock, values, 7, ac); + if (result >= 0) + { + result = getCTRL(sock, actual, ac); + } + closeUDP(sock); + if (result < 0) + { + return -1; + } + + // Test values + for (int i = 0; i < 7; ++i) + { + if (fabs(expected[i] - actual[i]) > 1e-4) + { + return -10 - i; + } + } + return 0; +} + +int basicCTRLTest(char** drefs, int ac) +{ + // Set control surfaces to known state. + float CTRL[6] = { 0.0F, 0.0F, 0.0F, 0.8F, 1.0F, 0.5F }; + float expected[7] = { 0.0F, 0.0F, 0.0F, NAN, NAN, NAN, NAN }; + int result = doCTRLTest(drefs, CTRL, 3, ac, expected); + if (result < 0) + { + return -10000 + result; + } + + // Test control surfaces and set other values to known state. + expected[0] = CTRL[0] = 0.2F; + expected[1] = CTRL[1] = 0.1F; + expected[2] = CTRL[2] = 0.1F; + expected[3] = 0.8F; + expected[4] = 1.0F; + expected[5] = 0.5F; + result = doCTRLTest(drefs, CTRL, 6, ac, expected); + if (result < 0) + { + return -20000 + result; + } + + // Test other values and verify control surfaces unchanged. + CTRL[0] = -998; + CTRL[1] = -998; + CTRL[2] = -998; + expected[3] = CTRL[3] = 0.9F; + expected[4] = CTRL[4] = 0.0F; + expected[5] = CTRL[5] = 0.75F; + result = doCTRLTest(drefs, CTRL, 6, ac, expected); + if (result < 0) + { + return -30000 + result; + } + return 0; +} + +int testCTRL_Player() +{ + char* drefs[] = + { + "sim/cockpit2/controls/yoke_pitch_ratio", + "sim/cockpit2/controls/yoke_roll_ratio", + "sim/cockpit2/controls/yoke_heading_ratio", + "sim/flightmodel/engine/ENGN_thro", + "sim/cockpit/switches/gear_handle_status", + "sim/flightmodel/controls/flaprqst", + "sim/flightmodel/controls/sbrkrqst" + }; + return basicCTRLTest(drefs, 0); +} + +int testCTRL_NonPlayer() +{ + char* drefs[] = + { + "sim/multiplayer/position/plane1_yolk_pitch", + "sim/multiplayer/position/plane1_yolk_roll", + "sim/multiplayer/position/plane1_yolk_yaw", + "sim/multiplayer/position/plane1_throttle", + "sim/multiplayer/position/plane1_gear_deploy", + "sim/multiplayer/position/plane1_flap_ratio", + "sim/multiplayer/position/plane1_sbrkrqst" + }; + return basicCTRLTest(drefs, 1); +} + +int testCTRL_Speedbrakes() +{ + char* drefs[] = + { + "sim/cockpit2/controls/yoke_pitch_ratio", + "sim/cockpit2/controls/yoke_roll_ratio", + "sim/cockpit2/controls/yoke_heading_ratio", + "sim/flightmodel/engine/ENGN_thro", + "sim/cockpit/switches/gear_handle_status", + "sim/flightmodel/controls/flaprqst", + "sim/flightmodel/controls/sbrkrqst" + }; + + // Arm + float CTRL[7] = { -998, -998, -998, -998, -998, -998, -0.5F }; + float expected[7] = { NAN, NAN, NAN, NAN, NAN, NAN, -0.5F }; + int result = doCTRLTest(drefs, CTRL, 7, 0, expected); + if (result < 0) + { + return -10000 + result; + } + + // Set to full + expected[6] = CTRL[6] = 1.5F; + result = doCTRLTest(drefs, CTRL, 7, 0, expected); + if (result < 0) + { + return -20000 + result; + } + + // Retract + expected[6] = CTRL[6] = 0.0F; + result = doCTRLTest(drefs, CTRL, 7, 0, expected); + if (result < 0) + { + return -30000 + result; + } + return 0; +} + +int testGETC() +{ + float CTRL[7] = { 0.0F, 0.0F, 0.0F, 0.8F, 1.0F, 0.5F, -1.5F }; + return doGETCTest(CTRL, 0, CTRL); +} + +int testGETC_NonPlayer() +{ + float CTRL[7] = { 0.0F, 0.0F, 0.0F, 0.8F, 1.0F, 0.5F, -1.5F }; + return doGETCTest(CTRL, 2, CTRL); +} +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/DataTests.h b/TestScripts/C Tests/DataTests.h new file mode 100644 index 00000000..2bf15647 --- /dev/null +++ b/TestScripts/C Tests/DataTests.h @@ -0,0 +1,62 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef DATATESTS_H +#define DATATESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +int testDATA() +{ + // Initialize + int i, j; // Iterator + char* drefs[100] = + { + "sim/aircraft/parts/acf_gear_deploy" + }; + float* data[100]; // array for result of getDREFs + int sizes[100]; + float DATA[4][9]; // Array for sendDATA + XPCSocket sock = openUDP(IP); + + // Setup + for (int i = 0; i < 100; ++i) + { + data[i] = (float*)malloc(40 * sizeof(float)); + sizes[i] = 40; + } + for (i = 0; i < 4; i++) + { + for (j = 0; j < 9; j++) + { + data[i][j] = -998; + } + } + DATA[0][0] = 14; // Gear + DATA[0][1] = 1; + DATA[0][2] = 0; + + // Execution + sendDATA(sock, DATA, 1); + int result = getDREFs(sock, drefs, data, 1, sizes); + + // Close + closeUDP(sock); + + // Tests + if (result < 0)// Request 1 value + { + return -1; + } + if (sizes[0] != 10) + { + return -2; + } + if (*data[0] != data[0][1]) + { + return -3; + } + return 0; +} + +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/DrefTests.h b/TestScripts/C Tests/DrefTests.h new file mode 100644 index 00000000..50338a7f --- /dev/null +++ b/TestScripts/C Tests/DrefTests.h @@ -0,0 +1,247 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef DREFTESTS_H +#define DREFTESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +int doGETDTest(char* drefs[], float* expected[], int count, int sizes[]) +{ + // Setup memory + int* asizes = (int*)malloc(sizeof(int) * count); + float** actual = (float**)malloc(sizeof(float*) * count); + for (int i = 0; i < count; ++i) + { + asizes[i] = sizes[i]; + actual[i] = (float*)malloc(sizeof(float) * sizes[i]); + } + + // Execute command + XPCSocket sock = openUDP(IP); + int result = getDREFs(sock, drefs, actual, count, asizes); + closeUDP(sock); + if (result < 0) + { + return -1; + } + + // Test sizes and values + result = compareArrays(expected, sizes, actual, asizes, count); + for (int i = 0; i < count; ++i) + { + free(actual[i]); + } + free(actual); + free(asizes); + return result; +} + +int doDREFTest(char* drefs[], float* values[], float* expected[], int count, int sizes[]) +{ + // Setup memory + int* asizes = (int*)malloc(sizeof(int) * count); + float** actual = (float**)malloc(sizeof(float*) * count); + for (int i = 0; i < count; ++i) + { + asizes[i] = sizes[i]; + actual[i] = (float*)malloc(sizeof(float) * sizes[i]); + } + + // Execute command + XPCSocket sock = openUDP(IP); + int result = sendDREFs(sock, drefs, values, sizes, count); + if (result >= 0) + { + result = getDREFs(sock, drefs, actual, count, asizes); + } + closeUDP(sock); + if (result < 0) + { + return -1; + } + + // Test sizes and values + result = compareArrays(expected, sizes, actual, asizes, count); + for (int i = 0; i < count; ++i) + { + free(actual[i]); + } + free(actual); + free(asizes); + return result; +} + +int testGETD_Basic() +{ + char* drefs[] = + { + "sim/cockpit/switches/gear_handle_status", //int + "sim/cockpit/autopilot/altitude", //float + "sim/aircraft/prop/acf_prop_type", //int[8] + "sim/cockpit2/switches/panel_brightness_ratio", //float[4] + "sim/aircraft/view/acf_tailnum", //byte[40] + "sim/flightmodel/position/elevation" //double + }; + int sizes[] = { 1, 1, 8, 4, 40, 1 }; + float* expected[6]; + for (int i = 0; i < 6; ++i) + { + expected[i] = (float*)malloc(sizeof(float) * sizes[i]); + for (int j = 0; j < sizes[i]; ++j) + { + expected[i][j] = NAN; + } + } + + return doGETDTest(drefs, expected, 6, sizes); +} + +int testGETD_TestFloat() +{ + char* dref = "sim/test/test_float"; + int size = 1; + float* expected[1]; + expected[0] = (float*)malloc(sizeof(float)); + expected[0][0] = 0.0F; + + int result = doGETDTest(&dref, &expected, 1, &size); + free(expected[0]); + return result; +} + +int testGETD_Types() +{ + char* drefs[] = + { + "sim/cockpit/switches/gear_handle_status", //int + "sim/cockpit/autopilot/altitude", //float + "sim/aircraft/prop/acf_prop_type", //int[8] + "sim/cockpit2/switches/panel_brightness_ratio", //float[4] + "sim/aircraft/view/acf_tailnum", //byte[40] + "sim/flightmodel/position/elevation" //double + }; + int sizes[] = { 1, 1, 8, 4, 40, 1 }; + float* data[6]; + for (int i = 0; i < 6; ++i) + { + data[i] = (float*)malloc(sizeof(float) * sizes[i]); + } + + // Execute command + XPCSocket sock = openUDP(IP); + int result = getDREFs(sock, drefs, data, 6, sizes); + closeUDP(sock); + + // Tests + if (result < 0) + { + return -1; + } + // Verify sizes + if (sizes[0] != 1 || sizes[1] != 1 || sizes[2] != 8 + || sizes[3] != 4 || sizes[4] != 40 || sizes[5] != 1) + { + return -2; + } + // Verify integer drefs are integers + if ((float)((int)data[0][0]) != data[0][0]) + { + return -3; + } + for (int i = 0; i < 8; ++i) + { + if ((float)((int)data[2][i]) != data[2][i]) + { + return -3; + } + } + for (int i = 0; i < 40; ++i) + { + if ((float)((char)data[4][i]) != data[4][i]) + { + return -3; + } + } + // Verify tail number has at least one valid character + if (data[4][0] <= 0 || data[4][0] > 127) + { + return -4; + } + return 0; +} + +int testDREF() +{ + char* drefs[] = + { + "sim/cockpit/switches/gear_handle_status", //int + "sim/cockpit/autopilot/altitude", //float + "sim/aircraft/prop/acf_prop_type", //int[8] + "sim/cockpit2/switches/panel_brightness_ratio", //float[4] + "sim/aircraft/view/acf_tailnum", //byte[40] + "sim/flightmodel/position/elevation" //double - Read only + }; + float* values[6]; + float* expected[6]; + int sizes[6]; + + // Setup + sizes[0] = 1; + values[0] = (float*)malloc(sizes[0] * sizeof(float)); + expected[0] = values[0]; + values[0][0] = 1; + + sizes[1] = 1; + values[1] = (float*)malloc(sizes[1] * sizeof(float)); + expected[1] = values[1]; + values[1][0] = 4000.0F; + + sizes[2] = 8; + values[2] = (float*)malloc(sizes[2] * sizeof(float)); + expected[2] = values[2]; + for (int i = 0; i < 8; ++i) + { + values[2][i] = 0; + } + + sizes[3] = 4; + values[3] = (float*)malloc(sizes[3] * sizeof(float)); + expected[3] = values[3]; + for (int i = 0; i < 4; ++i) + { + values[3][i] = 0.25F; + } + + sizes[4] = 40; + values[4] = (float*)malloc(sizes[4] * sizeof(float)); + expected[4] = (float*)malloc(sizes[4] * sizeof(float)); + memset(values[4], 0, sizes[4] * sizeof(float)); + values[4][0] = 78.0F; //N + values[4][1] = 55.0F; //7 + values[4][2] = 52.0F; //4 + values[4][3] = 56.0F; //8 + values[4][4] = 53.0F; //5 + values[4][5] = 89.0F; //Y + + expected[4][0] = 78.0F; //N + expected[4][1] = 55.0F; //7 + expected[4][2] = 52.0F; //4 + expected[4][3] = 56.0F; //8 + expected[4][4] = 53.0F; //5 + expected[4][5] = 89.0F; //Y + for (int i = 6; i < sizes[4]; ++i) + { + expected[4][i] = NAN; + } + + sizes[5] = 1; + values[5] = (float*)malloc(sizes[5] * sizeof(float)); + expected[5] = (float*)malloc(sizes[5] * sizeof(float)); + values[5][0] = 5000.0F; + expected[5][0] = NAN; + + return doDREFTest(drefs, values, expected, 6, sizes); +} + +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/PosiTests.h b/TestScripts/C Tests/PosiTests.h new file mode 100644 index 00000000..104e517a --- /dev/null +++ b/TestScripts/C Tests/PosiTests.h @@ -0,0 +1,158 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef POSITESTS_H +#define POSITESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +int doPOSITest(char* drefs[7], float values[], int size, int ac, float expected[7]) +{ + float* data[7]; + int sizes[7]; + for (int i = 0; i < 7; ++i) + { + data[i] = (float*)malloc(sizeof(float) * 10); + sizes[i] = 10; + } + + // Execute command + XPCSocket sock = openUDP(IP); + pauseSim(sock, 1); + int result = sendPOSI(sock, values, size, ac); + if (result >= 0) + { + result = getDREFs(sock, drefs, data, 7, sizes); + } + pauseSim(sock, 0); + closeUDP(sock); + if (result < 0) + { + return -1; + } + + // Test values + float actual[7]; + for (int i = 0; i < 7; ++i) + { + actual[i] = data[i][0]; + } + return compareArray(expected, actual, 7); +} + +int doGETPTest(float values[7], int ac, float expected[7]) +{ + // Execute Test + float actual[7]; + XPCSocket sock = openUDP(IP); + int result = sendPOSI(sock, values, 7, ac); + if (result >= 0) + { + result = getPOSI(sock, actual, ac); + } + closeUDP(sock); + if (result < 0) + { + return -1; + } + + // Test values + for (int i = 0; i < 7; ++i) + { + if (fabs(expected[i] - actual[i]) > 1e-4) + { + return -10 - i; + } + } + return 0; +} + +int basicPOSITest(char** drefs, int ac) +{ + // Set psoition and initial orientation + float POSI[7] = { 37.524F, -122.06899F, 2500, 0, 0, 0, 1 }; + float expected[7] = { 37.524F, -122.06899F, 2500, 0, 0, 0, 1 }; + int result = doPOSITest(drefs, POSI, 7, ac, expected); + if (result < 0) + { + return -10000 + result; + } + + // Set orientation + POSI[0] = -998.0F; + POSI[1] = -998.0F; + POSI[2] = -998.0F; + POSI[3] = 5.0F; + POSI[4] = -5.0F; + POSI[5] = 10.0F; + POSI[6] = 0; + + float *loc[3]; + for (int i = 0; i < 3; ++i) + { + loc[i] = (float*)malloc(sizeof(float)); + } + int sizes[3] = { 1, 1, 1 }; + XPCSocket sock = openUDP(IP); + pauseSim(sock, 1); + getDREFs(sock, drefs, loc, 3, sizes); + closeUDP(sock); + + expected[0] = loc[0][0]; + expected[1] = loc[1][0]; + expected[2] = loc[2][0]; + expected[3] = 5.0F; + expected[4] = -5.0F; + expected[5] = 10.0F; + expected[6] = 0.0F; + result = doPOSITest(drefs, POSI, 7, ac, expected); + if (result < 0) + { + return -20000 + result; + } + return 0; +} + +int testPOSI_Player() +{ + char* drefs[] = + { + "sim/flightmodel/position/latitude", + "sim/flightmodel/position/longitude", + "sim/flightmodel/position/elevation", + "sim/flightmodel/position/theta", + "sim/flightmodel/position/phi", + "sim/flightmodel/position/psi", + "sim/cockpit/switches/gear_handle_status" + }; + return basicPOSITest(drefs, 0); +} + +int testPOSI_NonPlayer() +{ + char* drefs[] = + { + "sim/multiplayer/position/plane1_lat", + "sim/multiplayer/position/plane1_lon", + "sim/multiplayer/position/plane1_el", + "sim/multiplayer/position/plane1_the", + "sim/multiplayer/position/plane1_phi", + "sim/multiplayer/position/plane1_psi", + "sim/multiplayer/position/plane1_gear_deploy" + }; + return basicPOSITest(drefs, 1); +} + +int testGetPOSI_Player() +{ + float POSI[7] = { 37.524F, -122.06899F, 2500, 0, 0, 0, 1 }; + return doGETPTest(POSI, 0, POSI); +} + +int testGetPOSI_NonPlayer() +{ + float POSI[7] = { 37.624F, -122.06899F, 1500, 0, 0, 0, 1 }; + return doGETPTest(POSI, 3, POSI); +} + +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/SimuTests.h b/TestScripts/C Tests/SimuTests.h new file mode 100644 index 00000000..0d120123 --- /dev/null +++ b/TestScripts/C Tests/SimuTests.h @@ -0,0 +1,81 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef SIMUTESTS_H +#define SIMIUTESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +int doSIMUTest(int value, float expected) +{ + int size = 20; + float actual[20]; + char* dref = "sim/operation/override/override_planepath"; + + XPCSocket sock = openUDP(IP); + int result = pauseSim(sock, value); + if (result >= 0) + { + result = getDREF(sock, dref, &actual, &size); + } + closeUDP(sock); + if (result < 0) + { + return -1; + } + + for (int i = 0; i < 20; ++i) + { + if (!feq(actual[i], expected) && !isnan(expected)) + { + return -100 - i; + } + } + return 0; +} + +int testSIMU_Basic() +{ + int result = doSIMUTest(0, 0); + if (result < 0) + { + return -1; + } + + result = doSIMUTest(1, 1); + if (result < 0) + { + return -2; + } + + result = doSIMUTest(0, 0); + if (result < 0) + { + return -3; + } + return 0; +} + +int testSIMU_Toggle() +{ + int result = doSIMUTest(0, 0); + if (result < 0) + { + return -1; + } + + result = doSIMUTest(2, 1); + if (result < 0) + { + return -1; + } + + result = doSIMUTest(2, 0); + if (result < 0) + { + return -3; + } + return 0; +} + +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/Test.c b/TestScripts/C Tests/Test.c new file mode 100644 index 00000000..cce713c0 --- /dev/null +++ b/TestScripts/C Tests/Test.c @@ -0,0 +1,51 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#include "Test.h" + +int testFailed = 0; +int testPassed = 0; + +void runTest(int(*test)(), char* name) +{ + printf("Running test %s... ", name); + int result = test(); // Run Test + if (result == 0) + { + printf("PASSED\n"); + testPassed++; + } + else + { + printf("Test %s - FAILED\n\tError: %i\n", name, result); + testFailed++; + } +} + +int compareFloat(float expected, float actual) +{ + return feq(expected, actual) || isnan(expected) ? 0 : -1; +} + +int compareArray(float expected[], float actual[], int size) +{ + return compareArrays(&expected, &size, &actual, &size, 1); +} + +int compareArrays(float* expected[], int esizes[], float* actual[], int asizes[], int count) +{ + for (int i = 0; i < count; ++i) + { + if (esizes[i] != asizes[i]) + { + return -100 - i; + } + for (int j = 0; j < esizes[i]; ++j) + { + if (!feq(actual[i][j], expected[i][j]) && !isnan(expected[i][j])) + { + return -1000 - i * 100 - j; + } + } + } + return 0; +} \ No newline at end of file diff --git a/TestScripts/C Tests/Test.h b/TestScripts/C Tests/Test.h new file mode 100644 index 00000000..c05a5eb4 --- /dev/null +++ b/TestScripts/C Tests/Test.h @@ -0,0 +1,25 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef TESTRUNNER_H +#define TESTRUNNER_H + +#include +#include +#include +#include +#include + +#define feq(x, y) (fabs(x - y) < 1e-4) + +#define IP "127.0.0.1" + +extern int testFailed; +extern int testPassed; + +void runTest(int(*test)(), char* name); + +int compareFloat(float expected, float actual); +int compareArray(float expected[], float actual[], int size); +int compareArrays(float* expected[], int esizes[], float* actual[], int asizes[], int count); + +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/TextTests.h b/TestScripts/C Tests/TextTests.h new file mode 100644 index 00000000..badf16ee --- /dev/null +++ b/TestScripts/C Tests/TextTests.h @@ -0,0 +1,32 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef TEXTTESTS_H +#define TEXTTESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +int testTEXT() +{ + // Setup + XPCSocket sendPort = openUDP(IP); + int x = 100; + int y = 700; + char* msg = "This is an X-Plane Connect test message.\nThis should be a new line.\r\nThat will be parsed as two line breaks."; + + // Test + sendTEXT(sendPort, msg, x, y); + // NOTE: Manually verify that msg appears on the screen in X-Plane! + + sendTEXT(sendPort, "Another test message", x, y); + // NOTE: Manually verify that msg appears on the screen and that no part of the previous + // message is visible. + + sendTEXT(sendPort, NULL, -1, -1); + + // Cleanup + closeUDP(sendPort); + return 0; +} + +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/UDPTests.h b/TestScripts/C Tests/UDPTests.h new file mode 100644 index 00000000..3c3d3fac --- /dev/null +++ b/TestScripts/C Tests/UDPTests.h @@ -0,0 +1,55 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef UDPTESTS_H +#define UDPTESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +int testOpen() +{ + XPCSocket sock = openUDP("localhost"); + int result = strncmp(sock.xpIP, "127.0.0.1", 16); + closeUDP(sock); + return result; +} + +int testClose() +{ + XPCSocket sendPort = aopenUDP(IP, 49009, 49063); + closeUDP(sendPort); + sendPort = aopenUDP(IP, 49009, 49063); + closeUDP(sendPort); + return 0; +} + +int testCONN() +{ + // Initialize + char* drefs[] = + { + "sim/cockpit/switches/gear_handle_status" + }; + float data[1]; + int size = 1; + XPCSocket sock = openUDP(IP); +#if (__APPLE__ || __linux) + usleep(0); +#endif + + // Execution + setCONN(&sock, 49055); + int result = getDREF(sock, drefs[0], data, &size); + + // Close + closeUDP(sock); + + // Test + if (result < 0)// No data received + { + return -1; + } + return 0; +} + +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/ViewTests.h b/TestScripts/C Tests/ViewTests.h new file mode 100644 index 00000000..a25c14fb --- /dev/null +++ b/TestScripts/C Tests/ViewTests.h @@ -0,0 +1,73 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef VIEWTESTS_H +#define VIEWTESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +typedef enum +{ + XPC_VDREF_FORWARDS = 1000, + XPC_VDREF_DOWN4 = 1001, + XPC_VDREF_DOWN8 = 1002, + XPC_VDREF_LEFT45 = 1004, + XPC_VDREF_RIGHT45 = 1005, + XPC_VDREF_LEFT90 = 1006, + XPC_VDREF_RIGHT90 = 1007, + XPC_VDREF_LEFT135 = 1008, + XPC_VDREF_RIGHT135 = 1009, + XPC_VDREF_BACKWARD = 1010, + XPC_VDREF_LEFTUP = 1011, + XPC_VDREF_RIGHTUP = 1012, + XPC_VDREF_AIRPORTBEACONTOWER = 1014, + XPC_VDREF_ONRUNWAY = 1015, + XPC_VDREF_CHASE = 1017, + XPC_VDREF_FOLLOW = 1018, + XPC_VDREF_FOLLOWWITHPANEL = 1019, + XPC_VDREF_SPOT = 1020, + XPC_VDREF_SPOTMOVING = 1021, + XPC_VDREF_FULLSCREENWITHHUD = 1023, + XPC_VDREF_FULLSCREENNOHUD = 1024, + XPC_VDREF_STRAIGHTDOWN = 1025, + XPC_VDREF_3DCOCKPIT = 1026 +} VIEW_DREF; + +int doViewTest(VIEW_TYPE viewCommand, VIEW_DREF viewResult) +{ + // Setup + char* dref = "sim/graphics/view/view_type"; + float value; + int size = 1; + + // Execute command + XPCSocket sock = openUDP(IP); + int result = sendVIEW(sock, viewCommand); + if (result >= 0) + { + result = getDREF(sock, dref, &value, &size); + } + closeUDP(sock); + if (result < 0) + { + return -1; + } + + if ((int)value != viewResult) + { + return -2; + } + return 0; +} + +int testView() +{ + int result = doViewTest(XPC_VIEW_FORWARDS, XPC_VDREF_FORWARDS); + if (result < 0) + { + return -1; + } + + return doViewTest(XPC_VIEW_CHASE, XPC_VDREF_CHASE); +} +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/WyptTests.h b/TestScripts/C Tests/WyptTests.h new file mode 100644 index 00000000..fce3c2cd --- /dev/null +++ b/TestScripts/C Tests/WyptTests.h @@ -0,0 +1,42 @@ +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#ifndef WYPTTESTS_H +#define WYPTTESTS_H + +#include "Test.h" +#include "xplaneConnect.h" + +int testWYPT() +{ + // Setup + XPCSocket sock = openUDP(IP); + float points[] = + { + 37.5245F, -122.06899F, 2500, + 37.455397F, -122.050037F, 2500, + 37.469567F, -122.051411F, 2500, + 37.479376F, -122.060509F, 2300, + 37.482237F, -122.076130F, 2100, + 37.474881F, -122.087288F, 1900, + 37.467660F, -122.079391F, 1700, + 37.466298F, -122.090549F, 1500, + 37.362562F, -122.039223F, 1000, + 37.361448F, -122.034416F, 1000, + 37.361994F, -122.026348F, 1000, + 37.365541F, -122.022572F, 1000, + 37.373727F, -122.024803F, 1000, + 37.403869F, -122.041283F, 50, + 37.418544F, -122.049222F, 6 + }; + + // Test + sendWYPT(sock, XPC_WYPT_CLR, NULL, 0); + sendWYPT(sock, XPC_WYPT_ADD, points, 15); + // NOTE: Visually ensure waypoints are added in the sim + + // Cleanup + closeUDP(sock); + return 0; +} + +#endif \ No newline at end of file diff --git a/TestScripts/C Tests/main.c b/TestScripts/C Tests/main.c index 5f84eb81..26428eb2 100644 --- a/TestScripts/C Tests/main.c +++ b/TestScripts/C Tests/main.c @@ -1,1029 +1,15 @@ -// -// main.cpp -// XPC Tests -// -// Created by Chris Teubert on 11/25/14. -// Copyright (c) 2014 Chris Teubert. All rights reserved. -// - -#include -#include -#include -#include -#include -#include "xplaneConnect.h" - -#define IP "127.0.0.1" - -int testFailed = 0; -int testPassed = 0; - -void runTest(int (*test)(), char* name) -{ - int result = test(); // Run Test - printf("Test %i: %s - ", testPassed + testFailed + 1, name); - if (result == 0) - { - printf("PASSED\n"); - testPassed++; - } - else - { - printf("FAILED\n\tError: %i\n", result); - testFailed++; - } -} - -int openTest() // openUDP Test -{ - XPCSocket sock = openUDP("localhost"); - int result = strncmp(sock.xpIP, "127.0.0.1", 16); - closeUDP(sock); - return result; -} - -int closeTest() // closeUDP test -{ - XPCSocket sendPort = aopenUDP(IP, 49009, 49063); - closeUDP(sendPort); - sendPort = aopenUDP(IP, 49009, 49063); - closeUDP(sendPort); - return 0; -} - -int sendTEXTTest() -{ - // Setup - XPCSocket sendPort = openUDP(IP); - int x = 100; - int y = 700; - char* msg = "This is an X-Plane Connect test message.\nThis should be a new line.\r\nThat will be parsed as two line breaks."; - - // Test - sendTEXT(sendPort, msg, x, y); - // NOTE: Manually verify that msg appears on the screen in X-Plane! - - sendTEXT(sendPort, "Another test message", x, y); - // NOTE: Manually verify that msg appears on the screen and that no part of the previous - // message is visible. - - sendTEXT(sendPort, NULL, -1, -1); - - // Cleanup - closeUDP(sendPort); - return 0; -} - -int getDREFTest() // Request DREF Test (Required for next tests) -{ - // Initialization - // Get one DREF of each type (int, float, int[], float[], double, byte[]) - #define GETD_COUNT 6 - char* drefs[GETD_COUNT] = - { - "sim/cockpit/switches/gear_handle_status", //int - "sim/cockpit/autopilot/altitude", //float - "sim/aircraft/prop/acf_prop_type", //int[8] - "sim/cockpit2/switches/panel_brightness_ratio", //float[4] - "sim/aircraft/view/acf_tailnum", //byte[40] - "sim/flightmodel/position/elevation" //double - }; - float* data[GETD_COUNT]; - int sizes[GETD_COUNT]; - XPCSocket sock = openUDP(IP); - - // Setup - for (int i = 0; i < GETD_COUNT; ++i) - { - data[i] = (float*)malloc(256 * sizeof(float)); - sizes[i] = 256; - } - - // Execution - int result = getDREFs(sock, drefs, data, GETD_COUNT, sizes); - - // Close - closeUDP(sock); - - // Tests - if (result < 0) - { - return -1; - } - // Verify sizes - if (sizes[0] != 1 || sizes[1] != 1 || sizes[2] != 8 - || sizes[3] != 4 || sizes[4] != 40 || sizes[5] != 1) - { - return -2; - } - // Verify integer drefs are integers - if ((float)((int)data[0][0]) != data[0][0]) - { - return -3; - } - for (int i = 0; i < 8; ++i) - { - if ((float)((int)data[2][i]) != data[2][i]) - { - return -3; - } - } - for (int i = 0; i < 40; ++i) - { - if ((float)((char)data[4][i]) != data[4][i]) - { - return -3; - } - } - // Verify tail number has at least one valid character - if (data[4][0] <= 0 || data[4][0] > 127) - { - return -4; - } - return 0; -} - -int sendDREFTest() // sendDREF test -{ - // Initialization - // Set one DREF of each type (int, float, int[], float[], double, byte[]) - // Also set one read-only to make sure it fails - #define DREF_COUNT 6 - char* drefs[DREF_COUNT] = - { - "sim/cockpit/switches/gear_handle_status", //int - "sim/cockpit/autopilot/altitude", //float - "sim/aircraft/prop/acf_prop_type", //int[8] - "sim/cockpit2/switches/panel_brightness_ratio", //float[4] - "sim/aircraft/view/acf_tailnum", //byte[40] - "sim/flightmodel/position/elevation" //double - Read only - }; - float* data[DREF_COUNT]; - int sizes[DREF_COUNT]; - float* values[DREF_COUNT]; - XPCSocket sock = openUDP(IP); - - // Setup - sizes[0] = 1; - values[0] = (float*)malloc(sizes[0] * sizeof(float)); - values[0][0] = 1; - - sizes[1] = 1; - values[1] = (float*)malloc(sizes[1] * sizeof(float)); - values[1][0] = 4000.0F; - - sizes[2] = 8; - values[2] = (float*)malloc(sizes[2] * sizeof(float)); - for (int i = 0; i < 8; ++i) - { - values[2][i] = 0; - } - - sizes[3] = 4; - values[3] = (float*)malloc(sizes[3] * sizeof(float)); - for (int i = 0; i < 4; ++i) - { - values[3][i] = 0.25F; - } - - sizes[4] = 40; - values[4] = (float*)malloc(sizes[4] * sizeof(float)); - memset(values[4], 0, sizes[4] * sizeof(float)); - values[4][0] = 78.0F; //N - values[4][1] = 55.0F; //7 - values[4][2] = 52.0F; //4 - values[4][3] = 56.0F; //8 - values[4][4] = 53.0F; //5 - values[4][5] = 89.0F; //Y - - sizes[5] = 1; - values[5] = (float*)malloc(sizes[5] * sizeof(float)); - values[5][0] = 5000.0F; - - // Execution - for (int i = 0; i < DREF_COUNT; ++i) - { - sendDREF(sock, drefs[i], values[i], sizes[i]); - data[i] = (float*)malloc(256 * sizeof(float)); - sizes[i] = 256; - } - int result = getDREFs(sock, drefs, data, DREF_COUNT, sizes); - - // Close - closeUDP(sock); - - // Tests - if (result < 0) - { - return -1; - } - // Verify gear handle was set - if (sizes[0] != 1 || data[0][0] != 1) - { - return -2; - } - // Verify autopilot altitude was set - if (sizes[1] != 1 || data[1][0] != 4000.0F) - { - return -3; - } - // Verify prop type was set - if (sizes[2] != 8) - { - return -4; - } - for (int i = 0; i < 8; ++i) - { - if (data[2][i] != values[2][i]) - { - return -4; - } - } - // Verify panel brightness was set - if (sizes[3] != 4) - { - return -5; - } - for (int i = 0; i < 4; ++i) - { - if (data[3][i] != values[3][i]) - { - return -5; - } - } - // Verify tail number was set - for (int i = 0; i < 6; ++i) - { - if (data[4][i] != values[4][i]) - { - return -6; - } - } - // Verify aircraft elevation was NOT set - if (sizes[5] != 1 || data[5][0] == 5000.0F) - { - return -7; - } - return 0; -} - -int sendDATATest() // sendDATA test -{ - // Initialize - int i,j; // Iterator - char* drefs[100] = - { - "sim/aircraft/parts/acf_gear_deploy" - }; - float* data[100]; // array for result of getDREFs - int sizes[100]; - float DATA[4][9]; // Array for sendDATA - XPCSocket sock = openUDP(IP); - - // Setup - for (int i = 0; i < 100; ++i) - { - data[i] = (float*)malloc(40 * sizeof(float)); - sizes[i] = 40; - } - for (i = 0; i < 4; i++) - { - for (j = 0; j < 9; j++) - { - data[i][j] = -998; - } - } - DATA[0][0] = 14; // Gear - DATA[0][1] = 1; - DATA[0][2] = 0; - - // Execution - sendDATA(sock, DATA, 1); - int result = getDREFs(sock, drefs, data, 1, sizes); - - // Close - closeUDP(sock); - - // Tests - if ( result < 0 )// Request 1 value - { - return -1; - } - if (sizes[0] != 10) - { - return -2; - } - if (*data[0] != data[0][1]) - { - return -3; - } - return 0; -} - -int psendCTRLTest() // sendCTRL test -{ - // Initialize - char* drefs[100] = - { - "sim/cockpit2/controls/yoke_pitch_ratio", - "sim/cockpit2/controls/yoke_roll_ratio", - "sim/cockpit2/controls/yoke_heading_ratio", - "sim/flightmodel/engine/ENGN_thro", - "sim/cockpit/switches/gear_handle_status", - "sim/flightmodel/controls/flaprqst" - }; - float* data[100]; - int sizes[100]; - float CTRL[6] = { 0.0F, 0.0F, 0.0F, 0.8F, 1.0F, 0.5F }; - XPCSocket sock = openUDP(IP); - - // Setup - for (int i = 0; i < 100; i++) - { - data[i] = (float*)malloc(40 * sizeof(float)); - sizes[i] = 40; - } - - // Execute 1 - // 0 pitch, roll, yaw - sendCTRL(sock, CTRL, 3, 0); - int result = getDREFs(sock, drefs, data, 6, sizes); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -1; - } - for (int i = 0; i < 3; i++) - { - if (fabs(data[i][0] - CTRL[i]) > 1e-4) - { - return -i - 11; - } - } - - sock = openUDP(IP); - // Execute 2 - // Set non-zero pitch, roll, & yaw. Also set throttle, gear, and flaps - CTRL[0] = 0.2F; - CTRL[1] = 0.1F; - CTRL[2] = 0.1F; - sendCTRL(sock, CTRL, 6, 0); - result = getDREFs(sock, drefs, data, 6, sizes); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -2; - } - for (int i = 0; i < 6; i++) - { - if (fabs(data[i][0] - CTRL[i]) > 1e-4) - { - return -i - 21; - } - } - - sock = openUDP(IP); - // Execute 3 - // Set non-zero pitch, roll, & yaw. Also set throttle, gear, and flaps - float expected[] = { data[0][0], data[1][0], data[2][0], CTRL[3], CTRL[4], CTRL[5] }; - CTRL[0] = -998.0F; - CTRL[1] = -998.0F; - CTRL[2] = -998.0F; - sendCTRL(sock, CTRL, 6, 0); - result = getDREFs(sock, drefs, data, 6, sizes); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -3; - } - for (int i = 0; i < 6; i++) - { - if (fabs(data[i][0] - expected[i]) > 1e-2) - { - return -i - 31; - } - } - - return 0; -} - -int sendCTRLTest() -{ - // Initialize - char* drefs[100] = - { - "sim/multiplayer/position/plane1_yolk_pitch", - "sim/multiplayer/position/plane1_yolk_roll", - "sim/multiplayer/position/plane1_yolk_yaw", - "sim/multiplayer/position/plane1_throttle", - "sim/multiplayer/position/plane1_gear_deploy", - "sim/multiplayer/position/plane1_flap_ratio", - }; - float* data[100]; - int sizes[100]; - float CTRL[6] = { 0.0F, 0.0F, 0.0F, 0.8F, 1.0F, 0.5F }; - XPCSocket sock = openUDP(IP); - - // Setup - for (int i = 0; i < 100; i++) - { - data[i] = (float*)malloc(40 * sizeof(float)); - sizes[i] = 40; - } - - // Execute 1 - // 0 pitch, roll, yaw - sendCTRL(sock, CTRL, 3, 1); - int result = getDREFs(sock, drefs, data, 6, sizes); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -1; - } - for (int i = 0; i < 3; i++) - { - if (fabs(data[i][0] - CTRL[i]) > 1e-4) - { - return -i - 11; - } - } - - sock = openUDP(IP); - // Execute 2 - // Set non-zero pitch, roll, & yaw. Also set throttle, gear, and flaps - CTRL[0] = 0.2F; - CTRL[1] = 0.1F; - CTRL[2] = 0.1F; - sendCTRL(sock, CTRL, 6, 1); - result = getDREFs(sock, drefs, data, 6, sizes); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -2; - } - for (int i = 0; i < 6; i++) - { - if (fabs(data[i][0] - CTRL[i]) > 1e-4) - { - return -i - 21; - } - } - - sock = openUDP(IP); - // Execute 3 - // Set non-zero pitch, roll, & yaw. Also set throttle, gear, and flaps - float expected[] = { data[0][0], data[1][0], data[2][0], CTRL[3], CTRL[4], CTRL[5] }; - CTRL[0] = -998.0F; - CTRL[1] = -998.0F; - CTRL[2] = -998.0F; - sendCTRL(sock, CTRL, 6, 1); - result = getDREFs(sock, drefs, data, 6, sizes); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -3; - } - for (int i = 0; i < 6; i++) - { - if (fabs(data[i][0] - expected[i]) > 1e-2) - { - return -i - 31; - } - } - - return 0; -} - - -int sendCTRLspeedbrakeTest() // sendCTRL test -{ - // Initialize - char* dref = "sim/flightmodel/controls/sbrkrqst"; - float data; - int size = 1; - float CTRL[7] = { -998.0F, -998.0F, -998.0F, -998.0F, -998.0F, -998.0F, -0.5F }; - XPCSocket sock = openUDP(IP); - - // Execute 1 - // Arm speedbrakes - sendCTRL(sock, CTRL, 7, 0); - int result = getDREF(sock, dref, &data, &size); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -1; - } - if (fabs(data - CTRL[6]) > 1e-4) - { - return -11; - } - - sock = openUDP(IP); - // Execute 2 - // Set full speedbrakes - CTRL[6] = 1.0F; - sendCTRL(sock, CTRL, 7, 0); - result = getDREF(sock, dref, &data, &size); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -2; - } - if (fabs(data - CTRL[6]) > 1e-4) - { - return -21; - } - - sock = openUDP(IP); - // Execute 3 - // Retract speedbrakes - CTRL[6] = 0.0F; - sendCTRL(sock, CTRL, 7, 0); - result = getDREF(sock, dref, &data, &size); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -3; - } - if (fabs(data - CTRL[6]) > 1e-4) - { - return -31; - } - - sock = openUDP(IP); - // Execute 4 - // Verify -998 does not change value. - CTRL[6] = -998.0F; - sendCTRL(sock, CTRL, 7, 0); - result = getDREF(sock, dref, &data, &size); - - // Close socket - closeUDP(sock); - - // Tests - if (result < 0) - { - return -4; - } - if (data> 1e-4) - { - return -41; - } - - return 0; -} - -int psendPOSITest() // sendPOSI test -{ - // Initialization - int i; // Iterator - char* drefs[100] = - { - "sim/flightmodel/position/latitude", - "sim/flightmodel/position/longitude", - "sim/flightmodel/position/elevation", - "sim/flightmodel/position/theta", - "sim/flightmodel/position/phi", - "sim/flightmodel/position/psi", - "sim/cockpit/switches/gear_handle_status" - }; - float* data[100]; - int sizes[100]; - float POSI[7] = { 37.524F, -122.06899F, 2500, 0, 0, 0, 1 }; - XPCSocket sock = openUDP(IP); - - // Setup - for (i = 0; i < 100; i++) - { - data[i] = (float*)malloc(40 * sizeof(float)); - sizes[i] = 40; - } - - // Execution 1 - pauseSim(sock, 1); - sendPOSI(sock, POSI, 7, 0); - int result = getDREFs(sock, drefs, data, 7, sizes); - pauseSim(sock, 0); - - // Close - closeUDP(sock); - - // Tests - if (result < 0) - { - return -1; - } - for (i = 0; i < 7; ++i) - { - if (fabs(data[i][0] - POSI[i]) > 1e-4) - { - return -i - 11; - } - } - - // Setup 2 - sock = openUDP(IP); - POSI[0] = -998.0F; - POSI[1] = -998.0F; - POSI[2] = -998.0F; - POSI[3] = 5.0F; - POSI[4] = -5.0F; - POSI[5] = 10.0F; - POSI[6] = 0; - - // Execution 2 - pauseSim(sock, 1); - float *loc[3]; - for(int i = 0; i < 3; ++i) - { - loc[i] = (float*)malloc(sizeof(float)); - } - getDREFs(sock, drefs, &loc, 3, sizes); - sendPOSI(sock, POSI, 7, 0); - result = getDREFs(sock, drefs, data, 7, sizes); - pauseSim(sock, 0); - - // Close - closeUDP(sock); - - // Tests - if (result < 0) - { - return -2; - } - // Compare position to make sure they weren't set - for (int i = 0; i < 3; ++i) - { - // Note: Because the sim was paused when both of these were read, we really do expect *exactly* - // the same value even though we are comparing floats. - if (data[i][0] != loc[i][0]) - { - return -i - 21; - } - } - // Compare everything else. - for (i = 3; i < 7; ++i) - { - if (fabs(data[i][0] - POSI[i]) > 1e-4) - { - return -i - 21; - } - } - - // Setup 3 - sock = openUDP(IP); - POSI[0] = 37.524F; - POSI[1] = -122.06899F; - POSI[2] = 20000; - POSI[3] = 15.0F; - POSI[4] = -25.0F; - POSI[5] = -10.0F; - POSI[6] = 1; - - // Execution 3 - pauseSim(sock, 1); - sendPOSI(sock, POSI, 3, 0); - result = getDREFs(sock, drefs, data, 7, sizes); - pauseSim(sock, 0); - - // Close - closeUDP(sock); - - // Tests - if (result < 0) - { - return -3; - } - // Compare position to make sure it was set. - for (int i = 0; i < 3; ++i) - { - if (fabs(data[i][0] - POSI[i]) > 1e-4) - { - return -i - 31; - } - } - // Compare everything else to make sure it *wasn't*. - for (i = 3; i < 7; ++i) - { - if (fabs(data[i][0] - POSI[i]) < 1) - { - return -i - 31; - } - } - - return 0; -} - -int sendPOSITest() // sendPOSI test -{ - // Initialization - int i; // Iterator - char* drefs[100] = - { - "sim/multiplayer/position/plane1_lat", - "sim/multiplayer/position/plane1_lon", - "sim/multiplayer/position/plane1_el", - "sim/multiplayer/position/plane1_the", - "sim/multiplayer/position/plane1_phi", - "sim/multiplayer/position/plane1_psi", - "sim/multiplayer/position/plane1_gear_deploy" - }; - float* data[100]; - int sizes[100]; - float POSI[7] = { 37.524F, -122.06899F, 2500, 0, 0, 0, 1 }; - XPCSocket sock = openUDP(IP); - - // Setup - for (i = 0; i < 100; i++) - { - data[i] = (float*)malloc(40 * sizeof(float)); - sizes[i] = 40; - } - - // Execution 1 - pauseSim(sock, 1); - sendPOSI(sock, POSI, 7, 1); - int result = getDREFs(sock, drefs, data, 7, sizes); - pauseSim(sock, 0); - - // Close - closeUDP(sock); - - // Tests - if (result < 0) - { - return -1; - } - for (i = 0; i < 7; ++i) - { - if (fabs(data[i][0] - POSI[i]) > 1e-4) - { - return -i - 11; - } - } - - // Setup 2 - sock = openUDP(IP); - POSI[0] = -998.0F; - POSI[1] = -998.0F; - POSI[2] = -998.0F; - POSI[3] = 5.0F; - POSI[4] = -5.0F; - POSI[5] = 10.0F; - POSI[6] = 0; - - // Execution 2 - pauseSim(sock, 1); - float* loc[3]; - for(int i = 0; i < 3; ++i) - { - loc[i] = (float*)malloc(sizeof(float)); - } - getDREFs(sock, drefs, loc, 3, sizes); - sendPOSI(sock, POSI, 7, 1); - result = getDREFs(sock, drefs, data, 7, sizes); - pauseSim(sock, 0); - - // Close - closeUDP(sock); - - // Tests - if (result < 0) - { - return -2; - } - // Compare position to make sure they weren't set - for (int i = 0; i < 3; ++i) - { - // Note: Because the sim was paused when both of these were read, we really do expect *exactly* - // the same value even though we are comparing floats. - if (data[i][0] != loc[i][0]) - { - return -i - 21; - } - } - // Compare everything else. - for (i = 3; i < 7; ++i) - { - if (fabs(data[i][0] - POSI[i]) > 1e-4) - { - return -i - 21; - } - } - - // Setup 3 - sock = openUDP(IP); - POSI[0] = 37.524F; - POSI[1] = -122.06899; - POSI[2] = 20000; - POSI[3] = 15.0F; - POSI[4] = -25.0F; - POSI[5] = -10.0F; - POSI[6] = 1; - - // Execution 2 - pauseSim(sock, 1); - sendPOSI(sock, POSI, 3, 1); - result = getDREFs(sock, drefs, data, 7, sizes); - pauseSim(sock, 0); - - // Close - closeUDP(sock); - - // Tests - if (result < 0) - { - return -3; - } - // Compare position to make sure it was set. - for (int i = 0; i < 3; ++i) - { - if (fabs(data[i][0] - POSI[i]) > 1e-4) - { - return -i - 31; - } - } - // Compare everything else to make sure it *wasn't*. - for (i = 3; i < 7; ++i) - { - if (fabs(data[i][0] - POSI[i]) < 1) - { - return -i - 31; - } - } - - return 0; -} - -int sendWYPTTest() -{ - // Setup - XPCSocket sock = openUDP(IP); - float points[] = - { - 37.5245F, -122.06899F, 2500, - 37.455397F, -122.050037F, 2500, - 37.469567F, -122.051411F, 2500, - 37.479376F, -122.060509F, 2300, - 37.482237F, -122.076130F, 2100, - 37.474881F, -122.087288F, 1900, - 37.467660F, -122.079391F, 1700, - 37.466298F, -122.090549F, 1500, - 37.362562F, -122.039223F, 1000, - 37.361448F, -122.034416F, 1000, - 37.361994F, -122.026348F, 1000, - 37.365541F, -122.022572F, 1000, - 37.373727F, -122.024803F, 1000, - 37.403869F, -122.041283F, 50, - 37.418544F, -122.049222F, 6 - }; - - // Test - sendWYPT(sock, XPC_WYPT_CLR, NULL, 0); - sendWYPT(sock, XPC_WYPT_ADD, points, 15); - // NOTE: Visually ensure waypoints are added in the sim - - // Cleanup - closeUDP(sock); - return 0; -} - -int pauseTest() // pauseSim test -{ - // Setup - // Note: Always run this test to the end so that the sim ends up unpaused in the - // case where commands are working but reading results isn't. - int result = 0; - char* dref = "sim/operation/override/override_planepath"; - int size = 20; - float data[20]; - XPCSocket sock = openUDP(IP); - - // Execute - pauseSim(sock, 0); - result = getDREF(sock, dref, data, &size); - - // Test - if (result < 0) - { - result = -1; - } - else if (data[0] != 0) - { - result = -2; - } - - if (result == 0) - { - // Execute 2 - pauseSim(sock, 2); - result = getDREF(sock, dref, data, &size); - - // Test 2 - if (result < 0) - { - result = -3; - } - else if (data[0] != 1) - { - result = -4; - } - } - - if (result == 0) - { - // Execute 3 - pauseSim(sock, 0); - result = getDREF(sock, dref, data, &size); - - // Test 2 - if (result < 0) - { - result = -5; - } - else if (data[0] != 0) - { - result = -6; - } - } - - // Close - closeUDP(sock); - - return result; -} - -int connTest() // setConn test -{ - // Initialize - char* drefs[100] = - { - "sim/cockpit/switches/gear_handle_status" - }; - float* data[100]; - int sizes[100]; - XPCSocket sock = openUDP(IP); -#if (__APPLE__ || __linux) - usleep(0); -#endif - - // Setup - for (int i = 0; i < 100; ++i) - { - data[i] = (float*)malloc(40 * sizeof(float)); - sizes[i] = 40; - } - - // Execution - setCONN(&sock, 49055); - int result = getDREF(sock, drefs[0], data[0], sizes); - - // Close - closeUDP(sock); - - // Test - if ( result < 0 )// No data received - { - return -1; - } - return 0; -} +//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +//National Aeronautics and Space Administration. All Rights Reserved. +#include "Test.h" +#include "UDPTests.h" +#include "DrefTests.h" +#include "SimuTests.h" +#include "CtrlTests.h" +#include "PosiTests.h" +#include "DataTests.h" +#include "TextTests.h" +#include "ViewTests.h" +#include "WyptTests.h" int main(int argc, const char * argv[]) { @@ -1035,24 +21,46 @@ int main(int argc, const char * argv[]) printf("(Mac) \n"); #elif (__linux) printf("(Linux) \n"); +#else + printf("(Unable to determine operating system) \n") #endif - runTest(openTest, "open"); - runTest(closeTest, "close"); - runTest(pauseTest, "SIMU"); - runTest(getDREFTest, "GETD"); - runTest(sendDREFTest, "DREF"); - runTest(sendDATATest, "DATA"); - runTest(sendCTRLTest, "CTRL"); - runTest(psendCTRLTest, "CTRL (player)"); - runTest(sendCTRLspeedbrakeTest, "CTRL (speedbrake)"); - runTest(sendPOSITest, "POSI"); - runTest(psendPOSITest, "POSI (player)"); - runTest(sendWYPTTest, "WYPT"); - runTest(sendTEXTTest, "TEXT"); - runTest(connTest, "CONN"); + // Basic Networking + runTest(testOpen, "open"); + runTest(testClose, "close"); + // Datarefs + runTest(testGETD_Basic, "GETD"); + runTest(testGETD_Types, "GETD (types)"); + runTest(testGETD_TestFloat, "GETD (test float)"); + runTest(testDREF, "DREF"); + // Pause + runTest(testSIMU_Basic, "SIMU"); + runTest(testSIMU_Toggle, "SIMU (toggle)"); + // CTRL + runTest(testCTRL_Player, "CTRL (player)"); + runTest(testCTRL_NonPlayer, "CTRL (non-player)"); + runTest(testCTRL_Speedbrakes, "CTRL (speedbrakes)"); + runTest(testGETC, "GETC (player)"); + runTest(testGETC_NonPlayer, "GETC (Non-player)"); + // POSI + runTest(testPOSI_Player, "POSI (player)"); + runTest(testPOSI_NonPlayer, "POSI (non-player)"); + runTest(testGetPOSI_Player, "GETP (player)"); + runTest(testGetPOSI_NonPlayer, "GETP (non-player)"); + // Data + runTest(testDATA, "DATA"); + // Text + runTest(testTEXT, "TEXT"); + // Waypoints + runTest(testWYPT, "WYPT"); + // View + runTest(testView, "VIEW"); + // setConn + runTest(testCONN, "CONN"); printf( "----------------\nTest Summary\n\tFailed: %i\n\tPassed: %i\n", testFailed, testPassed ); + printf("Press any key to exit."); + getchar(); return 0; } diff --git a/TestScripts/Java Tests/XPlaneConnectTest.java b/TestScripts/Java Tests/XPlaneConnectTest.java index 216a3d79..2e94bb5c 100644 --- a/TestScripts/Java Tests/XPlaneConnectTest.java +++ b/TestScripts/Java Tests/XPlaneConnectTest.java @@ -1,5 +1,6 @@ package gov.nasa.xpc.test; +import gov.nasa.xpc.ViewType; import gov.nasa.xpc.WaypointOp; import gov.nasa.xpc.XPlaneConnect; @@ -333,6 +334,33 @@ public void testSendDREF() throws IOException } } + @Test + public void testSendDREFs() throws IOException + { + String[] drefs = + { + "sim/cockpit/switches/gear_handle_status", + "sim/cockpit/autopilot/altitude" + }; + try(XPlaneConnect xpc = new XPlaneConnect()) + { + float[][] values = {{1}, {2000}}; + xpc.sendDREFs(drefs, values); + + float[][] result = xpc.getDREFs(drefs); + assertEquals(values[0][0], result[0][0], 1e-4); + assertEquals(values[1][0], result[1][0], 1e-4); + + values[0][0] = 0; + values[1][0] = 4000; + xpc.sendDREFs(drefs, values); + + result = xpc.getDREFs(drefs); + assertEquals(values[0][0], result[0][0], 1e-4); + assertEquals(values[1][0], result[1][0], 1e-4); + } + } + @Test(expected = IllegalArgumentException.class) public void testSendDREF_NullDREF() throws IOException { @@ -650,4 +678,51 @@ public void testSetCONN_LargePort() throws IOException fail(); } } + + @Test + public void testSendView() throws IOException + { + String dref = "sim/graphics/view/view_type"; + float fwd = 1000; + float chase = 1017; + + try(XPlaneConnect xpc = new XPlaneConnect()) + { + xpc.sendVIEW(ViewType.Forwards); + float result = xpc.getDREF(dref)[0]; + assertEquals(fwd, result, 1e-4); + + xpc.sendVIEW(ViewType.Chase); + result = xpc.getDREF(dref)[0]; + assertEquals(chase, result, 1e-4); + } + + } + + @Test + public void testGetPOSI() throws IOException + { + float[] values = { 37.524F, -122.06899F, 2500.0F, 45.0F, -45.0F, 15.0F, 1.0F }; + try(XPlaneConnect xpc = new XPlaneConnect()) + { + xpc.pauseSim(true); + xpc.sendPOSI(values); + float[] actual = xpc.getPOSI(0); + + assertArrayEquals(values, actual, 1e-4F); + } + } + + @Test + public void testGetCTRL() throws IOException + { + float[] values = { 0.0F, 0.0F, 0.0F, 0.8F, 1.0F, 0.5F, -1.5F }; + try(XPlaneConnect xpc = new XPlaneConnect()) + { + xpc.sendCTRL(values); + float[] actual = xpc.getCTRL(0); + + assertArrayEquals(values, actual, 1e-4F); + } + } } \ No newline at end of file diff --git a/TestScripts/MATLAB Tests/getCTRLTest.m b/TestScripts/MATLAB Tests/getCTRLTest.m new file mode 100644 index 00000000..3dc74f8b --- /dev/null +++ b/TestScripts/MATLAB Tests/getCTRLTest.m @@ -0,0 +1,15 @@ +function getCTRLTest() +%GETCTRLTEST Summary of this function goes here +% Detailed explanation goes here +addpath('../../MATLAB') +import XPlaneConnect.* + +values = [10.0, 5.0, -5.0, 0.8, 1.0, 0.5, -1.5]; +sendCTRL(values, 0); +actual = getCTRL(0); + +assert(isequal(length(actual), length(values))); +for i = 1:length(actual) + assert(abs(actual(i) - values(i)) <1e-4) +end +end diff --git a/TestScripts/MATLAB Tests/getPOSITest.m b/TestScripts/MATLAB Tests/getPOSITest.m new file mode 100644 index 00000000..c80b79ad --- /dev/null +++ b/TestScripts/MATLAB Tests/getPOSITest.m @@ -0,0 +1,17 @@ +function getPOSITest() +%GETCTRLTEST Summary of this function goes here +% Detailed explanation goes here +addpath('../../MATLAB') +import XPlaneConnect.* + +values = [ 37.524, -122.06899, 2500, 45, -45, 15, 1 ]; +pauseSim(1); +sendPOSI(values, 0); +actual = getPOSI(0); +pauseSim(0); + +assert(isequal(length(actual), length(values))); +for i = 1:length(actual) + assert(abs(actual(i) - values(i)) <1e-4) +end +end diff --git a/TestScripts/MATLAB Tests/CTRLTest.m b/TestScripts/MATLAB Tests/sendCTRLTest.m similarity index 98% rename from TestScripts/MATLAB Tests/CTRLTest.m rename to TestScripts/MATLAB Tests/sendCTRLTest.m index 7b8a9bc6..05699175 100644 --- a/TestScripts/MATLAB Tests/CTRLTest.m +++ b/TestScripts/MATLAB Tests/sendCTRLTest.m @@ -1,4 +1,4 @@ -function CTRLTest( ) +function sendCTRLTest( ) %CTRLTest Summary of this function goes here % Detailed explanation goes here %% Test player aircraft diff --git a/TestScripts/MATLAB Tests/POSITest.m b/TestScripts/MATLAB Tests/sendPOSITest.m similarity index 96% rename from TestScripts/MATLAB Tests/POSITest.m rename to TestScripts/MATLAB Tests/sendPOSITest.m index 16b6c8df..42a6e15a 100644 --- a/TestScripts/MATLAB Tests/POSITest.m +++ b/TestScripts/MATLAB Tests/sendPOSITest.m @@ -1,4 +1,4 @@ -function POSITest( ) +function sendPOSITest( ) %POSITest Summary of this function goes here % Detailed explanation goes here addpath('../../MATLAB') diff --git a/TestScripts/MATLAB Tests/sendVIEWTest.m b/TestScripts/MATLAB Tests/sendVIEWTest.m new file mode 100644 index 00000000..4cfe29c1 --- /dev/null +++ b/TestScripts/MATLAB Tests/sendVIEWTest.m @@ -0,0 +1,26 @@ +function sendVIEWTest() +%% Setup +addpath('../../MATLAB') +import XPlaneConnect.* + +if ~exist('gov.nasa.xpc.ViewType', 'class') + [folder, ~, ~] = fileparts(which('XPlaneConnect.openUDP')); + javaaddpath(fullfile(folder, 'XPlaneConnect.jar')); +end + +dref = 'sim/graphics/view/view_type'; +fwd = 1000; +chase = 1017; + +%% Excecute +sendVIEW(gov.nasa.xpc.ViewType.Forwards); +result = getDREFs(dref); +assert(isequal(result, fwd)) + +sendVIEW(gov.nasa.xpc.ViewType.Chase); +result = getDREFs(dref); +assert(isequal(result, chase)) + + +end + diff --git a/TestScripts/MATLAB Tests/tests.m b/TestScripts/MATLAB Tests/tests.m index 68716861..2ef6d5f5 100644 --- a/TestScripts/MATLAB Tests/tests.m +++ b/TestScripts/MATLAB Tests/tests.m @@ -1,3 +1,6 @@ +addpath('../../MATLAB') +import XPlaneConnect.* + testsPassed=0; testsFailed=0; if ismac() @@ -15,12 +18,16 @@ {@getDREFsTest,'Request DREF Test', 0},... {@sendDREFTest,'Send DREF Test', 0},... {@DATATest,'DATA Test', 0},... - {@CTRLTest,'CTRL Test', 0},... - {@POSITest,'POSI Test', 0},... + {@sendCTRLTest,'sendCTRL Test', 0},... + {@getCTRLTest,'getCTRL Test', 0},... + {@sendPOSITest,'sendPOSI Test', 0},... + {@getPOSITest,'getPOSI Test', 0},... {@sendWYPTTest,'WYPT Test', 0},... + {@sendVIEWTest,'VIEW Test', 0},... {@pauseTest,'Pause Test', 0},... {@setConnTest, 'setConn Test', 0}}; +socket = openUDP(); for i=1:length(theTests) fprintf(['Test ',num2str(i),': ',theTests{i}{2},' - ']); try @@ -35,6 +42,7 @@ testsFailed = testsFailed + 1; end end +closeUDP(socket); disp('Results Summary:'); fprintf('Passed: %i\tFailed: %i\n',testsPassed, testsFailed); \ No newline at end of file diff --git a/TestScripts/Python Tests/Tests.py b/TestScripts/Python Tests/Tests.py index ac6b1b69..486803d9 100644 --- a/TestScripts/Python Tests/Tests.py +++ b/TestScripts/Python Tests/Tests.py @@ -3,7 +3,7 @@ import imp import time -import xpc +xpc = imp.load_source('xpc', '../../Python/src/xpc.py') class XPCTests(unittest.TestCase): """Tests the functionality of the XPlaneConnect class.""" @@ -117,6 +117,37 @@ def do_test(): value = 0 do_test() + def test_sendDREFs(self): + drefs = [\ + "sim/cockpit/switches/gear_handle_status",\ + "sim/cockpit/autopilot/altitude"] + values = None + def do_test(): + # Setup + client = xpc.XPlaneConnect() + + # Execute + client.sendDREFs(drefs, values) + result = client.getDREFs(drefs) + + # Cleanup + client.close() + + # Tests + self.assertEqual(2, len(result)) + self.assertEqual(1, len(result[0])) + self.assertEqual(values[0], result[0][0]) + self.assertEqual(1, len(result[1])) + self.assertEqual(values[1], result[1][0]) + + # Test 1 + values = [1, 2000] + do_test() + + # Test 2 + values = [0, 4000] + do_test() + def test_sendDATA(self): # Setup dref = "sim/aircraft/parts/acf_gear_deploy" @@ -171,6 +202,29 @@ def do_test(): expected = 0.0 do_test() + def test_getCTRL(self): + values = None + ac = 0 + expected = None + def do_test(): + with xpc.XPlaneConnect() as client: + # Execute + client.sendCTRL(values, ac) + result = client.getCTRL(ac) + + # Test + self.assertEqual(len(result), len(expected)) + for a, e in zip(result, expected): + self.assertAlmostEqual(a, e, 4) + + values = [0.0, 0.0, 0.0, 0.8, 1.0, 0.5, -1.5] + expected = values + ac = 0 + do_test() + + ac = 3 + do_test() + def test_sendCTRL(self): # Setup @@ -239,6 +293,31 @@ def do_test(): ctrl[6] = 0.0 do_test() + def test_getPOSI(self): + values = None + ac = 0 + expected = None + def do_test(): + with xpc.XPlaneConnect() as client: + # Execute + client.pauseSim(True) + client.sendPOSI(values, ac) + result = client.getPOSI(ac) + client.pauseSim(False) + + # Test + self.assertEqual(len(result), len(expected)) + for a, e in zip(result, expected): + self.assertAlmostEqual(a, e, 4) + + values = [ 37.524, -122.06899, 2500, 45, -45, 15, 1 ] + expected = values + ac = 0 + do_test() + + ac = 3 + do_test() + def test_sendPOSI(self): # Setup drefs = ["sim/flightmodel/position/latitude",\ @@ -288,6 +367,22 @@ def test_sendTEXT(self): # Cleanup client.close() + def test_sendView(self): + # Setup + dref = "sim/graphics/view/view_type" + fwd = 1000 + chase = 1017 + + #Execution + with xpc.XPlaneConnect() as client: + client.sendVIEW(xpc.ViewType.Forwards) + result = client.getDREF(dref) + self.assertAlmostEqual(fwd, result[0], 1e-4) + client.sendVIEW(xpc.ViewType.Chase) + result = client.getDREF(dref) + self.assertAlmostEqual(chase, result[0], 1e-4) + + def test_sendWYPT(self): # Setup client = xpc.XPlaneConnect() diff --git a/xpcPlugin/CMakeLists.txt b/xpcPlugin/CMakeLists.txt index ca964b5b..d07ae272 100644 --- a/xpcPlugin/CMakeLists.txt +++ b/xpcPlugin/CMakeLists.txt @@ -13,7 +13,6 @@ SET(CMAKE_CXX_COMPILER g++) add_library(xpc64 SHARED XPCPlugin.cpp DataManager.cpp - DataMaps.cpp Drawing.cpp Log.cpp Message.cpp @@ -24,7 +23,6 @@ set_target_properties(xpc64 PROPERTIES COMPILE_FLAGS "-m64" LINK_FLAGS "-shared add_library(xpc32 SHARED XPCPlugin.cpp DataManager.cpp - DataMaps.cpp Drawing.cpp Log.cpp Message.cpp diff --git a/xpcPlugin/DataManager.cpp b/xpcPlugin/DataManager.cpp index 178ac474..45710060 100644 --- a/xpcPlugin/DataManager.cpp +++ b/xpcPlugin/DataManager.cpp @@ -1,25 +1,26 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. // -//X-Plane API -//Copyright(c) 2008, Sandy Barbour and Ben Supnik All rights reserved. -//Permission is hereby granted, free of charge, to any person obtaining a copy of this software and -//associated documentation files(the "Software"), to deal in the Software without restriction, -//including without limitation the rights to use, copy, modify, merge, publish, distribute, -//sublicense, and / or sell copies of the Software, and to permit persons to whom the Software is -//furnished to do so, subject to the following conditions : -// * Redistributions of source code must retain the above copyright notice, -// this list of conditions and the following disclaimer. -// * Neither the names of the authors nor that of X - Plane or Laminar Research -// may be used to endorse or promote products derived from this software -// without specific prior written permission from the authors or -// Laminar Research, respectively. +// X-Plane API +// Copyright(c) 2008, Sandy Barbour and Ben Supnik All rights reserved. +// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and +// associated documentation files(the "Software"), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, publish, distribute, +// sublicense, and / or sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions : +// * Redistributions of source code must retain the above copyright notice, +// this list of conditions and the following disclaimer. +// * Neither the names of the authors nor that of X - Plane or Laminar Research +// may be used to endorse or promote products derived from this software +// without specific prior written permission from the authors or +// Laminar Research, respectively. #include "DataManager.h" #include "Log.h" #include "XPLMDataAccess.h" #include "XPLMGraphics.h" +#include #include #include #include @@ -28,14 +29,17 @@ namespace XPC { using namespace std; + const size_t PLANE_COUNT = 20; static map drefs; - static map mdrefs[20]; + static map mdrefs[PLANE_COUNT]; static map sdrefs; DREF XPData[134][8] = { DREF_None }; void DataManager::Initialize() { + Log::WriteLine(LOG_TRACE, "DMAN", "Initializing drefs"); + drefs.insert(make_pair(DREF_None, XPLMFindDataRef("sim/test/test_float"))); drefs.insert(make_pair(DREF_Pause, XPLMFindDataRef("sim/operation/override/override_planepath"))); @@ -142,7 +146,7 @@ namespace XPC drefs.insert(make_pair(DREF_MP7Alt, XPLMFindDataRef("sim/multiplayer/position/plane7_el"))); char multi[256]; - for (int i = 1; i < 20; i++) + for (int i = 1; i < PLANE_COUNT; i++) { sprintf(multi, "sim/multiplayer/position/plane%i_x", i); mdrefs[i][DREF_LocalX] = XPLMFindDataRef(multi); @@ -165,8 +169,8 @@ namespace XPC sprintf(multi, "sim/multiplayer/position/plane%i_gear_deploy", i); mdrefs[i][DREF_GearDeploy] = XPLMFindDataRef(multi); sprintf(multi, "sim/multiplayer/position/plane%i_flap_ratio", i); - mdrefs[i][DREF_FlapSetting] = XPLMFindDataRef(multi); // Can't set the actual flap setting on npc aircraft mdrefs[i][DREF_FlapActual] = XPLMFindDataRef(multi); + mdrefs[i][DREF_FlapSetting] = mdrefs[i][DREF_FlapActual]; // Can't set the actual flap setting on npc aircraft sprintf(multi, "sim/multiplayer/position/plane%i_flap_ratio2", i); mdrefs[i][DREF_FlapActual2] = XPLMFindDataRef(multi); sprintf(multi, "sim/multiplayer/position/plane%i_spoiler_ratio", i); @@ -179,6 +183,7 @@ namespace XPC mdrefs[i][DREF_Sweep] = XPLMFindDataRef(multi); sprintf(multi, "sim/multiplayer/position/plane%i_throttle", i); mdrefs[i][DREF_ThrottleActual] = XPLMFindDataRef(multi); + mdrefs[i][DREF_ThrottleSet] = mdrefs[i][DREF_ThrottleActual]; // No throttle set for multiplayer planes. sprintf(multi, "sim/multiplayer/position/plane%i_yolk_pitch", i); mdrefs[i][DREF_YokePitch] = XPLMFindDataRef(multi); sprintf(multi, "sim/multiplayer/position/plane%i_yolk_roll", i); @@ -299,8 +304,9 @@ namespace XPC XPData[26][0] = DREF_ThrottleActual; } - int DataManager::Get(string dref, float values[], int size) + int DataManager::Get(const string& dref, float values[], int size) { + Log::WriteLine(LOG_TRACE, "DMAN", "Entered Get(string, float*, int)"); XPLMDataRef& xdref = sdrefs[dref]; if (xdref == NULL) { @@ -308,24 +314,18 @@ namespace XPC } if (!xdref) // DREF does not exist { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[DMAN] ERROR: invalid DREF %s", dref.c_str()); -#endif + Log::FormatLine(LOG_ERROR, "DMAN", "ERROR: invalid DREF %s", dref.c_str()); return 0; } XPLMDataTypeID dataType = XPLMGetDataRefTypes(xdref); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Get DREF %s (x:%X) Type: %i", dref.c_str(), xdref, dataType); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Get DREF %s (x:%X) Type: %i", dref.c_str(), xdref, dataType); // XPLMDataTypeID is a bit flag, so it may contain more than one of the // following types. We prefer types as close to float as possible. if ((dataType & 2) == 2) // Float { values[0] = XPLMGetDataf(xdref); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value was %f", values[0]); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value was %f", values[0]); return 1; } if ((dataType & 8) == 8) // Float array @@ -333,99 +333,80 @@ namespace XPC int drefSize = XPLMGetDatavf(xdref, NULL, 0, 0); if (drefSize > size) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[DMAN] WARN: dref size is larger than available space"); - Log::FormatLine(" Actual dref size: %i, Available size: %i", drefSize, size); -#endif + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger than available space"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Available size : %i", drefSize, size); drefSize = size; } XPLMGetDatavf(xdref, values, 0, drefSize); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value count was %i", drefSize); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value count was %i", drefSize); return drefSize; } if ((dataType & 4) == 4) // Double { values[0] = (float)XPLMGetDatad(xdref); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value was %f", values[0]); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value was %f", values[0]); return 1; } if ((dataType & 1) == 1) // Integer { - values[0] = (float)XPLMGetDatai(xdref); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value was %i", (int)values[0]); -#endif + int iValue = XPLMGetDatai(xdref); + values[0] = (float)iValue; + Log::FormatLine(LOG_INFO, "DMAN", " -- Real value was %i, cast to %f", iValue, values[0]); return 1; } if ((dataType & 16) == 16) // Integer array { - int iValues[200]; + const std::size_t TMP_SIZE = 200; + int iValues[TMP_SIZE]; int drefSize = XPLMGetDatavi(xdref, NULL, 0, 0); if (drefSize > size) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[DMAN] WARN: dref size is larger than available space"); - Log::FormatLine(" Actual dref size: %i, Available size: %i", drefSize, size); -#endif + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger than available space"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Available size : %i", drefSize, size); drefSize = size; } - if (drefSize > 200) + if (drefSize > TMP_SIZE) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[DMAN] WARN: dref size is larger than temp buffer"); - Log::FormatLine(" Actual dref size: %i, Temp buffer size: 200", drefSize); -#endif - drefSize = 200; + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger than temp buffer"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Temp buffer size: %u", drefSize, TMP_SIZE); + drefSize = TMP_SIZE; } XPLMGetDatavi(xdref, iValues, 0, drefSize); for (int i = 0; i < drefSize; ++i) { values[i] = (float)iValues[i]; } -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value count was %i", drefSize); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value count was %i", drefSize); return drefSize; } if ((dataType & 32) == 32) // Byte array { - char bValues[1024]; + const std::size_t TMP_SIZE = 1024; + char bValues[TMP_SIZE]; int drefSize = XPLMGetDatab(xdref, NULL, 0, 0); if (drefSize > size) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[DMAN] WARN: dref size is larger than available space"); - Log::FormatLine(" Actual dref size: %i, Available size: %i", drefSize, size); -#endif + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger than available space"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Available size : %i", drefSize, size); drefSize = size; } - if (drefSize > 1024) + if (drefSize > TMP_SIZE) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[DMAN] WARN: dref size is larger than temp buffer"); - Log::FormatLine(" Actual dref size: %i, Temp buffer size: 1024", drefSize); -#endif - drefSize = 1024; + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger than temp buffer"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Temp buffer size: %u", drefSize, TMP_SIZE); + drefSize = TMP_SIZE; } XPLMGetDatab(xdref, bValues, 0, drefSize); for (int i = 0; i < drefSize; ++i) { values[i] = (float)bValues[i]; } -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value count was %i", drefSize); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value count was %i", drefSize); return drefSize; } // No match -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DMAN] ERROR: Unrecognized data type."); -#endif + Log::WriteLine(LOG_ERROR, "DMAN", "ERROR: Unrecognized data type."); return 0; } @@ -433,9 +414,8 @@ namespace XPC { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; double value = XPLMGetDatad(xdref); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Get DREF %i (x:%X) result %f for a/c %i", dref, xdref, value, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Get DREF %i (x:%X) result %f for a/c %i", + dref, xdref, value, aircraft); return value; } @@ -443,9 +423,8 @@ namespace XPC { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; float value = XPLMGetDataf(xdref); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Get DREF %i (x:%X) result %f for a/c %i", dref, xdref, value, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Get DREF %i (x:%X) result %f for a/c %i", + dref, xdref, value, aircraft); return value; } @@ -453,9 +432,8 @@ namespace XPC { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; int value = XPLMGetDatai(xdref); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Get DREF %i (x:%X) result %i for a/c %i", dref, xdref, value, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Get DREF %i (x:%X) result %i for a/c %i", + dref, xdref, value, aircraft); return value; } @@ -463,9 +441,8 @@ namespace XPC { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; int resultSize = XPLMGetDatavf(xdref, values, 0, size); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Get DREF %i (x:%X) result size %i for a/c %i", dref, xdref, resultSize, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Get DREF %i (x:%X) result size %i for a/c %i", + dref, xdref, resultSize, aircraft); return resultSize; } @@ -473,62 +450,66 @@ namespace XPC { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; int resultSize = XPLMGetDatavi(xdref, values, 0, size); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Get DREF %i (x:%X) result size %i for a/c %i", dref, xdref, resultSize, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Get DREF %i (x:%X) result size %i for a/c %i", + dref, xdref, resultSize, aircraft); return resultSize; } void DataManager::Set(DREF dref, double value, char aircraft) { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Setting DREF %i (x:%X) to %f for a/c %i", dref, xdref, value, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Setting DREF %i (x:%X) to %f for a/c %i", + dref, xdref, value, aircraft); XPLMSetDatad(xdref, value); } void DataManager::Set(DREF dref, float value, char aircraft) { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Set DREF %i (x:%X) to %f for a/c %i", dref, xdref, value, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Setting DREF %i (x:%X) to %f for a/c %i", + dref, xdref, value, aircraft); XPLMSetDataf(xdref, value); } void DataManager::Set(DREF dref, int value, char aircraft) { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Set DREF %i (x:%X) to %i for a/c %i", dref, xdref, value, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Setting DREF %i (x:%X) to %i for a/c %i", + dref, xdref, value, aircraft); XPLMSetDatai(xdref, value); } void DataManager::Set(DREF dref, float values[], int size, char aircraft) { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Set DREF %i (x:%X) (%i values) for a/c %i", dref, xdref, size, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Setting DREF %i (x:%X) (%i values) for a/c %i", + dref, xdref, size, aircraft); int drefSize = XPLMGetDatavf(xdref, NULL, 0, 0); + if (drefSize < size) + { + Log::FormatLine(LOG_WARN, "DMAN", "Warning: Too many values when setting DREF %i. Expected %i, got %i", + dref, drefSize, size); + } drefSize = min(drefSize, size); XPLMSetDatavf(xdref, values, 0, drefSize); } - + void DataManager::Set(DREF dref, int values[], int size, char aircraft) { const XPLMDataRef& xdref = aircraft == 0 ? drefs[dref] : mdrefs[aircraft][dref]; -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Setting DREF %i (x:%X) (%i values) for a/c %i", dref, xdref, size, aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Setting DREF %i (x:%X) (%i values) for a/c %i", + dref, xdref, size, aircraft); int drefSize = XPLMGetDatavi(xdref, NULL, 0, 0); + if (drefSize < size) + { + Log::FormatLine(LOG_WARN, "DMAN", "Warning: Too many values when setting DREF %i. Expected %i, got %i", + dref, drefSize, size); + } drefSize = min(drefSize, size); XPLMSetDatavi(xdref, values, 0, drefSize); } - void DataManager::Set(string dref, float values[], int size) + void DataManager::Set(const string& dref, float values[], int size) { XPLMDataRef& xdref = sdrefs[dref]; if (xdref == NULL) @@ -538,149 +519,121 @@ namespace XPC if (!xdref) { // DREF does not exist -#if LOG_VERBOSITY > 0 - Log::FormatLine("[DMAN] ERROR: invalid DREF %s", dref.c_str()); -#endif + Log::FormatLine(LOG_ERROR, "DMAN", "ERROR: invalid DREF %s", dref.c_str()); return; } if (isnan(values[0])) { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DMAN] ERROR: Value must be a number (NaN received)"); -#endif + Log::WriteLine(LOG_ERROR, "DMAN", "ERROR: Value must be a number (NaN received)"); return; } XPLMDataTypeID dataType = XPLMGetDataRefTypes(xdref); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] Setting DREF %s (x:%X) Type: %i", dref.c_str(), xdref, dataType); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Setting DREF %s (x:%X) Type: %i", dref.c_str(), xdref, dataType); if ((dataType & 2) == 2) // Float { XPLMSetDataf(xdref, values[0]); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value was %f", values[0]); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value was %f", values[0]); } else if ((dataType & 8) == 8) // Float Array { int drefSize = XPLMGetDatavf(xdref, NULL, 0, 0); -#if LOG_VERBOSITY > 1 if (size > drefSize) { - Log::WriteLine("[DMAN] WARN: Provided size is larger than actual dref size"); - Log::FormatLine(" Actual dref size: %i, Provided buffer size: %i", drefSize, size); + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger than actual dref size"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Provided buffer size : %i", + drefSize, size); } -#endif drefSize = min(drefSize, size); XPLMSetDatavf(xdref, values, 0, drefSize); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value count was %i", drefSize); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value count was %i", drefSize); } else if ((dataType & 4) == 4) // Double { XPLMSetDatad(xdref, values[0]); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value was %f", values[0]); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value was %f", values[0]); } else if ((dataType & 1) == 1) // Integer { XPLMSetDatai(xdref, (int)values[0]); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value was %i", (int)values[0]); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value was %i", (int)values[0]); } else if ((dataType & 16) == 16) // Integer Array { - int iValues[200]; + const std::size_t TMP_SIZE = 200; + int iValues[TMP_SIZE]; int drefSize = XPLMGetDatavi(xdref, NULL, 0, 0); -#if LOG_VERBOSITY > 1 if (size > drefSize) { - Log::WriteLine("[DMAN] WARN: Provided size is larger than actual dref size"); - Log::FormatLine(" Actual dref size: %i, Provided buffer size: %i", drefSize, size); + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger than actual dref size"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Provided buffer size : %i", + drefSize, size); } -#endif drefSize = min(drefSize, size); - if (drefSize > 200) + if (drefSize > TMP_SIZE) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[DMAN] WARN: drefSize larger than temp buffer size."); - Log::FormatLine(" Actual dref size: %i, Temp buffer size: 200", drefSize); -#endif - drefSize = 200; + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger temp buffer size"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Temp buffer size: %i", + drefSize, TMP_SIZE); + drefSize = TMP_SIZE; } for (int i = 0; i < drefSize; ++i) { iValues[i] = (int)values[i]; } XPLMSetDatavi(xdref, iValues, 0, drefSize); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value count was %i", drefSize); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value count was %i", drefSize); } else if ((dataType & 32) == 32) // Byte Array { - char bValues[1024]; + const std::size_t TMP_SIZE = 1024; + char bValues[TMP_SIZE]; int drefSize = XPLMGetDatab(xdref, NULL, 0, 0); -#if LOG_VERBOSITY > 1 if (size > drefSize) { - Log::WriteLine("[DMAN] WARN: Provided size is larger than actual dref size"); - Log::FormatLine(" Actual dref size: %i, Provided buffer size: %i", drefSize, size); + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger than actual dref size"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Provided buffer size : %i", + drefSize, size); } -#endif drefSize = min(drefSize, size); - if (drefSize > 1024) + if (drefSize > TMP_SIZE) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[DMAN] WARN: drefSize larger than temp buffer size."); - Log::FormatLine(" Actual dref size: %i, Temp buffer size: 1024", drefSize); -#endif - drefSize = 1024; + Log::WriteLine(LOG_WARN, "DMAN", "Warning: dref size is larger temp buffer size"); + Log::FormatLine(LOG_DEBUG, "DMAN", "Actual dref size : %i, Temp buffer size: %i", + drefSize, TMP_SIZE); + drefSize = TMP_SIZE; } for (int i = 0; i < drefSize; ++i) { bValues[i] = (char)values[i]; } XPLMSetDatab(xdref, bValues, 0, drefSize); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[DMAN] -- value count was %i", drefSize); -#endif + Log::FormatLine(LOG_INFO, "DMAN", " -- value count was %i", drefSize); } else { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DMAN] ERROR: Unknown type."); -#endif + Log::WriteLine(LOG_ERROR, "DMAN", "ERROR: Unknown type."); } -#if LOG_VERBOSITY > 1 if (!XPLMCanWriteDataRef(xdref)) { - Log::WriteLine("[DMAN] WARN: dref is not writable. The write operation probably failed."); + Log::WriteLine(LOG_WARN, "DMAN", "WARN: dref is not writable. The write operation probably failed."); } -#endif } void DataManager::SetGear(float gear, bool immediate, char aircraft) { -#if LOG_VERBOSITY > 3 - Log::FormatLine("[DMAN] Setting gear (value:%f, immediate:%i) for aircraft %i", gear, immediate, aircraft); -#endif - if (isnan(gear) || gear < 0 || gear > 1) + Log::FormatLine(LOG_INFO, "DMAN", "Setting gear (value:%f, immediate:%i) for aircraft %i", + gear, immediate, aircraft); + + if ((gear < -8.5 && gear > -9.5) || IsDefault(gear)) { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[GEAR] ERROR: Value must be 0 or 1"); -#endif return; } - - if ((gear < -8.5 && gear > -9.5) || (gear < -997.9 && gear > -999.1)) + if (isnan(gear) || gear < 0 || gear > 1) { + Log::WriteLine(LOG_ERROR, "DMAN", "ERROR: Gear value must be 0 or 1"); return; } @@ -706,26 +659,23 @@ namespace XPC void DataManager::SetPosition(float pos[3], char aircraft) { -#if LOG_VERBOSITY > 3 - Log::FormatLine("[DMAN] Setting position (%f, %f, %f) for aircraft %i", pos[0], pos[1], pos[2], aircraft); -#endif + Log::FormatLine(LOG_INFO, "DMAN", "Setting position (%f, %f, %f) for aircraft %i", + pos[0], pos[1], pos[2], aircraft); if (isnan(pos[0] + pos[1] + pos[2])) { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DMAN] ERROR: Position must be a number (NaN received)"); -#endif + Log::WriteLine(LOG_ERROR, "DMAN", "ERROR: Position must be a number (NaN received)"); return; } - if (pos[0] < -997.9 && pos[0] > -999.1) + if (IsDefault(pos[0])) { pos[0] = (float)GetDouble(DREF_Latitude, aircraft); } - if (pos[1] < -997.9 && pos[1] > -999.1) + if (IsDefault(pos[1])) { pos[1] = (float)GetDouble(DREF_Longitude, aircraft); } - if (pos[2] < -997.9 && pos[2] > -999.1) + if (IsDefault(pos[2])) { pos[2] = (float)GetDouble(DREF_Elevation, aircraft); } @@ -738,7 +688,6 @@ namespace XPC Set(DREF_LocalY, local[1], aircraft); Set(DREF_LocalZ, local[2], aircraft); // If the sim is unpaused, this will override the above settings. - // TODO: Are these setable when paused? Are these necessary? Set(DREF_Latitude, (double)pos[0], aircraft); Set(DREF_Longitude, (double)pos[1], aircraft); Set(DREF_Elevation, (double)pos[2], aircraft); @@ -746,27 +695,23 @@ namespace XPC void DataManager::SetOrientation(float orient[3], char aircraft) { -#if LOG_VERBOSITY > 3 - Log::FormatLine("[DMAN] Setting orientation (%f, %f, %f) for aircraft %i", + Log::FormatLine(LOG_INFO, "DMAN", "Setting orientation (%f, %f, %f) for aircraft %i", orient[0], orient[1], orient[2], aircraft); -#endif if (isnan(orient[0] + orient[1] + orient[2])) { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DMAN] ERROR: Orientation must be a number (NaN received)"); -#endif + Log::WriteLine(LOG_ERROR, "DMAN", "ERROR: Orientation must be a number (NaN received)"); return; } - if (orient[0] < -997.9 && orient[0] > -999.1) + if (IsDefault(orient[0])) { orient[0] = GetFloat(DREF_Pitch, aircraft); } - if (orient[1] < -997.9 && orient[1] > -999.1) + if (IsDefault(orient[1])) { orient[1] = GetFloat(DREF_Roll, aircraft); } - if (orient[2] < -997.9 && orient[2] > -999.1) + if (IsDefault(orient[2])) { orient[2] = GetFloat(DREF_HeadingTrue, aircraft); } @@ -782,16 +727,16 @@ namespace XPC { // Convert to Quaternions // from: http://www.xsquawkbox.net/xpsdk/mediawiki/MovingThePlane - // http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19770024290.pdf + // http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19770024290.pdf float q[4]; float halfRad = 0.00872664625997F; - orient[2] = halfRad * orient[2]; - orient[0] = halfRad * orient[0]; - orient[1] = halfRad * orient[1]; - q[0] = cos(orient[2]) * cos(orient[0]) * cos(orient[1]) + sin(orient[2]) * sin(orient[0]) * sin(orient[1]); - q[1] = cos(orient[2]) * cos(orient[0]) * sin(orient[1]) - sin(orient[2]) * sin(orient[0]) * cos(orient[1]); - q[2] = cos(orient[2]) * sin(orient[0]) * cos(orient[1]) + sin(orient[2]) * cos(orient[0]) * sin(orient[1]); - q[3] = sin(orient[2]) * cos(orient[0]) * cos(orient[1]) - cos(orient[2]) * sin(orient[0]) * sin(orient[1]); + float theta = halfRad * orient[0]; + float phi = halfRad * orient[1]; + float psi = halfRad * orient[2]; + q[0] = cos(phi) * cos(theta) * cos(psi) + sin(phi) * sin(theta) * sin(psi); + q[1] = sin(phi) * cos(theta) * cos(psi) - cos(phi) * sin(theta) * sin(psi); + q[2] = cos(phi) * sin(theta) * cos(psi) + sin(phi) * cos(theta) * sin(psi); + q[3] = cos(phi) * cos(theta) * sin(psi) - sin(phi) * sin(theta) * cos(psi); // If the sim is un-paused, this will overwrite the pitch/roll/yaw // values set above. @@ -801,14 +746,14 @@ namespace XPC void DataManager::SetFlaps(float value) { + Log::FormatLine(LOG_INFO, "DMAN", "Setting flaps (value:%f)", value); + if (isnan(value)) { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DMAN] ERROR: Flap value must be a number (NaN received)"); -#endif + Log::WriteLine(LOG_ERROR, "DMAN", "ERROR: Flap value must be a number (NaN received)"); return; } - if (value < -997.9 && value > -999.1) + if (IsDefault(value)) { return; } @@ -819,4 +764,14 @@ namespace XPC Set(DREF_FlapSetting, value); Set(DREF_FlapActual, value); } + + float DataManager::GetDefaultValue() + { + return -998.0F; + } + + bool DataManager::IsDefault(float value) + { + return value < -997.9 && value > -999.1; + } } diff --git a/xpcPlugin/DataManager.h b/xpcPlugin/DataManager.h index 9eab1e86..cc38619a 100644 --- a/xpcPlugin/DataManager.h +++ b/xpcPlugin/DataManager.h @@ -1,7 +1,7 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. -#ifndef XPC_DATAMANAGER_H -#define XPC_DATAMANAGER_H +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +#ifndef XPCPLUGIN_DATAMANAGER_H_ +#define XPCPLUGIN_DATAMANAGER_H_ #include @@ -62,7 +62,7 @@ namespace XPC DREF_L, DREF_N, - //PQR (Angular Velocities) + // PQR (Angular Velocities) DREF_QRad = 1600, DREF_PRad, DREF_RRad, @@ -139,13 +139,13 @@ namespace XPC /// Maps X-Plane dataref lines to XPC DREF values. extern DREF XPData[134][8]; - /// Marshals data between the plugin and X-Plane. + /// Contains methods to martial data between the plugin and X-Plane. /// /// \author Jason Watkins - /// \version 1.0.1 + /// \version 1.1 /// \since 1.0.0 /// \date Intial Version: 2015-04-13 - /// \date Last Updated: 2015-04-29 + /// \date Last Updated: 2015-05-14 class DataManager { public: @@ -165,7 +165,7 @@ namespace XPC /// \remarks The first time this method is called for a given dataref, it must /// perform a relatively expensive lookup operation to translate the /// given string into an X-Plane internal pointer. This value is cached, - /// so subsequent calls will incure minimal extra overhead compared to + /// so subsequent calls will incur minimal extra overhead compared to /// the other methods in this class. /// /// \remarks For simplicity, this method is provided with only one output type. @@ -174,7 +174,7 @@ namespace XPC /// doubles where high precision is required, using this method may result /// in a loss of precision. In that case, consider using one of the /// strongly typed methods instead. - static int Get(std::string dref, float values[], int size); + static int Get(const std::string& dref, float values[], int size); /// Gets the value of a double dataref. /// @@ -294,7 +294,7 @@ namespace XPC /// doubles where high precision is required, using this method may result /// in a loss of precision. In that case, consider using one of the /// strongly typed methods instead. - static void Set(std::string dref, float values[], int size); + static void Set(const std::string& dref, float values[], int size); /// Sets the value of a double dataref. /// @@ -409,6 +409,15 @@ namespace XPC /// /// \param value The flaps settings. Should be between 0.0 (no flaps) and 1.0 (full flaps). static void SetFlaps(float value); + + /// Gets a default value that indicates that a dataref should not be changed. + static float GetDefaultValue(); + + /// Checks whether the given value should be treated as a default value. + /// + /// \param value The value to check. + /// \returns true if value is a default value; otherwise false. + static bool IsDefault(float value); }; } #endif diff --git a/xpcPlugin/Drawing.cpp b/xpcPlugin/Drawing.cpp index 63caf555..d7539b6f 100644 --- a/xpcPlugin/Drawing.cpp +++ b/xpcPlugin/Drawing.cpp @@ -1,19 +1,19 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. // -//X-Plane API -//Copyright(c) 2008, Sandy Barbour and Ben Supnik All rights reserved. -//Permission is hereby granted, free of charge, to any person obtaining a copy of this software and -//associated documentation files(the "Software"), to deal in the Software without restriction, -//including without limitation the rights to use, copy, modify, merge, publish, distribute, -//sublicense, and / or sell copies of the Software, and to permit persons to whom the Software is -//furnished to do so, subject to the following conditions : -// * Redistributions of source code must retain the above copyright notice, -// this list of conditions and the following disclaimer. -// * Neither the names of the authors nor that of X - Plane or Laminar Research -// may be used to endorse or promote products derived from this software -// without specific prior written permission from the authors or -// Laminar Research, respectively. +// X-Plane API +// Copyright(c) 2008, Sandy Barbour and Ben Supnik All rights reserved. +// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and +// associated documentation files(the "Software"), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, publish, distribute, +// sublicense, and / or sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions : +// * Redistributions of source code must retain the above copyright notice, +// this list of conditions and the following disclaimer. +// * Neither the names of the authors nor that of X - Plane or Laminar Research +// may be used to endorse or promote products derived from this software +// without specific prior written permission from the authors or +// Laminar Research, respectively. #include "Drawing.h" #include "XPLMDisplay.h" @@ -23,7 +23,7 @@ #include #include #include -//OpenGL includes +// OpenGL includes #if IBM #include #endif @@ -31,11 +31,11 @@ # include #else # include -#endif/*__APPLE__*/ +#endif namespace XPC { - //Internal Structures + // Internal Structures typedef struct { double x; @@ -43,7 +43,7 @@ namespace XPC double z; } LocalPoint; - //Internal Memory + // Internal Memory static const size_t MSG_MAX = 1024; static const size_t MSG_LINE_MAX = MSG_MAX / 16; static bool msgEnabled = false; @@ -64,7 +64,9 @@ namespace XPC XPLMDataRef planeYref; XPLMDataRef planeZref; - //Internal Functions + // Internal Functions + + /// Comparse two size_t integers. Used by qsort in RemoveWaypoints. static int cmp(const void * a, const void * b) { std::size_t sa = *(size_t*)a; @@ -80,36 +82,42 @@ namespace XPC return 0; } + /// Draws a cube centered at the specified OpenGL world coordinates. + /// + /// \param x The X coordinate. + /// \param y The Y coordinate. + /// \param z The Z coordinate. + /// \param d The distance from the player airplane to the center of the cube. static void gl_drawCube(float x, float y, float z, float d) { - //tan(0.25) degrees. Should scale all markers to appear about the same size + // tan(0.25) degrees. Should scale all markers to appear about the same size const float TAN = 0.00436335F; float h = d * TAN; glBegin(GL_QUAD_STRIP); - //Top + // Top glVertex3f(x - h, y + h, z - h); glVertex3f(x + h, y + h, z - h); glVertex3f(x - h, y + h, z + h); glVertex3f(x + h, y + h, z + h); - //Front + // Front glVertex3f(x - h, y - h, z + h); glVertex3f(x + h, y - h, z + h); - //Bottom + // Bottom glVertex3f(x - h, y - h, z - h); glVertex3f(x + h, y - h, z - h); - //Back + // Back glVertex3f(x - h, y + h, z - h); glVertex3f(x + h, y + h, z - h); glEnd(); glBegin(GL_QUADS); - //Left + // Left glVertex3f(x - h, y + h, z - h); glVertex3f(x - h, y + h, z + h); glVertex3f(x - h, y - h, z + h); glVertex3f(x - h, y - h, z - h); - //Right + // Right glVertex3f(x + h, y + h, z + h); glVertex3f(x + h, y + h, z - h); glVertex3f(x + h, y - h, z - h); @@ -118,25 +126,28 @@ namespace XPC glEnd(); } + /// Draws the string set by the TEXT command. static int MessageDrawCallback(XPLMDrawingPhase inPhase, int inIsBefore, void * inRefcon) { + const int LINE_HEIGHT = 16; XPLMDrawString(rgb, msgX, msgY, msgVal, NULL, xplmFont_Basic); - int y = msgY - 16; + int y = msgY - LINE_HEIGHT; for (size_t i = 0; i < newLineCount; ++i) { XPLMDrawString(rgb, msgX, y, msgVal + newLines[i], NULL, xplmFont_Basic); - y -= 16; + y -= LINE_HEIGHT; } return 1; } + /// Draws waypoints. static int RouteDrawCallback(XPLMDrawingPhase inPhase, int inIsBefore, void * inRefcon) { float px = XPLMGetDataf(planeXref); float py = XPLMGetDataf(planeYref); float pz = XPLMGetDataf(planeZref); - //Convert to local + // Convert to local for (size_t i = 0; i < numWaypoints; ++i) { Waypoint* g = &waypoints[i]; @@ -146,7 +157,7 @@ namespace XPC } - //Draw posts + // Draw posts glColor3f(1.0F, 1.0F, 1.0F); glBegin(GL_LINES); for (size_t i = 0; i < numWaypoints; ++i) @@ -157,7 +168,7 @@ namespace XPC } glEnd(); - //Draw route + // Draw route glColor3f(1.0F, 0.0F, 0.0F); glBegin(GL_LINE_STRIP); for (size_t i = 0; i < numWaypoints; ++i) @@ -167,7 +178,7 @@ namespace XPC } glEnd(); - //Draw markers + // Draw markers glColor3f(1.0F, 1.0F, 1.0F); for (size_t i = 0; i < numWaypoints; ++i) { @@ -181,7 +192,7 @@ namespace XPC return 1; } - //Public Functions + // Public Functions void Drawing::ClearMessage() { XPLMUnregisterDrawCallback(MessageDrawCallback, xplm_Phase_Window, 0, NULL); @@ -190,8 +201,7 @@ namespace XPC void Drawing::SetMessage(int x, int y, char* msg) { - //Determine size of message and clear instead if the message string - //is empty. + // Determine the size of the message and clear it if it is empty. size_t len = strnlen(msg, MSG_MAX - 1); if (len == 0) { @@ -199,7 +209,7 @@ namespace XPC return; } - //Set the message, location, and mark new lines. + // Set the message, location, and mark new lines. strncpy(msgVal, msg, len + 1); newLineCount = 0; for (size_t i = 0; i < len && newLineCount < MSG_LINE_MAX; ++i) @@ -213,7 +223,7 @@ namespace XPC msgX = x < 0 ? 10 : x; msgY = y < 0 ? 600 : y; - //Enable drawing if necessary + // Enable drawing if necessary if (!msgEnabled) { XPLMRegisterDrawCallback(MessageDrawCallback, xplm_Phase_Window, 0, NULL); @@ -258,7 +268,7 @@ namespace XPC void Drawing::RemoveWaypoints(Waypoint points[], size_t numPoints) { - //Build a list of indices of waypoints we should delete. + // Build a list of indices of waypoints we should delete. size_t delPoints[WAYPOINT_MAX]; size_t delPointsCur = 0; for (size_t i = 0; i < numPoints; ++i) @@ -276,10 +286,10 @@ namespace XPC } } } - //Sort the indices so that we only have to iterate them once + // Sort the indices so that we only have to iterate them once qsort(delPoints, delPointsCur, sizeof(size_t), cmp); - //Copy the new array on top of the old array + // Copy the new array on top of the old array size_t copyCur = 0; size_t count = delPointsCur; delPointsCur = 0; diff --git a/xpcPlugin/Drawing.h b/xpcPlugin/Drawing.h index d24b2bf5..139c1d20 100644 --- a/xpcPlugin/Drawing.h +++ b/xpcPlugin/Drawing.h @@ -1,7 +1,7 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. -#ifndef XPC_DRAWING_H -#define XPC_DRAWING_H +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +#ifndef XPCPLUGIN_DRAWING_H_ +#define XPCPLUGIN_DRAWING_H_ #include diff --git a/xpcPlugin/Log.cpp b/xpcPlugin/Log.cpp index 6afc2712..7b849dd1 100644 --- a/xpcPlugin/Log.cpp +++ b/xpcPlugin/Log.cpp @@ -1,17 +1,20 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. #include "Log.h" #include "XPLMUtilities.h" -#include #include #include #include + +#ifndef LIN +#include +#endif #include #include -// Implementation note: I initial wrote this class using C++ iostreams, but I couldn't find any +// Implementation note: I initially wrote this class using C++ iostreams, but I couldn't find any // way to implement FormatLine without adding in a call to sprintf. It therefore seems more // efficient to me to just use C-style IO and call std::fprintf directly. namespace XPC @@ -19,6 +22,20 @@ namespace XPC static std::FILE* fd; static void WriteTime(FILE* fd) { +#ifdef LIN + // Can't provide high resolution logging on Linux because C++11 doesn't work with X-Plane. + time_t rawtime; + tm* timeinfo; + time(&rawtime); + timeinfo = localtime(&rawtime); + + char buffer[16] = { 0 }; + // Format is equivalent to [%F %T], but neither of those specifiers is + // supported on Windows as of Visual Studio 13 + strftime(buffer, 16, "[%H:%M:%S] ", timeinfo); + + fprintf(fd, buffer); +#else using namespace std::chrono; system_clock::time_point now = system_clock::now(); @@ -28,17 +45,59 @@ namespace XPC std::tm * tm = std::localtime(&now_tt); std::stringstream ss; - ss << std::setfill('0') << "[" + ss << std::setfill('0') << std::setw(2) << tm->tm_hour << ":" << std::setw(2) << tm->tm_min << ":" << std::setw(2) << tm->tm_sec << "." - << std::setw(3) << ms.count() << "]"; - + << std::setw(3) << ms.count() << "|"; + std::fprintf(fd, ss.str().c_str()); +#endif + } + + static void WriteLevel(FILE* fd, int level) + { + const char* str; + switch (level) + { + case LOG_OFF: + str = " OFF|"; + break; + case LOG_FATAL: + str = "FATAL|"; + break; + case LOG_ERROR: + str = "ERROR|"; + break; + case LOG_WARN: + str = " WARN|"; + break; + case LOG_INFO: + str = " INFO|"; + break; + case LOG_DEBUG: + str = "DEBUG|"; + break; + case LOG_TRACE: + str = "TRACE|"; + break; + default: + str = " UNK|"; + break; + } + std::fprintf(fd, str); } - void Log::Initialize(std::string version) + void Log::Initialize(const std::string& version) { + if (LOG_LEVEL == LOG_OFF) + { + return; + } + + // Note: Mode "w" deletes an existing file with the same name. This means that we only + // ever get the log from the last run. This matches the way that X-Plane treats its + // log. fd = std::fopen("XPCLog.txt", "w"); if (fd != NULL) { @@ -81,35 +140,33 @@ namespace XPC } } - void Log::WriteLine(const std::string& value) - { - Log::WriteLine(value.c_str()); - } - - void Log::WriteLine(const char* value) + void Log::WriteLine(int level, const std::string& tag, const std::string& value) { - if (!fd) + if (level > LOG_LEVEL || !fd) { return; } WriteTime(fd); - std::fprintf(fd, "%s\n", value); + WriteLevel(fd, level); + std::fprintf(fd, "%s|%s\n", tag.c_str(), value.c_str()); std::fflush(fd); } - void Log::FormatLine(const char* format, ...) + void Log::FormatLine(int level, const std::string& tag, std::string format, ...) { va_list args; - if (!fd) + if (level > LOG_LEVEL || !fd) { return; } va_start(args, format); WriteTime(fd); - std::vfprintf(fd, format, args); + WriteLevel(fd, level); + std::fprintf(fd, "%s|", tag.c_str()); + std::vfprintf(fd, format.c_str(), args); std::fprintf(fd, "\n"); std::fflush(fd); diff --git a/xpcPlugin/Log.h b/xpcPlugin/Log.h index 84d75c0f..018bf6c3 100644 --- a/xpcPlugin/Log.h +++ b/xpcPlugin/Log.h @@ -1,21 +1,28 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. -#ifndef XPC_LOG_H -#define XPC_LOG_H +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +#ifndef XPCPLUGIN_LOG_H_ +#define XPCPLUGIN_LOG_H_ #include // LOG_VERBOSITY determines the level of logging throughout the plugin. -// 0: Minimum logging. Only plugin manager events will be logged. -// 1: Critical errors. When an error that prevents correct operation of the -// plugin, attempt to write useful information to the log. Note that since -// XPC runs inside the X-Plane executable, we try very hard no to crash. -// As a result, these log messages may be the only indication of failure. -// 2: All errors. Any time something unexpected happens, log it. -// 3: Significant actions. Any time something happens outside of normal -// command processing, log it. -// 5: Everything. Log nearly every single action the plugin takes. This may -// have a detrimental impact on X-Plane performance. -#define LOG_VERBOSITY 2 +// OFF: No logging at all will be performed. +// FATAL: Critical errors that would normally result in termination of the program. Because XPC +// operates in the X-Plane process, we try to never actually crash. As a result, we this +// level of logging may be the only indication of a problem. +// ERROR: All errors not covered by FATAL +// WARN: Potentially, but not definitely, incorrect behavior +// INFO: Information about normal actions taken by the plugin. +// DEBUG: More verbose information usefull for debugging. +// TRACE: Log all the things! +#define LOG_OFF 0 +#define LOG_FATAL 1 +#define LOG_ERROR 2 +#define LOG_WARN 3 +#define LOG_INFO 4 +#define LOG_DEBUG 5 +#define LOG_TRACE 6 + +#define LOG_LEVEL LOG_TRACE namespace XPC { @@ -23,40 +30,37 @@ namespace XPC /// /// \details Provides functions to write lines to the XPC log file. /// \author Jason Watkins - /// \version 1.0 + /// \version 1.1 /// \since 1.0 /// \date Intial Version: 2015-04-09 - /// \date Last Updated: 2015-04-09 + /// \date Last Updated: 2015-05-11 class Log { public: /// Initializes the logging component by deleting old log files, /// writing header information to the log file. - static void Initialize(std::string header); + static void Initialize(const std::string& header); /// Closes the log file. static void Close(); - /// Writes the C string pointed to by format, followed by a line + /// Writes the string pointed to by format, followed by a line /// terminator to the XPC log file. If format contains format /// specifiers, additional arguments following format will be formatted /// and inserted in the resulting string, replacing their respective /// specifiers. /// /// \param format The format string appropriate for consumption by sprintf. - static void FormatLine(const char* format, ...); - - /// Writes the specified string value, followed by a line terminator - /// to the XPC log file. /// - /// \param value The value to write. - static void WriteLine(const std::string& value); + /// \remarks Note that Visual C++ silently fails va_start when the last non-varargs + /// argument is a reference, so we need a value-type format here. + static void FormatLine(int level, const std::string& tag, const std::string format, ...); - /// Writes the specified C string value, followed by a line terminator + /// Writes the specified string value, followed by a line terminator /// to the XPC log file. /// /// \param value The value to write. - static void WriteLine(const char* value); + static void WriteLine(int level, const std::string& tag, const std::string& value); }; } #endif diff --git a/xpcPlugin/Message.cpp b/xpcPlugin/Message.cpp index 3221a8f3..3563a09d 100644 --- a/xpcPlugin/Message.cpp +++ b/xpcPlugin/Message.cpp @@ -1,8 +1,10 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. #include "Message.h" #include "Log.h" +#include + #include #include #include @@ -11,79 +13,62 @@ namespace XPC { Message::Message() {} - Message Message::ReadFrom(UDPSocket& sock) + Message Message::ReadFrom(const UDPSocket& sock) { Message m; int len = sock.Read(m.buffer, bufferSize, &m.source); m.size = len < 0 ? 0 : len; - return m; - } - - unsigned long Message::GetMagicNumber() - { - if (size < 4) + if (len > 0) { - return 0; + Log::FormatLine(LOG_TRACE, "MESG", "Read message with length %i", len); } - return *((unsigned long*)buffer); + return m; } - std::string Message::GetHead() + std::string Message::GetHead() const { - if (size < 4) - { - return ""; - } - return std::string((char*)buffer, 4); + std::string val = size < 4 ? "" : std::string((char*)buffer, 4); + return val; } - const unsigned char* Message::GetBuffer() + const unsigned char* Message::GetBuffer() const { - if (size == 0) - { - return NULL; - } - return buffer; + const unsigned char* val = size == 0 ? NULL : buffer; + return val; } - std::size_t Message::GetSize() + std::size_t Message::GetSize() const { return size; } - struct sockaddr Message::GetSource() + struct sockaddr Message::GetSource() const { return source; } - void Message::PrintToLog() + void Message::PrintToLog() const { -#if LOG_VERBOSITY > 4 - std::stringstream ss; - ss << "[DEBUG]"; + using namespace std; + stringstream ss; // Dump raw bytes to string - ss << std::hex << std::setfill('0'); + ss << std::hex << setfill('0'); for (int i = 0; i < size; ++i) { - ss << ' ' << std::setw(2) << static_cast(buffer[i]); + ss << ' ' << setw(2) << static_cast(buffer[i]); } - Log::WriteLine(ss.str()); + Log::WriteLine(LOG_TRACE, "DBUG", ss.str()); - ss << std::dec; + std::string head = GetHead(); ss.str(""); - ss << "[" << GetHead() << "-DEBUG] (" << GetSize() << ")"; - switch (GetMagicNumber()) // Binary version of head + ss << "Head: " << head << std::dec << " Size: " << GetSize(); + if (head == "CONN" || head == "WYPT" || head == "TEXT") + { + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); + } + else if (head == "CTRL") { - case 0x4E4EF443: // CONN - case 0x54505957: // WYPT - case 0x54584554: // TEXT - { - Log::WriteLine(ss.str()); - break; - } - case 0x4C525443: // CTRL - { // Parse message data float pitch = *((float*)(buffer + 5)); float roll = *((float*)(buffer + 9)); @@ -96,89 +81,91 @@ namespace XPC { aircraft = buffer[26]; } - ss << " Attitude:(" << pitch << " " << roll << " " << yaw << ")"; - ss << " Thr:" << thr << " Gear:" << (int)gear << " Flaps:" << flaps; - Log::WriteLine(ss.str()); - break; - } - case 0x41544144: // DATA + ss << " Attitude:(" << pitch << " " << roll << " " << yaw << ")"; + ss << " Thr:" << thr << " Gear:" << (int)gear << " Flaps:" << flaps; + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); + } + else if (head == "DATA") { - std::size_t numCols = (size - 5) / 36; + size_t numCols = (size - 5) / 36; float values[32][9]; for (int i = 0; i < numCols; ++i) { values[i][0] = buffer[5 + 36 * i]; - std::memcpy(values[i] + 1, buffer + 9 + 36 * i, 9 * sizeof(float)); + memcpy(values[i] + 1, buffer + 9 + 36 * i, 9 * sizeof(float)); } - ss << " (" << numCols << " lines)"; - Log::WriteLine(ss.str()); - for (int i = 0; i < numCols; ++i) - { - ss.str(""); - ss << "\t#" << values[i][0]; - for (int j = 1; j < 9; ++j) - { + ss << " (" << numCols << " lines)"; + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); + for (int i = 0; i < numCols; ++i) + { + ss.str(""); + ss << " #" << values[i][0]; + for (int j = 1; j < 9; ++j) + { ss << " " << values[i][j]; - } - Log::WriteLine(ss.str()); - } - break; - } - case 0x46455244: // DREF - { - Log::WriteLine(ss.str()); - std::string dref((char*)buffer + 6, buffer[5]); - Log::FormatLine("-\tDREF (size %i) = %s", dref.length(), dref.c_str()); + } + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); + } + } + else if (head == "DREF") + { + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); + string dref((char*)buffer + 6, buffer[5]); + Log::FormatLine(LOG_DEBUG, "DBUG", " DREF (size %i) = %s", dref.length(), dref.c_str()); ss.str(""); int values = buffer[6 + buffer[5]]; - ss << "\tValues(size " << values << ") ="; + ss << " Values(size " << values << ") ="; for (int i = 0; i < values; ++i) { ss << " " << *((float*)(buffer + values + 1 + sizeof(float) * i)); - } - Log::WriteLine(ss.str()); - break; + } + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); } - case 0x44544547: // GETD - { - Log::WriteLine(ss.str()); + else if (head == "GETC" || head == "GETP") + { + ss << " Aircraft:" << (int)buffer[5]; + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); + } + else if (head == "GETD") + { + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); int cur = 6; for (int i = 0; i < buffer[5]; ++i) { - std::string dref((char*)buffer + cur + 1, buffer[cur]); - Log::FormatLine("\t#%i/%i (size:%i) %s", i + 1, buffer[5], dref.length(), dref.c_str()); + string dref((char*)buffer + cur + 1, buffer[cur]); + Log::FormatLine(LOG_DEBUG, "DBUG", " #%i/%i (size:%i) %s", + i + 1, buffer[5], dref.length(), dref.c_str()); cur += 1 + buffer[cur]; } - break; } - case 0x49534F50: // POSI + else if (head == "POSI") { char aircraft = buffer[5]; float gear = *((float*)(buffer + 30)); float pos[3]; float orient[3]; - std::memcpy(pos, buffer + 6, 12); - std::memcpy(orient, buffer + 18, 12); + memcpy(pos, buffer + 6, 12); + memcpy(orient, buffer + 18, 12); ss << " AC:" << (int)aircraft; ss << " Pos:(" << pos[0] << ' ' << pos[1] << ' ' << pos[2] << ") Orient:("; ss << orient[3] << ' ' << orient[4] << ' ' << orient[5] << ") Gear:"; - ss << gear; - Log::WriteLine(ss.str()); - break; + ss << gear; + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); } - case 0x554D4953: // SIMU + else if (head == "SIMU") { - ss << ' ' << (int)buffer[5]; - Log::WriteLine(ss.str()); - break; - } - default: + ss << ' ' << (int)buffer[5]; + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); + } + else if (head == "VIEW") + { + ss << "Type:" << *((unsigned long*)(buffer + 5)); + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); + } + else { - ss << " UNKNOWN HEADER "; - Log::WriteLine(ss.str()); - break; + ss << " UNKNOWN HEADER "; + Log::WriteLine(LOG_DEBUG, "DBUG", ss.str()); } - } -#endif } } diff --git a/xpcPlugin/Message.h b/xpcPlugin/Message.h index b44b41d2..095b77da 100644 --- a/xpcPlugin/Message.h +++ b/xpcPlugin/Message.h @@ -1,7 +1,7 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. -#ifndef XPC_MESSAGE_H -#define XPC_MESSAGE_H +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +#ifndef XPCPLUGIN_MESSAGE_H_ +#define XPCPLUGIN_MESSAGE_H_ #include "UDPSocket.h" @@ -10,10 +10,10 @@ namespace XPC /// Represents a message received from an XPC client. /// /// \author Jason Watkins - /// \version 1.0 + /// \version 1.1 /// \since 1.0 /// \date Intial Version: 2015-04-11 - /// \date Last Updated: 2015-04-11 + /// \date Last Updated: 2015-05-11 class Message { public: @@ -24,25 +24,25 @@ namespace XPC /// \returns A message parsed from the data read from sock. If no /// data was read or an error occurs, returns a message /// with the size set to 0. - static Message ReadFrom(UDPSocket& sock); + static Message ReadFrom(const UDPSocket& sock); /// Gets the message header in binary form. - unsigned long GetMagicNumber(); + unsigned long GetMagicNumber() const; /// Gets the message header. - std::string GetHead(); + std::string GetHead() const; /// Gets the buffer underlying the message. - const unsigned char* GetBuffer(); + const unsigned char* GetBuffer() const; /// Gets the size of the message in bytes. - std::size_t GetSize(); + std::size_t GetSize() const; /// Gets the address this message was read from. - struct sockaddr GetSource(); + struct sockaddr GetSource() const; /// Prints the contents of the message to the XPC log. - void PrintToLog(); + void PrintToLog() const; private: Message(); diff --git a/xpcPlugin/MessageHandlers.cpp b/xpcPlugin/MessageHandlers.cpp index 17e5cb05..d94be092 100644 --- a/xpcPlugin/MessageHandlers.cpp +++ b/xpcPlugin/MessageHandlers.cpp @@ -1,10 +1,26 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +// +// X-Plane API +// Copyright(c) 2008, Sandy Barbour and Ben Supnik All rights reserved. +// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and +// associated documentation files(the "Software"), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, publish, distribute, +// sublicense, and / or sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions : +// * Redistributions of source code must retain the above copyright notice, +// this list of conditions and the following disclaimer. +// * Neither the names of the authors nor that of X - Plane or Laminar Research +// may be used to endorse or promote products derived from this software +// without specific prior written permission from the authors or +// Laminar Research, respectively. #include "MessageHandlers.h" #include "DataManager.h" #include "Drawing.h" #include "Log.h" +#include "XPLMUtilities.h" + #include #include @@ -19,6 +35,7 @@ namespace XPC void MessageHandlers::SetSocket(UDPSocket* socket) { + Log::WriteLine(LOG_TRACE, "MSGH", "Setting socket"); MessageHandlers::sock = socket; } @@ -26,6 +43,7 @@ namespace XPC { if (handlers.size() == 0) { + Log::WriteLine(LOG_TRACE, "MSGH", "Initializing handlers"); // Common messages handlers.insert(std::make_pair("CONN", MessageHandlers::HandleConn)); handlers.insert(std::make_pair("CTRL", MessageHandlers::HandleCtrl)); @@ -36,8 +54,9 @@ namespace XPC handlers.insert(std::make_pair("SIMU", MessageHandlers::HandleSimu)); handlers.insert(std::make_pair("TEXT", MessageHandlers::HandleText)); handlers.insert(std::make_pair("WYPT", MessageHandlers::HandleWypt)); - // Not implemented messages - handlers.insert(std::make_pair("VIEW", MessageHandlers::HandleUnknown)); + handlers.insert(std::make_pair("VIEW", MessageHandlers::HandleView)); + handlers.insert(std::make_pair("GETC", MessageHandlers::HandleGetC)); + handlers.insert(std::make_pair("GETP", MessageHandlers::HandleGetP)); // X-Plane data messages handlers.insert(std::make_pair("DSEL", MessageHandlers::HandleXPlaneData)); handlers.insert(std::make_pair("USEL", MessageHandlers::HandleXPlaneData)); @@ -65,16 +84,14 @@ namespace XPC std::string head = msg.GetHead(); if (head == "") { + Log::WriteLine(LOG_WARN, "MSGH", "Warning: HandleMessage called with empty message."); return; // No Message to handle } - msg.PrintToLog(); // Set current connection sockaddr sourceaddr = msg.GetSource(); connectionKey = UDPSocket::GetHost(&sourceaddr); -#if LOG_VERBOSITY > 4 - Log::FormatLine("[MSGH] Handling message from %s", connectionKey.c_str()); -#endif + Log::FormatLine(LOG_INFO, "MSGH", "Handling message from %s", connectionKey.c_str()); std::map::iterator conn = connections.find(connectionKey); if (conn == connections.end()) // New connection { @@ -86,19 +103,17 @@ namespace XPC connection.addr = sourceaddr; connection.getdCount = 0; connections[connectionKey] = connection; -#if LOG_VERBOSITY > 2 - Log::FormatLine("[MSGH] New connection. ID=%u, Remote=%s", connection.id, connectionKey.c_str()); -#endif + Log::FormatLine(LOG_DEBUG, "MSGH", "New connection. ID=%u, Remote=%s", + connection.id, connectionKey.c_str()); } else { connection = (*conn).second; -#if LOG_VERBOSITY > 3 - Log::FormatLine("[MSGH] Existing connection. ID=%u, Remote=%s", + Log::FormatLine(LOG_DEBUG, "MSGH", "Existing connection. ID=%u, Remote=%s", connection.id, connectionKey.c_str()); -#endif } - + + msg.PrintToLog(); // Check if there is a handler for this message type. If so, execute // that handler. Otherwise, execute the unknown message handler. std::map::iterator iter = handlers.find(head); @@ -113,7 +128,7 @@ namespace XPC } } - void MessageHandlers::HandleConn(Message& msg) + void MessageHandlers::HandleConn(const Message& msg) { const unsigned char* buffer = msg.GetBuffer(); @@ -122,23 +137,21 @@ namespace XPC sockaddr* sa = &connection.addr; switch (sa->sa_family) { - case AF_INET: + case AF_INET: // IPV4 address { sockaddr_in* sin = reinterpret_cast(sa); (*sin).sin_port = htons(port); break; } - case AF_INET6: + case AF_INET6: // IPV6 addres { sockaddr_in6* sin = reinterpret_cast(sa); (*sin).sin6_port = htons(port); break; } default: -#if LOG_VERBOSITY > 0 - Log::WriteLine("[CONN] ERROR: Unknown address type."); + Log::WriteLine(LOG_ERROR, "CONN", "ERROR: Unknown address type."); return; -#endif } connections.erase(connectionKey); connectionKey = UDPSocket::GetHost(&connection.addr); @@ -149,31 +162,26 @@ namespace XPC response[5] = connection.id; // Update log -#if LOG_VERBOSITY > 1 - Log::FormatLine("[CONN] ID: %u New destination port: %u", + Log::FormatLine(LOG_TRACE, "CONN", "ID: %u New destination port: %u", connection.id, port); -#endif // Send response sock->SendTo(response, 6, &connection.addr); } - void MessageHandlers::HandleCtrl(Message& msg) + void MessageHandlers::HandleCtrl(const Message& msg) { // Update Log -#if LOG_VERBOSITY > 2 - Log::FormatLine("[CTRL] Message Received (Conn %i)", connection.id); -#endif + Log::FormatLine(LOG_TRACE, "CTRL", "Message Received (Conn %i)", connection.id); const unsigned char* buffer = msg.GetBuffer(); std::size_t size = msg.GetSize(); - //Legacy packets that don't specify an aircraft number should be 26 bytes long. - //Packets specifying an A/C num should be 27 bytes. + // Legacy packets that don't specify an aircraft number should be 26 bytes long. + // Packets specifying an A/C num should be 27 bytes. Packets specifying a speedbrake + // should be 31 bytes. if (size != 26 && size != 27 && size != 31) { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[CTRL] ERROR: Unexpected message length (%i)", size); -#endif + Log::FormatLine(LOG_ERROR, "CTRL", "ERROR: Unexpected message length (%i)", size); return; } @@ -181,63 +189,63 @@ namespace XPC float pitch = *((float*)(buffer + 5)); float roll = *((float*)(buffer + 9)); float yaw = *((float*)(buffer + 13)); - float thr = *((float*)(buffer + 17)); + float throttle = *((float*)(buffer + 17)); char gear = buffer[21]; float flaps = *((float*)(buffer + 22)); - unsigned char aircraft = 0; + unsigned char aircraftNumber = 0; if (size >= 27) { - aircraft = buffer[26]; + aircraftNumber = buffer[26]; } - float spdbrk = -998; + float spdbrk = DataManager::GetDefaultValue(); if (size >= 31) { spdbrk = *((float*)(buffer + 27)); } - if (pitch < -999.5 || pitch > -997.5) + if (!DataManager::IsDefault(pitch)) { - DataManager::Set(DREF_YokePitch, pitch, aircraft); + DataManager::Set(DREF_YokePitch, pitch, aircraftNumber); } - if (roll < -999.5 || roll > -997.5) + if (!DataManager::IsDefault(roll)) { - DataManager::Set(DREF_YokeRoll, roll, aircraft); + DataManager::Set(DREF_YokeRoll, roll, aircraftNumber); } - if (yaw < -999.5 || yaw > -997.5) + if (!DataManager::IsDefault(yaw)) { - DataManager::Set(DREF_YokeHeading, yaw, aircraft); + DataManager::Set(DREF_YokeHeading, yaw, aircraftNumber); } - if (thr < -999.5 || thr > -997.5) + if (!DataManager::IsDefault(throttle)) { - float thrArray[8]; + float throttleArray[8]; for (int i = 0; i < 8; ++i) { - thrArray[i] = thr; + throttleArray[i] = throttle; } - DataManager::Set(DREF_ThrottleSet, thrArray, 8, aircraft); - DataManager::Set(DREF_ThrottleActual, thrArray, 8, aircraft); - if (aircraft == 0) + DataManager::Set(DREF_ThrottleSet, throttleArray, 8, aircraftNumber); + DataManager::Set(DREF_ThrottleActual, throttleArray, 8, aircraftNumber); + if (aircraftNumber == 0) { - DataManager::Set("sim/flightmodel/engine/ENGN_thro_override", thrArray, 1); + DataManager::Set("sim/flightmodel/engine/ENGN_thro_override", throttleArray, 1); } } if (gear != -1) { - DataManager::SetGear(gear, false, aircraft); + DataManager::SetGear(gear, false, aircraftNumber); } - if (flaps < -999.5 || flaps > -997.5) + if (!DataManager::IsDefault(flaps)) { - DataManager::Set(DREF_FlapSetting, flaps, aircraft); + DataManager::Set(DREF_FlapSetting, flaps, aircraftNumber); } - if (spdbrk < -999.5 || spdbrk > -997.5) + if (!DataManager::IsDefault(spdbrk)) { - DataManager::Set(DREF_SpeedBrakeSet, spdbrk, aircraft); + DataManager::Set(DREF_SpeedBrakeSet, spdbrk, aircraftNumber); } } - void MessageHandlers::HandleData(Message& msg) + void MessageHandlers::HandleData(const Message& msg) { // Parse data const unsigned char* buffer = msg.GetBuffer(); @@ -245,59 +253,51 @@ namespace XPC std::size_t numCols = (size - 5) / 36; if (numCols > 0) { -#if LOG_VERBOSITY > 1 - Log::FormatLine("[DATA] Message Received (Conn %i)", connection.id); -#endif + Log::FormatLine(LOG_TRACE, "DATA", "Message Received (Conn %i)", connection.id); } else { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[DATA] WARNING: Empty data packet received (Conn %i)", connection.id); -#endif + Log::FormatLine(LOG_WARN, "DATA", "WARNING: Empty data packet received (Conn %i)", connection.id); return; } if (numCols > 134) // Error. Will overflow values { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[DATA] ERROR: numCols to large."); -#endif + Log::FormatLine(LOG_ERROR, "DATA", "ERROR: numCols to large."); return; } float values[134][9]; for (int i = 0; i < numCols; ++i) { + // 5 byte header + (9 * 4 = 36) bytes per row values[i][0] = buffer[5 + 36 * i]; memcpy(values[i] + 1, buffer + 9 + 36 * i, 9 * sizeof(float)); } // Update log - float savedAlpha = -998; - float savedHPath = -998; + float savedAlpha = DataManager::GetDefaultValue(); + float savedHPath = DataManager::GetDefaultValue(); for (int i = 0; i < numCols; ++i) { unsigned char dataRef = (unsigned char)values[i][0]; if (dataRef >= 134) { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[DATA] ERROR: DataRef # must be between 0 - 134 (Received: %hi)", (int)dataRef); -#endif + Log::FormatLine(LOG_ERROR, "DATA", "ERROR: DataRef # must be between 0 - 134 (Received: %hi)", (int)dataRef); continue; } switch (dataRef) { + // TODO(jason-watkins): This currently overwrites the velocity several times. Should look into making this case smarter somehow. case 3: // Velocity { float theta = DataManager::GetFloat(DREF_Pitch); - float alpha = savedAlpha != -998 ? savedAlpha : DataManager::GetFloat(DREF_AngleOfAttack); - float hpath = savedHPath != -998 ? savedHPath : DataManager::GetFloat(DREF_HPath); + float alpha = DataManager::IsDefault(savedAlpha) ? savedAlpha : DataManager::GetFloat(DREF_AngleOfAttack); + float hpath = DataManager::IsDefault(savedHPath) ? savedHPath : DataManager::GetFloat(DREF_HPath); if (alpha != alpha || hpath != hpath) { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DATA] ERROR: Value must be a number (NaN received)"); -#endif + Log::WriteLine(LOG_ERROR, "DATA", "ERROR: Value must be a number (NaN received)"); break; } const float deg2rad = 0.0174532925F; @@ -305,7 +305,7 @@ namespace XPC for (int j = 0; j < 3; ++j) { float v = values[i][ind[j]]; - if (v != -998) + if (!DataManager::IsDefault(v)) { DataManager::Set(DREF_LocalVX, v*cos((theta - alpha)*deg2rad)*sin(hpath*deg2rad)); DataManager::Set(DREF_LocalVY, v*sin((theta - alpha)*deg2rad)); @@ -316,27 +316,25 @@ namespace XPC } case 17: // Orientation { - float orient[3]; - orient[0] = values[i][1]; - orient[1] = values[i][2]; - orient[2] = values[i][3]; - DataManager::SetOrientation(orient); + float orientation[3]; + orientation[0] = values[i][1]; + orientation[1] = values[i][2]; + orientation[2] = values[i][3]; + DataManager::SetOrientation(orientation); break; } case 18: // Alpha, hpath etc. { if (values[i][1] != values[i][1] || values[i][3] != values[i][3]) { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DATA] ERROR: Value must be a number (NaN received)"); -#endif + Log::WriteLine(LOG_ERROR, "DATA", "ERROR: Value must be a number (NaN received)"); break; } - if (values[i][1] != -998) + if (!DataManager::IsDefault(values[i][1])) { savedAlpha = values[i][1]; } - if (values[i][3] != -998) + if (DataManager::IsDefault(values[i][3])) { savedHPath = values[i][3]; } @@ -355,17 +353,15 @@ namespace XPC { if (values[i][1] != values[i][1]) { -#if LOG_VERBOSITY > 0 - Log::WriteLine("[DATA] ERROR: Value must be a number (NaN received)"); -#endif + Log::WriteLine(LOG_ERROR, "DATA", "ERROR: Value must be a number (NaN received)"); break; } - float thr[8]; + float throttle[8]; for (int j = 0; j < 8; ++j) { - thr[j] = values[i][1]; + throttle[j] = values[i][1]; } - DataManager::Set(DREF_ThrottleSet, thr, 8); + DataManager::Set(DREF_ThrottleSet, throttle, 8); break; } default: // Non-Special dataRefs @@ -374,10 +370,8 @@ namespace XPC memcpy(line, values[i] + 1, 8 * sizeof(float)); for (int j = 0; j < 8; ++j) { -#if LOG_VERBOSITY > 1 - Log::FormatLine("[DATA] Setting Dataref %i.%i to %f", dataRef, j, line[j]); -#endif - + Log::FormatLine(LOG_ERROR, "DATA", "Setting Dataref %i.%i to %f", dataRef, j, line[j]); + // TODO(jason-watkins): Why is this a special case? if (dataRef == 14 && j == 0) { DataManager::SetGear(line[0], true); @@ -387,7 +381,7 @@ namespace XPC DREF dref = XPData[dataRef][j]; if (dref == DREF_None) { - // TODO: Send single line instead! + // TODO(jason): Send single line instead! HandleXPlaneData(msg); } else @@ -400,46 +394,96 @@ namespace XPC } } - void MessageHandlers::HandleDref(Message& msg) + void MessageHandlers::HandleDref(const Message& msg) { + Log::FormatLine(LOG_TRACE, "DREF", "Request to set DREF value received (Conn %i)", connection.id); const unsigned char* buffer = msg.GetBuffer(); - unsigned char len = buffer[5]; - std::string dref = std::string((char*)buffer + 6, len); + std::size_t size = msg.GetSize(); + std::size_t pos = 5; + while (pos < size) + { + unsigned char len = buffer[pos++]; + if (pos + len > size) + { + break; + } + std::string dref = std::string((char*)buffer + pos, len); + pos += len; + + unsigned char valueCount = buffer[pos++]; + if (pos + 4 * valueCount > size) + { + break; + } + float* values = (float*)(buffer + pos); + pos += 4 * valueCount; - unsigned char valueCount = buffer[6 + len]; - float* values = (float*)(buffer + 7 + len); + DataManager::Set(dref, values, valueCount); + Log::FormatLine(LOG_DEBUG, "DREF", "Set %d values for %s", valueCount, dref.c_str()); + } + if (pos != size) + { + Log::WriteLine(LOG_ERROR, "DREF", "ERROR: Command did not terminate at the expected position."); + } + } -#if LOG_VERBOSITY > 1 - Log::FormatLine("[DREF] Request to set DREF value received (Conn %i): %s", connection.id, dref.c_str()); -#endif + void MessageHandlers::HandleGetC(const Message& msg) + { + const unsigned char* buffer = msg.GetBuffer(); + std::size_t size = msg.GetSize(); + if (size != 6) + { + Log::FormatLine(LOG_ERROR, "GCTL", "Unexpected message length: %u", size); + return; + } + unsigned char aircraft = buffer[5]; + // TODO(jason-watkins): Get proper printf specifier for unsigned char + Log::FormatLine(LOG_TRACE, "GCTL", "Getting control information for aircraft %u", aircraft); + + float throttle[8]; + unsigned char response[31] = "CTRL"; + *((float*)(response + 5)) = DataManager::GetFloat(DREF_Elevator, aircraft); + *((float*)(response + 9)) = DataManager::GetFloat(DREF_Aileron, aircraft); + *((float*)(response + 13)) = DataManager::GetFloat(DREF_Rudder, aircraft); + DataManager::GetFloatArray(DREF_ThrottleSet, throttle, 8, aircraft); + *((float*)(response + 17)) = throttle[0]; + if (aircraft == 0) + { + response[21] = (char)DataManager::GetInt(DREF_GearHandle, aircraft); + } + else + { + float mpGear[10]; + DataManager::GetFloatArray(DREF_GearDeploy, mpGear, 10, aircraft); + response[21] = mpGear[0] > 0.5 ? 1 : 0; + } + *((float*)(response + 22)) = DataManager::GetFloat(DREF_FlapSetting, aircraft); + response[26] = aircraft; + *((float*)(response + 27)) = DataManager::GetFloat(DREF_SpeedBrakeSet, aircraft); - DataManager::Set(dref, values, valueCount); + sock->SendTo(response, 31, &connection.addr); } - void MessageHandlers::HandleGetD(Message& msg) + void MessageHandlers::HandleGetD(const Message& msg) { const unsigned char* buffer = msg.GetBuffer(); unsigned char drefCount = buffer[5]; if (drefCount == 0) // Use last request { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[GETD] DATA Requested: Repeat last request from connection %i (%i data refs)", + Log::FormatLine(LOG_TRACE, "GETD", + "DATA Requested: Repeat last request from connection %i (%i data refs)", connection.id, connection.getdCount); -#endif if (connection.getdCount == 0) // No previous request to use { -#if LOG_VERBOSITY > 1 - Log::FormatLine("[GETD] ERROR: No previous requests from connection %i.", connection.id); -#endif + Log::FormatLine(LOG_ERROR, "GETD", "ERROR: No previous requests from connection %i.", + connection.id); return; } } else // New request { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[GETD] DATA Requested: New Request for connection %i (%i data refs)", + Log::FormatLine(LOG_TRACE, "GETD", "DATA Requested: New Request for connection %i (%i data refs)", connection.id, drefCount); -#endif std::size_t ptr = 6; for (int i = 0; i < drefCount; ++i) { @@ -466,64 +510,84 @@ namespace XPC sock->SendTo(response, cur, &connection.addr); } - void MessageHandlers::HandlePosi(Message& msg) + void MessageHandlers::HandleGetP(const Message& msg) + { + const unsigned char* buffer = msg.GetBuffer(); + std::size_t size = msg.GetSize(); + if (size != 6) + { + Log::FormatLine(LOG_ERROR, "GPOS", "Unexpected message length: %u", size); + return; + } + unsigned char aircraft = buffer[5]; + Log::FormatLine(LOG_TRACE, "GPOS", "Getting position information for aircraft %u", aircraft); + + unsigned char response[34] = "POSI"; + response[5] = (char)DataManager::GetInt(DREF_GearHandle, aircraft); + *((float*)(response + 6)) = (float)DataManager::GetDouble(DREF_Latitude, aircraft); + *((float*)(response + 10)) = (float)DataManager::GetDouble(DREF_Longitude, aircraft); + *((float*)(response + 14)) = (float)DataManager::GetDouble(DREF_Elevation, aircraft); + *((float*)(response + 18)) = DataManager::GetFloat(DREF_Pitch, aircraft); + *((float*)(response + 22)) = DataManager::GetFloat(DREF_Roll, aircraft); + *((float*)(response + 26)) = DataManager::GetFloat(DREF_HeadingTrue, aircraft); + + float gear[10]; + DataManager::GetFloatArray(DREF_GearDeploy, gear, 10, aircraft); + *((float*)(response + 30)) = gear[0]; + + sock->SendTo(response, 34, &connection.addr); + } + + void MessageHandlers::HandlePosi(const Message& msg) { // Update log -#if LOG_VERBOSITY > 0 - Log::FormatLine("[POSI] Message Received (Conn %i)", connection.id); -#endif + Log::FormatLine(LOG_TRACE, "POSI", "Message Received (Conn %i)", connection.id); const unsigned char* buffer = msg.GetBuffer(); const std::size_t size = msg.GetSize(); if (size < 34) { -#if LOG_VERBOSITY > 1 - Log::FormatLine("[POSI] ERROR: Unexpected size: %i (Expected at least 34)", size); -#endif + Log::FormatLine(LOG_ERROR, "POSI", "ERROR: Unexpected size: %i (Expected at least 34)", size); return; } - char aircraft = buffer[5]; + char aircraftNumber = buffer[5]; float gear = *((float*)(buffer + 30)); float pos[3]; float orient[3]; memcpy(pos, buffer + 6, 12); memcpy(orient, buffer + 18, 12); - if (aircraft > 0) + if (aircraftNumber > 0) { - // Enable AI for the aircraft we are setting + // Enable AI for the aircraftNumber we are setting float ai[20]; std::size_t result = DataManager::GetFloatArray(DREF_PauseAI, ai, 20); if (result == 20) // Only set values if they were retrieved successfully. { - ai[aircraft] = 1; + ai[aircraftNumber] = 1; DataManager::Set(DREF_PauseAI, ai, 0, 20); } } - DataManager::SetPosition(pos, aircraft); - DataManager::SetOrientation(orient, aircraft); + DataManager::SetPosition(pos, aircraftNumber); + DataManager::SetOrientation(orient, aircraftNumber); if (gear != -1) { - DataManager::SetGear(gear, true, aircraft); + DataManager::SetGear(gear, true, aircraftNumber); } } - void MessageHandlers::HandleSimu(Message& msg) + void MessageHandlers::HandleSimu(const Message& msg) { // Update log -#if LOG_VERBOSITY > 1 - Log::FormatLine("[SIMU] Message Received (Conn %i)", connection.id); -#endif + Log::FormatLine(LOG_TRACE, "SIMU", "Message Received (Conn %i)", connection.id); char v = msg.GetBuffer()[5]; if (v < 0 || v > 2) { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[SIMU] ERROR: Invalid argument: %i", v); + Log::FormatLine(LOG_ERROR, "SIMU", "ERROR: Invalid argument: %i", v); return; -#endif } int value[20]; @@ -546,28 +610,24 @@ namespace XPC // Set DREF DataManager::Set(DREF_Pause, value, 20); -#if LOG_VERBOSITY > 2 switch (v) { case 0: - Log::WriteLine("[SIMU] Simulation Resumed"); + Log::WriteLine(LOG_INFO, "SIMU", "Simulation resumed"); break; case 1: - Log::WriteLine("[SIMU] Simulation Paused"); + Log::WriteLine(LOG_INFO, "SIMU", "Simulation paused"); break; case 2: - Log::WriteLine("[SIMU] Simulation switched."); + Log::FormatLine(LOG_INFO, "SIMU", "Simulation switched to %i", value[0]); break; } -#endif } - void MessageHandlers::HandleText(Message& msg) + void MessageHandlers::HandleText(const Message& msg) { // Update Log -#if LOG_VERBOSITY > 0 - Log::FormatLine("[TEXT] Message Received (Conn %i)", connection.id); -#endif + Log::FormatLine(LOG_TRACE, "TEXT", "Message Received (Conn %i)", connection.id); std::size_t len = msg.GetSize(); const unsigned char* buffer = msg.GetBuffer(); @@ -575,18 +635,14 @@ namespace XPC char text[256] = { 0 }; if (len < 14) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[TEXT] ERROR: Length less than 14 bytes"); -#endif + Log::WriteLine(LOG_ERROR, "TEXT", "ERROR: Length less than 14 bytes"); return; } size_t msgLen = (unsigned char)buffer[13]; if (msgLen == 0) { Drawing::ClearMessage(); -#if LOG_VERBOSITY > 2 - Log::WriteLine("[TEXT] Text cleared"); -#endif + Log::WriteLine(LOG_INFO, "TEXT", "[TEXT] Text cleared"); } else { @@ -594,18 +650,30 @@ namespace XPC int y = *((int*)(buffer + 9)); strncpy(text, (char*)buffer + 14, msgLen); Drawing::SetMessage(x, y, text); -#if LOG_VERBOSITY > 2 - Log::WriteLine("[TEXT] Text set"); -#endif + Log::WriteLine(LOG_INFO, "TEXT", "[TEXT] Text set"); } } - void MessageHandlers::HandleWypt(Message& msg) + void MessageHandlers::HandleView(const Message& msg) + { + // Update Log + Log::FormatLine(LOG_TRACE, "VIEW", "Message Received(Conn %i)", connection.id); + + const std::size_t size = msg.GetSize(); + if (size != 9) + { + Log::FormatLine(LOG_ERROR, "VIEW", "Error: Unexpected length. Message was %d bytes, expected 9.", size); + return; + } + const unsigned char* buffer = msg.GetBuffer(); + int type = *((int*)(buffer + 5)); + XPLMCommandKeyStroke(type); + } + + void MessageHandlers::HandleWypt(const Message& msg) { // Update Log -#if LOG_VERBOSITY > 0 - Log::FormatLine("[WYPT] Message Received (Conn %i)", connection.id); -#endif + Log::FormatLine(LOG_TRACE, "WYPT", "Message Received (Conn %i)", connection.id); // Parse data const unsigned char* buffer = msg.GetBuffer(); @@ -622,9 +690,7 @@ namespace XPC } // Perform operation -#if LOG_VERBOSITY > 2 - Log::FormatLine("[WYPT] Performing operation %i", op); -#endif + Log::FormatLine(LOG_INFO, "WYPT", "Performing operation %i", op); switch (op) { case 1: @@ -637,18 +703,14 @@ namespace XPC Drawing::ClearWaypoints(); break; default: -#if LOG_VERBOSITY > 1 - Log::FormatLine("[WYPT] ERROR: %i is not a valid operation.", op); -#endif + Log::FormatLine(LOG_ERROR, "WYPT", "ERROR: %i is not a valid operation.", op); break; } } - void MessageHandlers::HandleXPlaneData(Message& msg) + void MessageHandlers::HandleXPlaneData(const Message& msg) { -#if LOG_VERBOSITY > 1 - Log::WriteLine("[MSGH] Sending raw data to X-Plane"); -#endif + Log::WriteLine(LOG_TRACE, "MSGH", "Sending raw data to X - Plane"); sockaddr_in loopback; loopback.sin_family = AF_INET; loopback.sin_addr.s_addr = htonl(INADDR_LOOPBACK); @@ -656,11 +718,8 @@ namespace XPC sock->SendTo(msg.GetBuffer(), msg.GetSize(), (sockaddr*)&loopback); } - void MessageHandlers::HandleUnknown(Message& msg) + void MessageHandlers::HandleUnknown(const Message& msg) { - // UPDATE LOG -#if LOG_VERBOSITY > 0 - Log::FormatLine("[EXEC] ERROR: Unknown packet type %s", msg.GetHead().c_str()); -#endif + Log::FormatLine(LOG_ERROR, "MSGH", "ERROR: Unknown packet type %s", msg.GetHead().c_str()); } } diff --git a/xpcPlugin/MessageHandlers.h b/xpcPlugin/MessageHandlers.h index b7cfd254..d7f317d9 100644 --- a/xpcPlugin/MessageHandlers.h +++ b/xpcPlugin/MessageHandlers.h @@ -1,7 +1,7 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. -#ifndef XPC_MESSAGEHANDLERS_H -#define XPC_MESSAGEHANDLERS_H +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +#ifndef XPCPLUGIN_MESSAGEHANDLERS_H_ +#define XPCPLUGIN_MESSAGEHANDLERS_H_ #include "Message.h" #include @@ -10,15 +10,15 @@ namespace XPC { /// A function that handles a message. - typedef void(*MessageHandler)(Message&); + typedef void(*MessageHandler)(const Message&); - /// Handles incommming messages and manages connections. + /// Handles incoming messages and manages connections. /// /// \author Jason Watkins - /// \version 1.0 + /// \version 1.1 /// \since 1.0 /// \date Intial Version: 2015-04-12 - /// \date Last Updated: 2015-04-12 + /// \date Last Updated: 2015-05-11 class MessageHandlers { public: @@ -33,21 +33,27 @@ namespace XPC /// \param msg The message to be processed. static void HandleMessage(Message& msg); - /// Sets the socke that message handlers use to send responses. + /// Sets the socket that message handlers use to send responses. static void SetSocket(UDPSocket* socket); private: - static void HandleConn(Message& msg); - static void HandleCtrl(Message& msg); - static void HandleData(Message& msg); - static void HandleDref(Message& msg); - static void HandleGetD(Message& msg); - static void HandlePosi(Message& msg); - static void HandleSimu(Message& msg); - static void HandleText(Message& msg); - static void HandleWypt(Message& msg); - static void HandleXPlaneData(Message& msg); - static void HandleUnknown(Message& msg); + // One handler per message type. Message types are descripbed on the + // wiki at https://github.com/nasa/XPlaneConnect/wiki/Network-Information + static void HandleConn(const Message& msg); + static void HandleCtrl(const Message& msg); + static void HandleData(const Message& msg); + static void HandleDref(const Message& msg); + static void HandleGetC(const Message& msg); + static void HandleGetD(const Message& msg); + static void HandleGetP(const Message& msg); + static void HandlePosi(const Message& msg); + static void HandleSimu(const Message& msg); + static void HandleText(const Message& msg); + static void HandleWypt(const Message& msg); + static void HandleView(const Message& msg); + + static void HandleXPlaneData(const Message& msg); + static void HandleUnknown(const Message& msg); typedef struct { diff --git a/xpcPlugin/UDPSocket.cpp b/xpcPlugin/UDPSocket.cpp index ed4710d5..210cc565 100644 --- a/xpcPlugin/UDPSocket.cpp +++ b/xpcPlugin/UDPSocket.cpp @@ -1,5 +1,5 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. #include "Log.h" #include "UDPSocket.h" @@ -8,41 +8,37 @@ namespace XPC { + const static std::string tag = "SOCK"; + UDPSocket::UDPSocket(unsigned short recvPort) { -#if LOG_VERBOSITY > 1 - Log::FormatLine("[SOCK] Opening socket (port:%d)", recvPort); -#endif + Log::FormatLine(LOG_TRACE, tag, "Opening socket (port:%d)", recvPort); // Setup Port struct sockaddr_in localAddr; localAddr.sin_family = AF_INET; localAddr.sin_addr.s_addr = INADDR_ANY; localAddr.sin_port = htons(recvPort); - - //Create and bind the socket + + // Create and bind the socket #ifdef _WIN32 WSADATA wsa; int startResult = WSAStartup(MAKEWORD(2, 2), &wsa); if (startResult != 0) { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[SOCK] ERROR: WSAStartup failed with error code %i.", startResult); -#endif + Log::FormatLine(LOG_FATAL, tag, "ERROR: WSAStartup failed with error code %i.", startResult); this->sock = ~0; return; } if ((this->sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)) == INVALID_SOCKET) { -#if LOG_VERBOSITY > 0 int err = WSAGetLastError(); - Log::FormatLine("[SOCK] ERROR: Failed to open socket. (Error code %i)", err); -#endif + Log::FormatLine(LOG_FATAL, tag, "ERROR: Failed to open socket. (Error code %i)", err); return; } #elif (__APPLE__ || __linux) if ((this->sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)) == -1) { - Log::WriteLine("[SOCK] ERROR: Failed to open socket"); + Log::WriteLine(LOG_FATAL, tag, "ERROR: Failed to open socket"); return; } int optval = 1; @@ -52,39 +48,35 @@ namespace XPC if (bind(this->sock, (struct sockaddr*)&localAddr, sizeof(localAddr)) != 0) { #ifdef _WIN32 -#if LOG_VERBOSITY > 0 int err = WSAGetLastError(); - Log::FormatLine("[SOCK] ERROR: Failed to bind socket. (Error code %i)", err); -#endif + Log::FormatLine(LOG_FATAL, tag, "ERROR: Failed to bind socket. (Error code %i)", err); +#else + Log::WriteLine(LOG_FATAL, tag, "ERROR: Failed to bind socket."); #endif return; } - //Set Timout + // Set Timout int usTimeOut = 500; #ifdef _WIN32 DWORD msTimeOutWin = 1; // Minimum socket timeout in Windows is 1ms if(setsockopt(this->sock, SOL_SOCKET, SO_RCVTIMEO, (char *)&msTimeOutWin, sizeof(msTimeOutWin)) != 0) { -#if LOG_VERBOSITY > 1 int err = WSAGetLastError(); - Log::FormatLine("[SOCK] ERROR: Failed to set timeout. (Error code %i)", err); -#endif + Log::FormatLine(LOG_ERROR, tag, "ERROR: Failed to set timeout. (Error code %i)", err); } #else struct timeval tv; - tv.tv_sec = 0; /* Sec Timeout */ - tv.tv_usec = usTimeOut; // Microsec Timeout + tv.tv_sec = 0; + tv.tv_usec = usTimeOut; setsockopt(this->sock, SOL_SOCKET, SO_RCVTIMEO, (char *)&tv, sizeof(struct timeval)); #endif } UDPSocket::~UDPSocket() { -#if LOG_VERBOSITY > 1 - Log::FormatLine("[SOCK] Closing socket (%d)", this->sock); -#endif + Log::FormatLine(LOG_TRACE, tag, "Closing socket (%d)", this->sock); #ifdef _WIN32 closesocket(this->sock); #elif (__APPLE__ || __linux) @@ -92,7 +84,7 @@ namespace XPC #endif } - int UDPSocket::Read(unsigned char* dst, int maxLen, sockaddr* recvAddr) + int UDPSocket::Read(unsigned char* dst, int maxLen, sockaddr* recvAddr) const { socklen_t recvaddrlen = sizeof(*recvAddr); int status = 0; @@ -111,18 +103,16 @@ namespace XPC FD_SET(sock, &stReadFDS); FD_ZERO(&stExceptFDS); FD_SET(sock, &stExceptFDS); - tv.tv_sec = 0; /* Sec Timeout */ - tv.tv_usec = 250; // Microsec Timeout + tv.tv_sec = 0; + tv.tv_usec = 250; // Select Command int result = select(-1, &stReadFDS, (FD_SET *)0, &stExceptFDS, &tv); -#if LOG_VERBOSITY > 1 if (result == SOCKET_ERROR) { int err = WSAGetLastError(); - Log::FormatLine("[SOCK] ERROR: Select failed. (Error code %i)", err); + Log::FormatLine(LOG_ERROR, tag, "ERROR: Select failed. (Error code %i)", err); } -#endif if (result <= 0) // No Data or error { return -1; @@ -137,22 +127,18 @@ namespace XPC return status; } - void UDPSocket::SendTo(const unsigned char* buffer, std::size_t len, sockaddr* remote) + void UDPSocket::SendTo(const unsigned char* buffer, std::size_t len, sockaddr* remote) const { if (sendto(sock, (char*)buffer, (int)len, 0, remote, sizeof(*remote)) < 0) { -#if LOG_VERBOSITY > 0 - Log::FormatLine("[SOCK] Send failed. (remote: %s)", GetHost(remote).c_str()); -#endif + Log::FormatLine(LOG_ERROR, tag, "Send failed. (remote: %s)", GetHost(remote).c_str()); } else { -#if LOG_VERBOSITY > 3 - Log::FormatLine("[SOCK] Datagram sent. (remote: %s)", GetHost(remote).c_str()); -#endif + Log::FormatLine(LOG_INFO, tag, "Send succeeded. (remote: %s)", GetHost(remote).c_str()); } } - + std::string UDPSocket::GetHost(sockaddr* sa) { char ip[INET6_ADDRSTRLEN + 6] = { 0 }; diff --git a/xpcPlugin/UDPSocket.h b/xpcPlugin/UDPSocket.h index 184f6e50..5b87439a 100644 --- a/xpcPlugin/UDPSocket.h +++ b/xpcPlugin/UDPSocket.h @@ -1,14 +1,14 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. -#ifndef XPC_SOCKET_H -#define XPC_SOCKET_H +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. +#ifndef XPCPLUGIN_SOCKET_H_ +#define XPCPLUGIN_SOCKET_H_ #include #include #ifdef _WIN32 #include #include -#pragma comment(lib,"ws2_32.lib") //Winsock Library +#pragma comment(lib, "ws2_32.lib") // Winsock Library #elif (__APPLE__ || __linux) #include #include @@ -23,10 +23,10 @@ namespace XPC /// data to XPC clients. /// /// \author Jason Watkins - /// \version 1.0 + /// \version 1.1 /// \since 1.0 /// \date Intial Version: 2015-04-10 - /// \date Last Updated: 2015-04-11 + /// \date Last Updated: 2015-05-11 class UDPSocket { public: @@ -34,7 +34,7 @@ namespace XPC /// specified receive port. /// /// \param recvPort The port on which this instance will receive data. - UDPSocket(unsigned short recvPort); + explicit UDPSocket(unsigned short recvPort); /// Closes the underlying socket for this instance. ~UDPSocket(); @@ -45,17 +45,17 @@ namespace XPC /// \param buffer The array to copy the data into. /// \param size The number of bytes to read. /// \param remoteAddr When at least one byte is read, contains the address - /// of the remote host. + /// of the remote host. /// \returns The number of bytes read, or a negative number if - /// an error occurs. - int Read(unsigned char* buffer, int size, sockaddr* remoteAddr); + /// an error occurs. + int Read(unsigned char* buffer, int size, sockaddr* remoteAddr) const; /// Sends data to the specified remote endpoint. /// /// \param data The data to be sent. /// \param len The number of bytes to send. /// \param remote The destination socket. - void SendTo(const unsigned char* buffer, std::size_t len, sockaddr* remote); + void SendTo(const unsigned char* buffer, std::size_t len, sockaddr* remote) const; /// Gets a string containing the IP address and port contained in the given sockaddr. /// diff --git a/xpcPlugin/XPCPlugin.cpp b/xpcPlugin/XPCPlugin.cpp index cd25d966..f94b98ad 100755 --- a/xpcPlugin/XPCPlugin.cpp +++ b/xpcPlugin/XPCPlugin.cpp @@ -1,58 +1,58 @@ -//Copyright (c) 2013-2015 United States Government as represented by the Administrator of the -//National Aeronautics and Space Administration. All Rights Reserved. +// Copyright (c) 2013-2015 United States Government as represented by the Administrator of the +// National Aeronautics and Space Administration. All Rights Reserved. // -//DISCLAIMERS -// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, -// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT -// THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY -// THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, -// WILL CONFORM TO THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN -// ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, -// HARDWARE, SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT -// SOFTWARE. FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING -// THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." +// DISCLAIMERS +// No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, +// EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT +// THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM INFRINGEMENT, ANY WARRANTY +// THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, +// WILL CONFORM TO THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN +// ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, +// HARDWARE, SOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT +// SOFTWARE. FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES REGARDING +// THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND DISTRIBUTES IT "AS IS." // -// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES -// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF -// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, EXPENSES -// OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING -// FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE -// UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT, -// TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER SHALL BE THE -// IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. +// Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE UNITED STATES +// GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF +// RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES, EXPENSES +// OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING +// FROM, RECIPIENT'S USE OF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE +// UNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT, +// TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE REMEDY FOR ANY SUCH MATTER SHALL BE THE +// IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. // -//X-Plane API -//Copyright(c) 2008, Sandy Barbour and Ben Supnik All rights reserved. -//Permission is hereby granted, free of charge, to any person obtaining a copy of this software and -//associated documentation files(the "Software"), to deal in the Software without restriction, -//including without limitation the rights to use, copy, modify, merge, publish, distribute, -//sublicense, and / or sell copies of the Software, and to permit persons to whom the Software is -//furnished to do so, subject to the following conditions : -// * Redistributions of source code must retain the above copyright notice, -// this list of conditions and the following disclaimer. -// * Neither the names of the authors nor that of X - Plane or Laminar Research -// may be used to endorse or promote products derived from this software -// without specific prior written permission from the authors or -// Laminar Research, respectively. - - -// X-Plane Connect Plugin +// X-Plane API +// Copyright(c) 2008, Sandy Barbour and Ben Supnik All rights reserved. +// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and +// associated documentation files(the "Software"), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, publish, distribute, +// sublicense, and / or sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions : +// * Redistributions of source code must retain the above copyright notice, +// this list of conditions and the following disclaimer. +// * Neither the names of the authors nor that of X - Plane or Laminar Research +// may be used to endorse or promote products derived from this software +// without specific prior written permission from the authors or +// Laminar Research, respectively. + + +// X-Plane Connect Plugin // -// DESCRIPTION -// XPCPlugin Facilitates Communication to and from the XPlane +// DESCRIPTION +// XPCPlugin Facilitates Communication to and from the XPlane // -// INSTRUCTIONS -// See Readme.md in the root of this repository or the wiki hosted on GitHub at -// https://github.com/nasa/XPlaneConnect/wiki for requirements, installation instructions, -// and detailed documentation. +// INSTRUCTIONS +// See Readme.md in the root of this repository or the wiki hosted on GitHub at +// https://github.com/nasa/XPlaneConnect/wiki for requirements, installation instructions, +// and detailed documentation. // -// CONTACT -// For questions email Christopher Teubert (christopher.a.teubert@nasa.gov) +// CONTACT +// For questions email Christopher Teubert (christopher.a.teubert@nasa.gov) // -// CONTRIBUTORS -// CT: Christopher Teubert (christopher.a.teubert@nasa.gov) -// JW: Jason Watkins (jason.w.watkins@nasa.gov) +// CONTRIBUTORS +// CT: Christopher Teubert (christopher.a.teubert@nasa.gov) +// JW: Jason Watkins (jason.w.watkins@nasa.gov) // XPC Includes #include "DataManager.h" @@ -75,7 +75,8 @@ XPC::UDPSocket* sock = NULL; -double start,lap; +double start; +double lap; static double timeConvert = 0.0; int benchmarkingSwitch = 0; // 1 = time for operations, 2 = time for op + cycle; int cyclesToClear = -1; // Clear message bus every n cycles. -1 == dont clear @@ -90,40 +91,37 @@ static float XPCFlightLoopCallback(float inElapsedSinceLastCall, float inElapsed PLUGIN_API int XPluginStart(char* outName, char* outSig, char* outDesc) { - strcpy(outName, "X-Plane Connect [Version 1.0.1]"); + strcpy(outName, "X-Plane Connect [Version 1.2.0]"); strcpy(outSig, "NASA.XPlaneConnect"); strcpy(outDesc, "X Plane Communications Toolbox\nCopyright (c) 2013-2015 United States Government as represented by the Administrator of the National Aeronautics and Space Administration. All Rights Reserved."); - + #if (__APPLE__) if ( abs(timeConvert) <= 1e-9 ) // is about 0 { mach_timebase_info_data_t timeBase; - (void)mach_timebase_info( &timeBase ); + (void)mach_timebase_info(&timeBase); timeConvert = (double)timeBase.numer / (double)timeBase.denom / 1000000000.0; } #endif - XPC::Log::Initialize("1.0.1"); - XPC::Log::WriteLine("[EXEC] Plugin Start"); + XPC::Log::Initialize("1.1.1"); + XPC::Log::WriteLine(LOG_INFO, "EXEC", "Plugin Start"); XPC::DataManager::Initialize(); - - float interval = -1; // Call every frame - void* refcon = NULL; // Don't pass anything to the callback directly - XPLMRegisterFlightLoopCallback(XPCFlightLoopCallback, interval, refcon); - + return 1; } PLUGIN_API void XPluginStop(void) { - XPLMUnregisterFlightLoopCallback(XPCFlightLoopCallback, NULL); - XPC::Log::WriteLine("[EXEC] Plugin Shutdown"); + XPC::Log::WriteLine(LOG_INFO, "EXEC", "Plugin Shutdown"); XPC::Log::Close(); } PLUGIN_API void XPluginDisable(void) { + XPLMUnregisterFlightLoopCallback(XPCFlightLoopCallback, NULL); + // Close sockets delete sock; sock = NULL; @@ -134,7 +132,7 @@ PLUGIN_API void XPluginDisable(void) // Stop rendering waypoints to screen. XPC::Drawing::ClearWaypoints(); - XPC::Log::WriteLine("[EXEC] Plugin Disabled, sockets closed"); + XPC::Log::WriteLine(LOG_INFO, "EXEC", "Plugin Disabled, sockets closed"); } PLUGIN_API int XPluginEnable(void) @@ -143,15 +141,17 @@ PLUGIN_API int XPluginEnable(void) sock = new XPC::UDPSocket(RECVPORT); XPC::MessageHandlers::SetSocket(sock); - XPC::Log::WriteLine("[EXEC] Plugin Enabled, sockets opened"); + XPC::Log::WriteLine(LOG_INFO, "EXEC", "Plugin Enabled, sockets opened"); if (benchmarkingSwitch > 0) { - XPC::Log::FormatLine("[EXEC] Benchmarking Enabled (Verbosity: %i)", benchmarkingSwitch); + XPC::Log::FormatLine(LOG_INFO, "EXEC", "Benchmarking Enabled (Verbosity: %i)", benchmarkingSwitch); } -#if LOG_VERBOSITY > 0 - XPC::Log::FormatLine("[EXEC] Debug Logging Enabled (Verbosity: %i)", LOG_VERBOSITY); -#endif + XPC::Log::FormatLine(LOG_INFO, "EXEC", "Debug Logging Enabled (Verbosity: %i)", LOG_LEVEL); + float interval = -1; // Call every frame + void* refcon = NULL; // Don't pass anything to the callback directly + XPLMRegisterFlightLoopCallback(XPCFlightLoopCallback, interval, refcon); + return 1; } @@ -173,7 +173,7 @@ float XPCFlightLoopCallback(float inElapsedSinceLastCall, counter++; if (benchmarkingSwitch > 1) { - XPC::Log::FormatLine("Cycle time %.6f", inElapsedSinceLastCall); + XPC::Log::FormatLine(LOG_DEBUG, "EXEC", "Cycle time %.6f", inElapsedSinceLastCall); } for (int i = 0; i < OPS_PER_CYCLE; i++) @@ -196,15 +196,15 @@ float XPCFlightLoopCallback(float inElapsedSinceLastCall, { #if (__APPLE__) lap = (double)mach_absolute_time( ) * timeConvert; - diff_t = lap-start; - XPC::Log::FormatLine("[BENCH] Runtime %.6f",diff_t); + diff_t = lap - start; + XPC::Log::FormatLine(LOG_INFO, "EXEC", "Runtime %.6f", diff_t); #endif } } if (cyclesToClear != -1 && counter%cyclesToClear == 0) { - XPC::Log::WriteLine("[EXEC] Cleared UDP Buffer"); + XPC::Log::WriteLine(LOG_DEBUG, "EXEC", "Cleared UDP Buffer"); delete sock; sock = new XPC::UDPSocket(RECVPORT); } diff --git a/xpcPlugin/XPlaneConnect/64/lin.xpl b/xpcPlugin/XPlaneConnect/64/lin.xpl index 991d757faa3a3be24fe1d806626f7c9afb23eb20..476986c77137a979beec9132b093c8f308c1f308 100755 GIT binary patch literal 271892 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

    tW;HLA0-*;3pof`e<^a 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

    x>dX7+;eKc10XRnKzd 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 PYp(XS2MawmN`wAC@&==q literal 405950 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 CrB9*& literal 1154560 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�Pew?2ROv(F*0?@N4l;5 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μl=*UabA~lbd$af2FeklD?Or5 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

    MMCgJS!a>Ssl53fW? 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 diff --git a/xpcPlugin/XPlaneConnect/lin.xpl b/xpcPlugin/XPlaneConnect/lin.xpl index e4dd997649b7b4bdb538a102f4f0266dd000921b..a1780c791755d54f72855daec5af8bb0c16acbc0 100755 GIT binary patch literal 251774 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≷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%0ACr zrv;aoTvJX6tLLQ!4#hGCb8xtsIw)XPm#Im{rUK-*h(|IxVPJ#J|s*9Iql zt0lsOPX2BmZ#&IfSbk!Ibb20lA;)w9@_(L7UUyn>NziH8KwEE;6WC{U6DNO9W-d6C z$!TCU&zMUCMdgbxuz#*Av<+zofcdY^nE#F{2)j$8kbxJVvS3P~?U*fA|EC)X6ORsjYZ<{2hn|5lxIs$Xj zH2** zEI#`RSLSZh7RFVbcW&y~8RMtWjr#cx>A%w(E(!d+LHcjgCw)fu<8ikCjiLVUgoe z6lK28?^;TKwQOjEXo_SN925f}4oU1Jtq`EFo-@|=l}r4@CE_GmT;D9{t2wM&=CsHs zn7~PLxkZ(bg>^6ndlJ~0f63`!^|(5M2 zVz)sKCt@Tt;qO}sgPCu75#NMAE(yY40oU(zGLOT#WU14FO9Dx> zgMDQgXM#S0$yuuhtKp+?|P$En`=D-Ns z|1{A+hd=5S?i4c5+j%m-ha(clfxDZ7wx*OMb3wmKr^L{|x=Tf+1g*sdtUo(MLw6RyiImEIjML2-6PA|;JwQ@-?@Wr_P7$?UX&LyAUVq0)YAiImX{s&1mAT!2b4-j82 zF^|1ZK;JZKfXoE>a>sdvfhQaoVR@FoWDcfxvnjOk>EUZQv{lLJNGG)YC>=;8$C%JY zKSH7HTIRcr(=RRwLfZ(gKh#OIZsL-U{$VA-C4nSHa(%tXoL~QB9QG9Pyb|3MJs04W zMiD3x^b5yY7-8W-2S%7K5f~0_)Grn;$`B1sbGYM@Ahg}g^#cueAb2;I?CZ4PlAu43 zI52hyT2N?XEcPhz1dbTu5dyx=2s9wD(Q#>EqSAp8wuA9Phc@aJ_RIAo1)+`g$p7k7 z#`I}n>Ng#!p__p9_{67-C8*K)n_=h?*8p%j_CFoK@G0X{44`|;xWU>k9rxMavQ5aE z*?tkJ?~NRVr!C_3=_N)%-u>ABfQ}8Lbk z#^)Y`lg8h&(X%oL^6w5qKzX4JLqzawrxu)@BDEDPVsa<_HO2aqu}`>{ki^+lYPCcg zfMr*e%ep%YM`+IXbGrJw{eC}9iQmbf}>7Sn|VyHhtTof+8ZpFbmX{_#~eCx{GD`) zjdB&f=jZ^gvMOAT@240*_sH=iJND9%b3~n6pkMw1WvC; zzK$nZjg)uI)tQk-bGgy+4)PgXa!3U3elBeuLVmSHzJRN@h?oP;pXbv5TCdaVH!C7= zPcqyS0;f68waAxq^^{1XRb2WH2l*l{86JUK#--@tEtY*Oa>*J?B8?!nM(qDO$VYI=hzOiykNrc)7vf2aMH0B+>IyUmNJ})5%9S< z|K}h?mNP5@flTMT5W;6ILSzRgM!=CFbaW6RLueC$K$h^cxQ*`eIEzv z#mftDRTz$F(Se|%StZ^KoUEFWzqEK3ecpL!3G<9yzUr&ESA0~OHg!9rEw<0GCHS?I zr(jd}c?U4Osrw%Tm_r--QyYs*oWlxTV2S3t&e∓2KR1sRWSTEB?sLfaIM{EqEI( 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

    K>7@rZ$|PHHo+Al~IK9sk}QTw}bM`kECyB_-R0 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