Commit Graph

25 Commits

Author SHA1 Message Date
Jason Watkins
fbc5734fc4 Merge branch 'master' into develop 2019-08-08 19:28:45 -07:00
Jan Chaloupecky
fb2e916f0a Fixed Timer.h VS Item Type (#167) 2019-08-05 13:03:21 -07:00
Jason Watkins
a3be4cb1b6 Version 1.3-rc.1 (#138)
* Minor improvements to the handling of landing gear by the SetGear and HandlePOSI functions

* sendPOSI command change (double for lat/lon/h) (#111)

* Updated POSI to use doubles for lat/lon/alt, as step size for floats was unacceptably large at high longitudes.

* Updated Java library for MATLAB, updated Java project, and updated Windows plugin binaries

* Rolled back Java version to 1.7 for MATLAB compatibility

* Update MessageHandlers.cpp

* Update DataManager.cpp

* Added pause functionality for individual a/c

Adds new cases such that:
0: Unpauses all a/c
1: Pauses all a/c
2: Switches case for all a/c
100:119: Pauses a/c 0:19
200:219: Unpauses a/c 0:19

Updates log messages.

Keeps the 0,1,2 arguments as they previously were.

* Finished individual pause functionality

* Update DataManager.cpp

* Updated flags to allow for individual pause commands

* Individual pause command documentation

* Updated flags to allow for individual pause commands

* Adding individual pause to documentation

* Updated flags to allow for individual pause commands

* Requested changes, cleaning

* Update CMakeLists.txt

Include "-fno-stack-protector" for linking and compiling for systems that do not have this have this flag as a default.

* Enabling AI after setting position (#118)

Previously, the code enabled the AI before setting the position of a/c, which negated its purpose.

* Updated XPlane SDK to version 2.1.3

* Resolve function ambiguity for std::abs on mac

Fixes #126

* Update copyright notice

* Update Windows binaries

* Update Linux binaries

* Update version numbers

* fix osx abs ambiguity (#142)

* fix indexing error (#143)

* Runway camera location control (#144)

* update ignore

* basics working

* set cam pos remotely

* log cam position

* keep default behaviour, if short view message is received

Compatibility with existing software

* all to tabs

* rename variable

* option to use camera direction fields

* Added UDP multicast for plugin discovery (#153)

* Added Timer

* Added UDPSocket::GetAddr

* Added MessageHandlers::SendBeacon()

* PoC of starting a timer on PluginEnable

* C++11

* Added Timer to xcode project

* C++11 in cmake

* added Timer to cmake

* use function pointer in Timer

* moved Timer to namespace

+ wait for thread to join when stopping the timer

* Windows: changed uint to unisgned short

* Windows: Added Timer.h/cpp to project

* GetAddr static

* Send xplane and plugin version with BECN

* SendBeacon with params

* fixed file copyrights

* Include functional

to fix Linux compile error

* review fixes

* Send plugin receive port in BECN

* review fixes

* Fixed tabs vs spaces indentations (#157)

* Java client BECN implementation (#155)

* Added MS Azure Dev Ops CI integration (#162)

* Do not build for i386 on macOS

Use ARCHS_STANDARD  to avoid the error “The i386 architecture is deprecated. You should update your ARCHS build setting to remove the i386 architecture.”

* Fixed missing include

The Visual Studio solution was not compiling

* Fixed isnan ambigious refernce

Ambigious reference when compiling on travis

https://stackoverflow.com/questions/33770374/why-is-isnan-ambiguous-and-how-to-avoid-it

* Set MSVC warning level to 3

Too many warnings were generated when building a Release build making Travis job to fail because of too much output

* Use default toolset for Visual Studio

AppVeyor recommends to set the default toolset

* #include <cstdint>

* Use MSVC ToolsVersion="14.0"

# Conflicts:
#	xpcPlugin/xpcPlugin/xpcPlugin.vcxproj

* Removed binaries from repository

# Conflicts:
#	xpcPlugin/XPlaneConnect/64/win.xpl
#	xpcPlugin/XPlaneConnect/win.xpl

* Added ms azure ci

xcode

linux

linux + macos

linux + macos

removed branch filter

win tests

win tests

Test all platfroms

artifacts tests

* output all binaries to ‘XPlaneConnect’

All platforms produce a binary in
xpcPlugin/XPlaneConnect/
xpcPlugin/XPlaneConnect/64/

* Added ms azure GH deploy

deploy stage

GH release test

trigger tags

* Clean up yml file

- Added variables
- Added job decriptions

* Ignore script to ignore .exp files

+ fixed output path

* Renamed ms azure GH connection

* Update service connection for azure pipeline

* Added Python3 compatible xpc client. (#156)

* Update Azure Pipelines service connection
2019-07-20 08:43:51 -07:00
Jan Chaloupecky
1c082d7730 Added MS Azure Dev Ops CI integration (#162)
* Do not build for i386 on macOS

Use ARCHS_STANDARD  to avoid the error “The i386 architecture is deprecated. You should update your ARCHS build setting to remove the i386 architecture.”

* Fixed missing include

The Visual Studio solution was not compiling

* Fixed isnan ambigious refernce

Ambigious reference when compiling on travis

https://stackoverflow.com/questions/33770374/why-is-isnan-ambiguous-and-how-to-avoid-it

* Set MSVC warning level to 3

Too many warnings were generated when building a Release build making Travis job to fail because of too much output

* Use default toolset for Visual Studio

AppVeyor recommends to set the default toolset

* #include <cstdint>

* Use MSVC ToolsVersion="14.0"

# Conflicts:
#	xpcPlugin/xpcPlugin/xpcPlugin.vcxproj

* Removed binaries from repository

# Conflicts:
#	xpcPlugin/XPlaneConnect/64/win.xpl
#	xpcPlugin/XPlaneConnect/win.xpl

* Added ms azure ci

xcode

linux

linux + macos

linux + macos

removed branch filter

win tests

win tests

Test all platfroms

artifacts tests

* output all binaries to ‘XPlaneConnect’

All platforms produce a binary in
xpcPlugin/XPlaneConnect/
xpcPlugin/XPlaneConnect/64/

* Added ms azure GH deploy

deploy stage

GH release test

trigger tags

* Clean up yml file

- Added variables
- Added job decriptions

* Ignore script to ignore .exp files

+ fixed output path

* Renamed ms azure GH connection
2019-06-08 08:00:32 -07:00
Jan Chaloupecky
50335c4a5c Added UDP multicast for plugin discovery (#153)
* Added Timer

* Added UDPSocket::GetAddr

* Added MessageHandlers::SendBeacon()

* PoC of starting a timer on PluginEnable

* C++11

* Added Timer to xcode project

* C++11 in cmake

* added Timer to cmake

* use function pointer in Timer

* moved Timer to namespace

+ wait for thread to join when stopping the timer

* Windows: changed uint to unisgned short

* Windows: Added Timer.h/cpp to project

* GetAddr static

* Send xplane and plugin version with BECN

* SendBeacon with params

* fixed file copyrights

* Include functional

to fix Linux compile error

* review fixes

* Send plugin receive port in BECN

* review fixes
2019-03-14 07:49:43 -07:00
Jason Watkins
312829420d Updated Windows binaries 2016-07-07 09:55:20 -07:00
Jason Watkins
7f1af73c3c Moved XPData array to DataManager and removed DataMaps.
After removing C++11 features, only the declaration of XPData remained in DataMaps, making it somewhat pointless to separate XPData from DataManager.
2015-05-05 13:04:03 -07:00
Jason Watkins
e21006baee Added Release build settings for Windows to plugin.
- Release builds in Visual Studio aggressively optimize the plugin.
 - Results in nearly a 7x reduction in binary size.
2015-04-30 13:47:13 -07:00
Jason Watkins
5ee49c7d81 Updated plugin.
- Removed dependency on C client.
 - The plugin now responds to client requests on the same port used to establish the connection.
Removed C client dependency from plugin.
2015-04-17 10:56:03 -07:00
Jason Watkins
8591db96c0 Fixed various type inconsistencies to remove warning when building on Windows 2015-04-14 15:49:25 -07:00
Jason Watkins
52bf998632 Refactored message handling code into the MessageHandlers class.
- Re-enabled CONF messages sent in response to CONN commands.
 - There was a bug in the construction of the CONF message.
 - Resolves nasa/XPlaneConnect#31
2015-04-14 10:21:34 -07:00
Jason Watkins
6c51fa476e Refactored dataref manipulation operations to the DataManager class. 2015-04-13 15:53:38 -07:00
Jason Watkins
547eb4de18 Refactored various message-related operations into the Message class.
- Replaces the XPCMessage struct.
 - Messages are now read from a UDPSocket by the Message class.
 - Printing messages to the log is now handled by the Message class.
 - In the future, may extend this class with command-specific subclasses that encapsulate additional message parsing functionality.
2015-04-13 09:42:29 -07:00
Jason Watkins
2736cd86de Refactored socket code into UDPSocket class. 2015-04-13 09:23:25 -07:00
Jason Watkins
aa74bc57f5 Refactored drawing code into Drawing class. 2015-04-12 11:09:27 -07:00
Jason Watkins
a3a82f4a71 Refactored logging functionality into Log class. 2015-04-12 11:09:19 -07:00
Jason Watkins
97eb023df6 Added waypoint support to the plugin.
- The plugin now supports drawing a series of waypoints in the world.
 - The plugin supports add, remove, and clear operations
  - Add and remove take a list of waypoints
  - Clear removes all waypoints
2015-04-09 09:06:18 -07:00
Jason Watkins
453ea65619 Added plugin support for drawing messages to screen.
- Either a single string will be drawn to screen, or nothing will be drawn.
 - Intelligently registers and unregisters drawing callback to minimize overhead when no message is being displayed.
 - Currently does not support newline characters (\r or \n). Newlines will cause text to be drawn overlapped.
2015-04-07 15:33:38 -07:00
Jason Watkins
011558abfa Restructured plugin files to conform to "fat plugin" structure.
- Deleted platform specific folders from xpcPlugin folder.
 - Added new XPlaneConnect folder under xpcPlugin folder.
 - Moved and renamed windows binaries into architecture specific folders
 - Moved and renamed mac binary to XPlaneConnect root (single mac binary supports 32 & 64 bit)
 - Updated installation instructions in Readme
 - Cleaned up plugin Visual Studio project architecture
2015-03-25 15:46:25 -07:00
Jason Watkins
b91776e687 Removed files that were previously in version control that should be ignored. 2015-03-25 11:32:40 -07:00
Jason Watkins
78bcd96f0c Changed runtime linking settings on Windows
- The MSVC runtime is now statically linked for the 32bit and 64bit Windows plugins. This is done to avoid potentially requiring users to install an additional package from Microsoft to use the plugin.
 - The "Release" build configuration has also been removed, since it was not configured correctly. It will be re-added at a later date.
2015-03-25 10:09:00 -07:00
Jason Watkins
fbeb297717 Fixed CTests bugs, minor plugin enhancements, and removed old files
- Fixed incorrect message buffer size in sendCTRL function.
 - Fixed a bug in sendCTRLTest where not all DREF sizes were being set.
 - Increased message buffer size in sendReadTest to account for assumptions made by sendUDP.
 - Fixed a bug in updateLog where the log message would sometimes start with several null characters, causing the log message to be effectively ignored by fprintf.

 - The xpcPlugin Visual Studio solution now supports 32 bit and 64 bit builds.
 - Logging performed by the plugin now works correctly on Windows.
 - Long log messages are now truncated to 500 characters. Previously, messages over 500 characters would be omitted, and an error message logged in their place.

 - Several files which were incorrectly added to source control have been deleted.
2015-03-24 14:29:39 -07:00
Christopher Teubert
ef6c80d7a4 Added 64-bit windows support
Added separate .xpl plugin files for win 32/64.
Updated Readme to explain.
2015-02-10 11:57:14 -08:00
jwatkins42
2dd1cfeffd Converted Visual Studio include paths to relative paths.
- Include paths were specified with absolute paths, which break as soon as the project is moved to a different location. (e.g., when cloning to a new computer from GitHub).
 - Include paths are now specified relative to the project file, so everything should work as long as the entire XPC directory is present.
2014-11-26 12:40:27 -08:00
Chris Teubert
8013ce1003 Initial Version 2014-10-22 15:52:38 -07:00