1
0
Fork 0
Commit graph

532 commits

Author SHA1 Message Date
daveluff
afb654a068 Initial revision of class for AI VFR GA traffic 2004-01-23 17:16:15 +00:00
daveluff
4fa02012dc Don't loose the elevation in ATC projection conversions 2004-01-23 17:14:08 +00:00
andy
439a9fa1e4 Minor API changes to support the new sg_geodesy implementation. A few
places now use sgCartToGeod() instead of rolling their own
approximation.  And YASim is now using exactly the same 3D coordinate
system as the rest of FlightGear is.
2003-12-19 02:42:32 +00:00
david
d296e5a7df Use proper logging facility, and lower the priority of some of the
logging messages.  This is part of an effort to make FlightGear a bit
quieter during normal operations.
2003-11-24 17:45:35 +00:00
daveluff
a8c7af79ab Fix a nasty bug whereby non-scrolling ATC messages longer than the screen width were not rendered at all. They are now rendered with the end clipped - that can be fixed later. 2003-11-19 10:16:26 +00:00
ehofman
f3bb344f4e MSVC fix 2003-11-14 09:41:31 +00:00
ehofman
e6cd7a0ed7 Add Manuel Bessler and Stephen Lowry's remote joystick code and add David Magginson's 3dconvert utility 2003-11-12 10:06:18 +00:00
daveluff
e77a6e4d3d Re-commit the changes that I inadvertantly committed as cvsguest 2003-11-09 14:01:50 +00:00
curt
e07b153321 Someone managed to commit changes as cvsguest, return to the original
version.  These changes need to be added via the proper channels.
2003-11-09 00:46:56 +00:00
daveluff
430a44a803 Further progress towards interactive ATC 2003-11-05 17:24:58 +00:00
daveluff
6162d4462b Further progress towards interactive ATC control 2003-11-05 10:06:57 +00:00
cvsguest
f4b3bad58e Fix a nasty bug - FGATC::SetDisplay() should be called *after* FGATC::Init() since display is often initialised to false in the init routine. Also some other bits and pieces. 2003-11-05 10:02:34 +00:00
cvsguest
c2983d61bc Set the message display delay to default to zero 2003-11-05 10:00:46 +00:00
daveluff
29fa5ce8ec Fix a typo in the comments 2003-11-04 12:00:36 +00:00
daveluff
a5014c67a8 Start supporting user interaction callbacks and tweak the circuit eta calculation 2003-11-04 12:00:14 +00:00
daveluff
ed2e58d230 Rationalisation of the ATC popup dialog code - moved it all over to AK's dynamic list system and removed the hardcoded list code, extended the dynamic list system a bit, started adding support for callbacks from the user interaction 2003-11-04 11:54:42 +00:00
daveluff
8e904eb882 Cleaned up the ATC communication dialog code somewhat 2003-10-22 10:50:11 +00:00
daveluff
3d104940e9 Fixed up the freqency search dialogs properly - this should eliminate crashing and memory leakage 2003-10-21 11:44:43 +00:00
daveluff
2454446233 Fix a crash from the ATC Frequency dialog at the temporary expense of a small memory leak 2003-10-20 21:48:57 +00:00
daveluff
0adae696aa AI plane should go around instead of landing on user if user dawdles on runway now 2003-10-19 20:38:08 +00:00
daveluff
cd08f83aa5 Ug - must have been drunk when committing those two de-align lines! - this one works 2003-10-19 19:38:01 +00:00
daveluff
90c0f80b9a Quick hack to prevent offering an option that isn't implemented yet 2003-10-17 18:56:29 +00:00
daveluff
81c252e40e Remove some extraneous output, add a few comments, tidy a bit of formatting 2003-10-17 09:56:35 +00:00
daveluff
a28bf4d9ea Enhancements to AI plane transmissions 2003-10-17 00:31:47 +00:00
daveluff
2666ce81d9 Bug fixes to the AI/ATC interaction mechanism 2003-10-17 00:31:07 +00:00
cvsguest
8308d47e8d Report Final to tower control class in addition to displaying it 2003-10-16 16:06:54 +00:00
cvsguest
f742186633 Clear AI plane to land when it calls final if rwy clear 2003-10-16 16:06:22 +00:00
ehofman
0e370e6e28 Fix a problem where older IRIX compilers needed a typecast for certain opperations 2003-10-16 14:14:03 +00:00
daveluff
7105d2029a Remove some cruft, and add a short TODO list 2003-10-16 11:28:44 +00:00
daveluff
0cb2aeffbd Bug fix: derived classes were never getting a chance to respond to the towers landing intention query properly 2003-10-16 11:12:37 +00:00
daveluff
de24524acb Transmit an empty string in order to trigger AI/ATC interation mechanism. TODO - transmit the correct phraseology. 2003-10-15 21:51:12 +00:00
daveluff
d0d70bebd7 Move responding to a plane announcing itself at hold short over to the response mechanism. Beware that a particularly nasty assumption that only one plane is ever holding for the runway at once remains for now though. 2003-10-15 21:50:05 +00:00
daveluff
ca766f9aac Use MHz when stating freqency on-air and call the base class update for response time handling 2003-10-15 14:11:50 +00:00
daveluff
3610b0235c Tweaks to use the ATC/AI interaction framework and respond to downwind report with position in circuit 2003-10-15 14:10:30 +00:00
daveluff
c76dd941f4 Tweaks to use the ATC/AI interaction framework 2003-10-15 14:09:26 +00:00
daveluff
d5d9723d9b Tweaks to the ATC/AI interaction framework 2003-10-15 14:06:28 +00:00
daveluff
6d1418ff12 Refactoring - no actual change 2003-10-14 11:10:17 +00:00
daveluff
6769d7974c Display AI plane transmissions if comm2 is tuned to the same frequency 2003-10-14 11:09:10 +00:00
daveluff
331954ff6f Tidy the recent freq display code somewhat 2003-10-13 11:30:40 +00:00
daveluff
800510ed58 Fixed a bug where an ATC station on one channel wouldn't stop transmitting when deselected if another type of ATC at the same airport was tuned on the other channel 2003-10-11 18:10:28 +00:00
daveluff
eb0b8ad47c Add a constant holding the number of different ATC types 2003-10-11 18:08:45 +00:00
daveluff
497559f2ba Clarification of function comments in header file 2003-10-10 15:14:09 +00:00
daveluff
d43b6fd508 Added ATC frequency lookup dialog 2003-10-10 15:13:16 +00:00
daveluff
9e66194dca Fix a possible endless loop due to insufficient space in a char array for some messages 2003-10-09 21:37:26 +00:00
daveluff
9d3d4ecc51 Missed a cout 2003-10-09 12:12:09 +00:00
daveluff
70cd48b5b1 A few bug fixes to Alexanders approach vectoring code to get it to work and display instructions 2003-10-09 11:54:09 +00:00
daveluff
2d89960a20 Reformat a function to get rid of tab-space mixture and remove some old commented out code that now lives in ATCDialog.cxx 2003-10-09 11:53:28 +00:00
daveluff
f8d1a58d64 Don't do AreaSearch in ATCmgr since nothing really needs it at the moment plus a couple of bug fixes to frequency search handling of approach 2003-10-09 11:52:42 +00:00
daveluff
b84cf7c3af Oops - a boo boo of monumental proportions completely took ATC off the air... 2003-10-07 16:05:20 +00:00
daveluff
824f78f255 Formatting changes 2003-10-07 13:01:18 +00:00
daveluff
1a2ee0a908 Remove unimplemented options from the ATC dialog for now 2003-10-07 12:26:28 +00:00
daveluff
c89ea44131 Further progress towards AI/ATC dialog 2003-10-06 22:40:37 +00:00
daveluff
380c69c8a0 Progress towards AI/ATC communication without speaking all at once 2003-10-06 15:20:47 +00:00
daveluff
ea0751eaa2 Minor formatting changes 2003-10-06 15:19:42 +00:00
daveluff
62854c99a6 Removed some extraneous output 2003-10-06 14:09:59 +00:00
ehofman
980012e168 Move FGEventMgr and FGSubsystemMgr over to SimGear, add SGEventMgr to FlightGear's globals structre and some small code cleanups 2003-09-24 17:20:55 +00:00
daveluff
56a0477f76 Fix a nasty bug whereby the AI plane would descend far too early on the circuit following a touch-and-go 2003-09-23 21:01:02 +00:00
daveluff
d9958c7710 Get rid of some cruft 2003-09-23 15:02:12 +00:00
daveluff
6665dcce82 Implement two convienience functions. 2003-09-23 15:01:53 +00:00
daveluff
9bba532487 Another small, incremental step towards interactive tower control. 2003-09-22 23:57:57 +00:00
daveluff
0d9ea4d27c Fix a compiler warning 2003-09-22 23:56:09 +00:00
daveluff
2b459ebb3f Slightly more appropriate callsign for C-FGFS. These options still don't do anything at the moment mind! 2003-09-22 23:55:46 +00:00
daveluff
c0137d93af Return landing type 2003-09-22 23:54:41 +00:00
daveluff
98a752d9e7 Return landing type. Simple AIPlane always returns full stop for now - more advanced classes are expected to override this if required. Also give some enums an ostream operator 2003-09-22 23:53:56 +00:00
daveluff
adce42cef6 Return position 2003-09-22 23:52:25 +00:00
daveluff
6e73e7dc08 Further progress towards interactive tower control. Very much an initial stab at a first iteration of a tricky problem, ie don't look too closely - some of it is ugly! 2003-09-19 16:51:27 +00:00
daveluff
bac252c23d Reduce taxiing speed a fraction 2003-09-19 16:48:58 +00:00
daveluff
8acea57ad2 Add an overloaded function 2003-09-19 16:48:27 +00:00
daveluff
ca230a7cf3 Remove a couple of extraneous lines. 2003-09-19 09:38:22 +00:00
ehofman
19b61eec1e Fix a model loading problem 2003-09-17 09:44:37 +00:00
daveluff
d3b7c2ac10 Fix a couple of bugs that resulted in ATIS not being heard at airports with AI traffic active 2003-09-05 13:58:51 +00:00
daveluff
b898c5e4ff Change the start of descent point of the AI plane when the circuit has been extended when following previous traffic - it should not land short now, although it can land a way down the runway if start of descent should occur during a turn, since it doesnt start descending until the turn is finished 2003-09-05 10:26:11 +00:00
daveluff
be274df23b Guard against update(...) getting called before init(...) 2003-09-05 10:23:20 +00:00
daveluff
1520fd648e Output a few properties for AI code devel convienience - probably temporary 2003-09-05 10:22:18 +00:00
daveluff
3f162abf09 Whitespace cleanup 2003-09-05 10:21:29 +00:00
curt
e6859e4fe0 Redo the runway database scheme to use a flat/ascii file and load the entire
database into memory at the start.  This should completely eliminate any
dependencies we have on metakit.
2003-08-29 04:11:23 +00:00
curt
6665d7d609 Remove one dependence on MetaKit. 2003-08-28 20:53:08 +00:00
curt
b4d0b6dcd4 Fix a property name spelling error. 2003-07-31 01:41:46 +00:00
daveluff
a714849cbd Initial stab at making the AI plane take the user into account when flying a circuit. The AI plane will now delay it's turns to the various legs if the user has flown a wider pattern that it normally would in front of it. However, this is very much still work in progress - when the pattern gets extended the AI plane lands short of the runway, and it doesn't alter its speed around the circuit at all, only the turn positions. Still, its a start... 2003-06-11 21:49:46 +00:00
daveluff
d975fc129c Minor changes to the comments 2003-06-11 21:16:40 +00:00
david
e588cbadd8 Removed FGEnvironmentMgr as a special case in globals, initialization,
etc.

Improved the weather system to interpolate between different
elevations and deal with boundary-layer conditions.  The configuration
properties are now different (see $FG_ROOT/preferences.xml).
2003-06-08 14:47:03 +00:00
daveluff
f61dbf1382 Explicitly initialise aptElev 2003-06-03 14:08:24 +00:00
daveluff
b9332af209 Fix for Cygwin compilation 2003-06-03 13:08:42 +00:00
ehofman
d8ab993194 initialize some otherwise unitialized variables 2003-05-23 11:55:26 +00:00
curt
3c7bdc31d9 Cosmetic changes for new code moved into simgear to make the naming scheme
better follow simgear conventions.
2003-05-13 03:18:42 +00:00
curt
56db994994 Moved src/Model/loader.[ch]xx and src/Model/model.[ch]xx to
simgear/scene/model/
2003-05-09 20:40:59 +00:00
curt
51c04e9e4c - Added "SG" prefix to sound classes that recently moved to SimGear.
- Cleaned up some minor compiler warnings.
- Moved src/Model/placement.[ch]xx over into simgear/scene/model/
2003-05-09 19:39:48 +00:00
ehofman
5ecfcca7e4 Extract the sound code from FlightGear and move it to SimGear 2003-05-09 18:44:33 +00:00
curt
575b3ac98c Working at unraveling and breaking dependencies inside of src/Model.
I split the FGModelPlacement code out into it's own set of source files.
I created two versions of the fgLoad3DModel() routine.  One that is
  unecumbered by a panelnode dependency and one that is.  acmodel.cxx is
  the only place that needs to load an aircraft with instrument panels.
model.[ch]xx are now pretty much free to move over into simgear.
loader.[ch]xx should be able to follow closely behind.
This will be a big step towards being able to move the material management
code over into simgear.
2003-05-08 20:28:46 +00:00
daveluff
a142091a08 Fix to an ATC/AI communication timing bug 2003-05-07 00:07:20 +00:00
curt
2119db35c3 This is step "1" of probably "many" in the process of separating out the
scene management code and organizing it within simgear.  My strategy is
to identify the code I want to move, and break it's direct flightgear
dependencies.  Then it will be free to move over into the simgear package.

- Moved some property specific code into simgear/props/
- Split out the condition code from fgfs/src/Main/fg_props and put it
  in it's own source file in simgear/props/
- Created a scene subdirectory for scenery, model, and material property
  related code.
- Moved location.[ch]xx into simgear/scene/model/
- The location and condition code had dependencies on flightgear's global
  state (all the globals-> stuff, the flightgear property tree, etc.)  SimGear
  code can't depend on it so that data has to be passed as parameters to the
  functions/methods/constructors.
- This need to pass data as function parameters had a dramatic cascading
  effect throughout the FlightGear code.
2003-05-06 23:46:24 +00:00
daveluff
a36bf24252 Further progress towards intelligent interaction between the AI plane and the user's plane 2003-04-15 22:55:22 +00:00
daveluff
139f3df761 Moved PatternLeg from AILocalTraffic to AIPlane 2003-04-15 22:54:11 +00:00
daveluff
49434e3085 Fixed some stuff in runway number to spoken string function, and added Alexander's function to get the minimum angular difference between two headings from approach to ATCutils 2003-04-15 10:37:58 +00:00
daveluff
541ff04072 Fix of framerate drop due to broken OnActiveRunway function - don't read in the runway.mk4 file (~1MB) every frame 2003-03-31 16:24:41 +00:00
daveluff
3f53eaeaa7 Add width to ATC RunwayDetails structure 2003-03-31 16:23:49 +00:00
daveluff
fa094c9980 Slight change of function api 2003-03-31 16:23:23 +00:00
daveluff
e4e6864613 Emergency fix of framerate problem 2003-03-31 09:51:36 +00:00
daveluff
657dfefec0 Calculate active runway in FGGround. It would be better to get the active runway from FGTower instead of duplicating the code to calculate it, but at the moment I can't guarantee that tower control at a given airport will be initialised before ground control, so this will have to do for now... 2003-03-28 15:25:48 +00:00
daveluff
b19e54c78a Moved the RunwayDetails struct definition out of tower.hxx to ATC.hxx 2003-03-28 15:24:02 +00:00
daveluff
d936531600 Initialise user lon, lat and elev 2003-03-27 15:46:23 +00:00
daveluff
9efdc3030e Some fixes to Alexander's pop-up dialog box 2003-03-27 15:45:48 +00:00
daveluff
e5dbeccc58 Log to SG_ATC instead of SG_GENERAL and cout 2003-03-27 15:45:20 +00:00
daveluff
55daa52f79 Pass dt to update(...) 2003-03-27 15:44:35 +00:00
daveluff
559b134878 Start interacting with ATC (still somewhat rudimentary) 2003-03-27 15:44:10 +00:00
daveluff
7fc214fab3 Progress towards interactive ATC... 2003-03-27 15:41:09 +00:00
daveluff
a4ea7c7561 Oops - let some DOS line endings creep in - quickly get rid of them before Erik notices... 2003-03-26 10:02:32 +00:00
daveluff
81c9e14c7e MSVC fix from Frederic Bouvier 2003-03-24 11:06:00 +00:00
daveluff
3be0e17e66 Remove un-needed typedef 2003-03-24 11:05:25 +00:00
daveluff
254dc934d1 Add a function to allow transmission of messages to AI entities - the actual implementation is a bit of a temporary hack at the moment 2003-03-20 11:53:44 +00:00
daveluff
6fef4d457b Load ground ATC frequency data, and map all stations by bucket index 2003-03-20 11:51:44 +00:00
daveluff
ef3b5a4d61 Minor formatting changes 2003-03-20 11:50:34 +00:00
daveluff
3364b6f19d Base length of time messages are displayed for on dt rather than iterations in order to de-couple it from frame rate 2003-03-20 11:22:08 +00:00
ehofman
01be2ed8e4 Compiler warning fixes and small updates 2003-03-19 17:46:52 +00:00
daveluff
47f46d151d Add the ability to scroll single ATC messages - this is toggled using property /ATC/display/scroll-single-messages (off by default). Also increased the time that single messages are displayed in non-scrolling mode - this makes ATC transmissions easier to read. 2003-03-17 11:32:51 +00:00
daveluff
b9985548d4 Fix a nasty problem in the FGAIMgr search code that could cause a stackdump with AI traffic enabled 2003-03-14 12:27:24 +00:00
daveluff
f74d6ec90e Whoops - left out ++itr in a while(1) loop 2003-03-13 11:44:40 +00:00
daveluff
034f224de7 Need to call Init() when initialising tower, otherwise bad things happen... 2003-03-11 23:41:03 +00:00
daveluff
ac731cdd36 Emergency fix of a possible dereference dangling pointer path uncovered by Martin Spott 2003-03-11 17:15:23 +00:00
daveluff
46261bb51b Added a function to determine whether a point is on a given runway 2003-03-11 13:25:14 +00:00
daveluff
0333c21bbf Added a function to return the closest ATC station of a given type 2003-03-11 13:24:35 +00:00
daveluff
aabe4da5ca Start roughing in interactive tower control. AI planes now get the ground control pointer through tower control, which then handles the difference between larger airports with separate ground and smaller ones where tower handles it 2003-03-10 13:41:37 +00:00
daveluff
3a2495e47a Add units to function documentation 2003-03-10 13:40:10 +00:00
daveluff
75e26663bd Fixed a compile problem that affected gcc-2.95 users on Cygwin and removed a few unused variable warnings 2003-03-09 23:04:38 +00:00
daveluff
a32c7d50bb FGAIMgr now searches for proximity to airports with logical networks defined at startup and periodically thereafter, and only starts AI traffic when a suitable airport is found in range (currently only KEMT). In theory it should now be possible for a user to drop in a *.taxi file in my undocumented-shortly-to-change format into fgfsbase/ATC and have an AI Cessna appear at that airport and fly a circuit if they start there or fly near there. In practice its probably better until we start using the output from Bernie's taxiway editor, and there's bound to be glitches once other networks are tried 2003-03-09 17:39:44 +00:00
daveluff
a9463a8399 Added a range parameter to the FindByPos search function, also fixed a bug whereby one too few buckets in the North and East direction were searched - hence when only one bucket should have been searched none were 2003-03-09 17:35:16 +00:00
curt
4223da1a4b Eeek! Emergency fix of a couple "case" problems for includes. 2003-03-07 14:42:14 +00:00
daveluff
c49a6be9bc Whoops - forgot SG_USING_STD(cout) 2003-03-07 14:06:52 +00:00
daveluff
96970dcbaf More stuff to make the AI/ATC system less hardwired and more generic. Most of the hardwired stuff is now gone - there's just a little bit left in FGAIMgr 2003-03-07 13:58:33 +00:00
daveluff
1154a0dae2 Added FindByCode (airport ICAO code) to commlist. This is basically a wrapper around Flightgear's airport lookup and FindByPos 2003-03-06 14:06:34 +00:00
daveluff
c70faa4c0d Added constructor to ATCData struct 2003-03-06 14:04:02 +00:00
daveluff
3f15f38d8d If no wind, active runway is now read-out as the most Westward facing one which is consistent with the rest of FlightGear 2003-03-05 21:40:24 +00:00
daveluff
42527ecf1b Removed a lot of the remaining hardwired KEMT stuff, made the initialisation more generic, added the ability to taxi from a parking spot to a runway, used real ground elevation more 2003-03-05 21:38:29 +00:00
daveluff
8bbaba3193 Added some airport search functions that are straight copies of a couple of statics in fg_init, and will probably be removed again at some point, and added a function to convert a runway designator string to a spoken style phrase 2003-03-05 21:34:58 +00:00
daveluff
f930c93ddb Added a function to get a path from a gate to a runway threshold, also removed some couts 2003-03-05 21:31:54 +00:00
daveluff
c8b8afeb78 IRIX fixes from Erik Hofman 2003-03-03 11:43:49 +00:00
daveluff
b308e92bd6 Removed DOS line endings 2003-03-03 10:38:13 +00:00
daveluff
489b8186b0 Use actual terrain ground elevation instead of hardwired KEMT elevation field whilst taxiing. Still need to fix this for takeoff and landing roll. Also added a check that a valid gate is found whilst arriving, and simply disappear the plane if none is found (instead of stackdumping\!\! 2003-02-26 11:24:15 +00:00
daveluff
42868f2550 Whoops - a stray debugging cout got through 2003-02-25 09:32:49 +00:00
daveluff
54a7b5d9ad Modified slightly whilst developing the shortest-path algorithm in the ground code. Also removed some old KPAO specific initialisation. 2003-02-24 19:04:53 +00:00
daveluff
e805a4188c Added a shortest-path algorithm between two nodes and removed the hardwired KEMT-specific path. Also tidied up some bugs in the gate handling code 2003-02-24 19:03:15 +00:00
daveluff
0ecc199b09 Added basic support for using more than one voice. The render function is moved out of ATCmgr and into the ATC base class. 2003-02-18 10:44:01 +00:00
daveluff
ecad8a206e Alexander's new files added to Makefile.am 2003-02-13 12:21:01 +00:00
daveluff
85a79b4886 Changes in support of Alexander's ATC menu/transmission work. In particular all the pop-up dialog stuff has been ripped out of ATCmgr.[ch]xx and moved to ATCDialog.[ch]xx 2003-02-13 12:20:25 +00:00
daveluff
b271bc5da2 Better robustness for the ATCData structure istream operator. Adding fin.close() seems to have cured an intermittent stackdump when reading in the voice files which are the next istream operation to occur. Unknown types no longer cause the rest of the file not to be read - only the specific unknown entry 2003-02-13 12:17:37 +00:00
daveluff
f57e495893 Alexander's Approach ATC class modified to support his new menu/transmission code 2003-02-13 12:09:28 +00:00
daveluff
5dbf38c273 First draft of work by Alexander Kappes to add dynamically driven menu entries to the pop-up ATC dialog, parsing of text input to the ATC system and parameterised transmissions where the speech of a transmission is derived from the intent based on data files potentially allowing users to specify different phrases for each voice instead of being hard-coded. This is a work in progress. 2003-02-13 12:05:19 +00:00
daveluff
4231262d61 Several *list.[ch]xx files removed 2003-02-10 22:30:13 +00:00
daveluff
5e40c46afc approachlist.[ch]xx superceeded by commlist.[ch]xx 2003-02-10 22:29:15 +00:00
daveluff
f3cc3cc658 towerlist.[ch]xx superceeded by commlist.[ch]xx 2003-02-10 22:28:31 +00:00
daveluff
20455b1f61 atislist.hxx superceeded by commlist.hxx 2003-02-10 22:27:43 +00:00
daveluff
4df26cb392 atislist.cxx superceeded by commlist.cxx 2003-02-10 22:27:12 +00:00
daveluff
1915423544 groundlist now replaced by commlist 2003-02-07 13:38:57 +00:00
daveluff
df3e54cc47 Whoops - missed a file from the commlist changes yesterday 2003-02-07 13:34:56 +00:00
david
2a388d796e Use the property /sim/sound/voice to disable voice support even if
/sim/sound/audible is true.
2003-02-06 16:17:03 +00:00
daveluff
9b7405304d Major re-work of the comm frequency storage and lookup. Only a small core amount of data is now stored instead of the whole ATC classes. All the comm frequency types are now stored in one map instead of a map each. query(...) and query_bck(...) have been renamed to FindByFreq(...) and FindByPos(...) for clarity and consistency with NavList 2003-02-06 10:42:43 +00:00
daveluff
c5403b2a7c Memory allocation bugfix from Frederic Bouvier, plus a few cout's commented out 2003-01-19 21:31:37 +00:00
daveluff
9c96e109a3 Slight change to some STL stuff that was breaking MSVC6 2003-01-17 16:45:26 +00:00
daveluff
2fb9a21f2d Fix compilation bug that only occurred when compiled with weathercm subsystem enabled 2003-01-13 19:03:36 +00:00
daveluff
086be2b474 Start the ATIS recorded message at a random position into the broadcast when the radio is tuned into it 2003-01-07 14:41:49 +00:00
daveluff
c8a67cb773 Search ATC frequencies with both comm1 and 2 instead of just comm1 as previously 2003-01-07 13:11:00 +00:00
daveluff
a1d4e79127 Fix problem with cout 2003-01-03 16:30:44 +00:00
daveluff
7ae6c2010d Fix compiler warning 2003-01-03 15:01:16 +00:00
david
71f08e795d Patches from Erik Hofman for SGI compatibility:
Some more cmall changes to the SimGear header files and removed the
SG_HAVE_NATIVE_SGI_COMPILERS dependancies from FlightGear.

I've added a seperate JSBSim patch for the JSBSim source tree.
2002-12-31 18:26:02 +00:00
daveluff
e785eb74a5 Add SG_USING_STD(ifstream) 2002-12-20 09:48:09 +00:00
daveluff
3447ab6e57 Read KEMT ground network from file instead of hardwiring it into the code. 2002-12-19 14:03:36 +00:00
daveluff
38b3f48d41 Code beautifying 2002-12-19 14:00:52 +00:00
daveluff
5931760602 Make AI traffic more robust to not getting a list of runway exits - it is now simply removed from view at the end of the landing roll instead of stackdumping if no exits are returned 2002-12-19 12:26:10 +00:00
daveluff
22d94b8273 First draft of an ATC dialog box, mostly copied from the autopilot new heading dialog box code. Need to bind a key to the ATC-dialog command to bring it up. 2002-12-17 17:19:14 +00:00
daveluff
4b9c0ad822 Add some stub functions to FGTower to aid ATC dialog box development 2002-12-17 11:36:14 +00:00
daveluff
87be5d93a5 Comment out stray cout 2002-12-16 21:02:07 +00:00
daveluff
49d843e22e Patches from Erik Hofman - use Plib's wave file loader plus IRIX fixes. 2002-12-06 15:35:18 +00:00
daveluff
4d6ac0ddf5 Code improvements from Norman Vine 2002-12-05 16:51:40 +00:00
daveluff
bc3df74066 Add ground.[ch]xx, groundlist.[ch]xx and ATCVoice.[ch]xx to Makefile.am 2002-12-04 20:08:03 +00:00
daveluff
c65c5f3a4a Changes to support voice rendering of ATC 2002-12-04 20:07:12 +00:00
daveluff
d3e33e8b53 Changes towards tower control - work in progress with no end-user benefit yet 2002-12-04 20:06:20 +00:00
daveluff
46011ab535 Changes and additions to utility functions to support voice ATC rendering and AI taxiing. 2002-12-04 20:05:30 +00:00
daveluff
2a1c00b8e4 Minor changes to variable name and comments 2002-12-04 20:04:26 +00:00
daveluff
8bd892a1a0 Minor change to variable name 2002-12-04 20:03:18 +00:00
daveluff
9be0f4032d Changes to support AI taxiing and crabing when flying in wind. Still a work in progress. 2002-12-04 20:02:03 +00:00
daveluff
791caf9fbc Removed unused code and obsolete comments 2002-12-04 19:52:50 +00:00
daveluff
df089b80f8 Changes to support voice ATIS 2002-12-04 19:51:21 +00:00
daveluff
fe6784af51 Initial draft of a canned ATC voice handling class 2002-12-04 19:49:35 +00:00
daveluff
1db3b01e04 Add ground control frequency data handling along the same lines as navlist etc... 2002-12-04 19:47:16 +00:00
daveluff
25d9868759 Include GPL 2002-12-04 19:38:04 +00:00
daveluff
5f543a2fd1 Changes towards ground control and AI taxiing currently very hardwired to KEMT 2002-12-04 19:36:39 +00:00
curt
35b7d568d0 #include <config.h> where needed for cygwin/gcc-3.2. 2002-12-03 14:59:24 +00:00
curt
ae46fe825f Erik Hofman: Irix build fixes. 2002-10-24 14:02:19 +00:00
david
c581cfa395 Preliminary support for AI planes from Dave Luff. This works only at
KEMT (w120n30 scenery), and you will have to set the property
/sim/ai-traffic/enabled to 'true' to see the other plane (and tune
comm1 to 121.2 to hear the other plane's radio calls).
2002-10-02 15:27:49 +00:00
curt
4f00d9a959 Tidy up the autoconf/automake configuration a bit.
- Removed some old cruft.

- Removed some support for older versions of automake which technically was
  correct, but caused the newer automakes to squawk warnings during an
  initial sanity check (which isn't done very intelligently.)

  NOTE: this fix is technically not correct for older version of automake.
  These older version use the variable "INCLUDES" internally and could have
  them already set to an important value.  That is why we were appending
  our values to them.  However, newer versions of automake don't set this
  value themselves so it is an error to append to a non-existant variable.
  We seem to "get away" with overwriting the value on older versions of
  automake, but if you have problems, consider upgrading to at least
  automake-1.5.
2002-08-25 19:40:04 +00:00
david
0ebe8ec8f0 Removed the FG3DModel class and replaced it with fgLoad3DModel.
Animations are now contained within the scene graph itself and are
updated whenever the graph is traversed -- that saves time by not
updating animations not currently in sight, and it allows animations
to be used for static objects and random objects as well.

Added new FGModelLoader and FGTextureLoader classes.  These are intern
tables for models, to guarantee (mostly) that no model is loaded more
than once.  FGTextureLoader is not yet used anywhere, but
FGModelLoader is now in place everywhere that ssgLoad* used to be
used (thus adding the ability to use animations).

In the future, FGModelLoader will add some interesting functionality,
including the ability to reload 3D models on the fly.
2002-08-07 01:34:49 +00:00
david
f8d4cb36b2 Fixed reporting of winds, cloudbase, and altimeter setting. The
temperature is still wrong.
2002-07-26 02:48:56 +00:00
david
51d3edaafa Patch from Melchior Franz:
This patch eliminates about 10 of valgrind's "Use of uninitialised
value of size ..." messages. They are all caused by approachlist building
incomplete FGApproach class instances and then copying them into the
approchlist container, hence copying data garbage.
   I know, I couldn't win a beauty contest with this patch, but the
alternative approach -- letting operator<< always leave complete
entries -- didn't look any better. And I do only add those seemingly
useless initialization where the values would be used uninitialized
else. The constructors are only run during setup and won't slow fgfs
down at runtime.
2002-06-28 19:14:42 +00:00
david
72fbb0f3f5 Patch from Julian Foad:
Newline at end of file is required.  (On a preprocessor line it is
required; on other lines it is recommended but not required.)
2002-06-28 17:59:13 +00:00
david
fe4a837d7f Modified to work with new cloud properties (sort-of). 2002-05-17 19:02:43 +00:00
curt
92a58f6555 Consolodating scenery structures in scenery.hxx. 2002-05-14 05:49:47 +00:00
curt
47825dcbae Moved "scenery" from being declaried in scenery.cxx to being declared
in globals.hxx.
2002-05-14 05:22:52 +00:00
david
1fe50d4cd2 Removed configuration option --with-old-mouse and FG_OLD_MOUSE macro.
Removed configuration option --with-new-environment and
FG_NEW_ENVIRONMENT macro.

Added configuration option --with-weathercm and FG_WEATHERCM macro.

FGEnvironment is now the default; use --with-weathercm to get the old
weather.
2002-05-12 00:12:19 +00:00
david
f8df8ecda9 Modified to use FGEnvironment as well as WeatherCM. 2002-05-11 23:22:24 +00:00
david
5a849b66e8 Major overhaul:
- changed FGSubsystem::update(int) to
  FGSubsystem::update(delta_time_sec); the argument is now delta time
  in seconds rather than milliseconds

- added FGSubsystem::suspend(), FGSubsystem::suspend(bool),
  FGSubsystem::resume(), and FGSubsystem::is_suspended(), all with
  default implementations; is_suspended takes account of the master
  freeze as well as the subsystem's individual suspended state

- the FDMs now use the delta time argument the same as the rest of
  FlightGear; formerly, main.cxx made a special case and passed a
  multiloop argument

- FDMs now calculate multiloop internally instead of relying on
  main.cxx

There are probably some problems -- I've done basic testing with the
major FDMs and subsystems, but we'll probably need a few weeks to
sniff out bugs.
2002-05-11 16:28:50 +00:00
david
56473dc28d Mac OS X fixes and MSVC warning fixes from Jonathan Polley. 2002-05-10 23:35:06 +00:00
david
f2683c541b Patch from Melchior Franz:
ATCmgr.cxx:148 says:
// Returns true if the airport is found in the map

Yes, it returns true if the airport has been found. But it fails
to return the airport data. Just plays around with a local pointer.  ;-)
2002-04-25 19:26:18 +00:00
david
77cf6c7dc8 Patch from Melchior Franz:
FGAIEntity::FastWorldCoordinate (AIEntity.cxx:96) uses this->hdg
uninitialized.
2002-04-25 19:25:53 +00:00
david
c5f6293f17 Fix for vanishing-model problem: models are drawn in the same scene
graph as the terrain, except for internal cockpit view.  The SSG
scene-graph variables (except for the lighting root -- I'll get that
later) are now held in globals.hxx.

FGModelMgr::draw() is obsolete; I'll remove it in a future revision.
2002-04-13 21:36:22 +00:00
curt
2c00e13157 Initial revision. 2002-04-04 20:50:05 +00:00
curt
ea99c0421c Fix a warning message. 2002-04-04 20:48:21 +00:00
curt
6997a645c9 A few small updates to make ATC IRIX compliant. 2002-04-04 20:47:23 +00:00
curt
8ac5a5327e Oops, misunderstanding, this copy of runways.cxx wasn't supposed to go here. 2002-04-04 16:30:00 +00:00
david
8b18201ced - fixed ANSI C++ namespace problems
- added final newlines to files to avoid compiler warnings

- adjusted for FG_NEW_ENVIRONMENT
2002-04-04 01:32:00 +00:00
curt
7543409e47 Attached are a fairly extensive series of patches to the ATC
system.  A chap from Germany called Alexander Kappes (cc'd) got
in touch with me a few weeks ago and has written the start of
Approach control.  At the moment tuning in to a valid approach
frequency (Dortmund or East Midlands) should result in vectors to
a spot about 3 miles from the active runway, and a telling off if you
stray too far from the correct course, in the console window.  He
seems to know what he's doing so expect this to improve rapidly!!

I've added a rudimentry AI manager and a hardwired Cessna at
KEMT on the runway - I'll remove it before the next release if I don't
have it flying by then.  There seems to be an issue with framerate
which drops alarmingly when looking at it - I've a feeling that I've
possibly created several Cessnas on top of each other, but am not
sure.
2002-04-03 23:54:44 +00:00
david
412ca9a3d4 * src/ATC/atis.cxx
* src/ATC/atislist.cxx

Patch from Melchior Franz:

- merged the _MWERKS_ & generic #ifdef branch, only the loop head needs
  different treatment
- commented out a "n >> skipeol" that is used in navlist.cxx to gobble
  the starting C++-style comment from default.nav.gz; atis inherited
  that, but there is no such comment in default.atis.gz, so the first
  data entry got thrown away
- commented out min/max frequency exploration (-> only for debugging)
- enhanced the constructor; the operator>> wouldn't have initialized all
  variables in case of a broken default.atis.gz entry, so we would have
  got a mixture of the broken one and the previous one;
- move the automatic FGATIS variable into the loop, so that it gets
  cleanly constructed for every database entry.
- don't access a.type before it is initialized
- updated the commented out debug output statements; they were still
  designed for the FGNav class ...
2002-03-30 12:50:30 +00:00
david
a0f50cd90d Added a final newline to avoid a compiler warning. 2002-03-13 14:17:59 +00:00
curt
62ed7592e3 Fixes for Irix compatibility.
Fix several long standing irix compiler warnings.
2002-03-12 20:01:54 +00:00
david
76b06f4707 Added final newline to prevent compiler warnings. 2002-03-03 22:47:06 +00:00
curt
348ac42c90 Attached is a reasonably large patch to add a proper ATC
subsystem to Flightgear.  No more functionality is implemented
than at present (apart from an ATIS bug-fix - station wouldn't
change if the radio was switched directly from one station to
another) but it is much neater than the current hack and should be
easily extendable.

Some cruft is still probably left over in radiostack.[ch]xx such as
the bindings to the comm frequencies but I'll leave removing those
until I'm sure they're not needed there.
2002-03-01 17:39:52 +00:00
david
71f120e3be Initial take of new environment subsystem. Configure with
--use-new-environment to active it.
2002-02-19 15:16:08 +00:00
david
3b870192f4 First steps in a weather reorganization. Note especially that
properties have been renamed from wind-(north|east|down)-fps to
wind-from-(north|east|down)-fps, and the FDMs modified appropriately.
No other changes should be visible unless FG_OLD_WEATHER is defined.
2002-02-19 01:26:44 +00:00
david
ecccc91064 Corrected typo ("Celsius" rather than "Celcius") and added to cast to
avoid a compiler warning.
2002-02-13 23:57:31 +00:00
curt
56db201e52 Cleaned up a few stray cout's 2002-02-13 18:17:04 +00:00
curt
dd8852dabe Better support for an alternate calendar time (i.e. if time/position/etc.
are being driven from an external data source.)

Akso found and fixed a bug in the simgear that caused the time to go goofy
temporarily while scenery was being loaded.
2002-02-11 23:33:20 +00:00
curt
aad1de2ee5 Changes to match simgear changes which allow overriding the current
clock time.
2002-02-10 04:18:10 +00:00
curt
b1027c7b6a Various Irix compiler tweaks. 2002-02-05 15:57:46 +00:00
curt
4a40bb1151 Updates to allow weather system and atis to interact better. 2002-02-01 23:13:48 +00:00
curt
28d8191dae A couple minor MSVC tweaks contributed by Jonathan Polley 2002-01-17 00:03:02 +00:00
curt
1fa4c88d0e Updates to build system to better support automake-1.5
- automake-1.4 sets default values for INCLUDES which we can't
  overwrite.
- automake-1.5 renames this to DEFAULT_INCLUDES and leaves INCLUDES
  open for the developer to use.

Thus for automake-1.4 we are forced to 'append' to INCLUDES and in
automake-1.5 we can just set the value to whatever we like.
Unfortunately, the behaviors of the two versions are mutually
incompatible.

The solution I am committing now works for both versions but
automake-1.5 generates a lot of spurious warning messages that are
annoying, but not fatal.
2001-12-28 22:29:59 +00:00
curt
b75998736f Fix for MSVC. 2001-12-17 21:04:33 +00:00
curt
ff0a5bd9ea Make the Irix compiler happy. 2001-12-17 17:41:02 +00:00
david
4f5d70144a -Removed .cvsignore from itself, since .cvsignore is now in the CVS 2001-12-12 04:15:23 +00:00
curt
4cc5cee885 David Megginson writes:
Here's an unusual patch for FlightGear -- I've created .cvsignore
files for every source directory, to make CVS output more informative.
This is especially nice when using cvs-examine from (X)Emacs to look
for changes.
2001-12-09 05:43:40 +00:00
curt
2bc1e7d365 a couple of minor modifications, including hardwiring temperature again
(the global temperature property returns that at the aircrafts altitude) and
adding "information" to the airport name to avoid having to store it
in the default.atis file 1200 odd times.
2001-11-20 21:23:42 +00:00
curt
e35fffa035 David Luff writes:
Heres an update to the ATIS stuff.  In brief:

The possible buffer overflow in the display with wind should
hopefully be fixed.

Temperature is taken from the global temperature property instead
of being hardwired.

The display class now includes an implementation of the member
function to change the repeating message.

The message callsign is no longer hardwired.  The first message
from each station is generated with a random callsign.
Subsequent messages from the same station have the callsign
incremented every hour.  A map of airport-id vs. last callsign and
transmission time is kept for each station that has transmitted for
the duration of the FlightGear session.  The logic might be flaky if
FlightGear is run for more than 24 hours at a stretch between
visiting the same ATIS station though!  (ie I don't check the day.)
This map is kept in the atislist class.  This might not be the best
long-term place for it (in an ATC class of some sort might be
better), but it works for now.
2001-11-19 23:53:36 +00:00
curt
20f0d3f83e Initial revision of ATIS module contributed by Dave Luff. 2001-11-07 17:55:04 +00:00