1
0
Fork 0
Commit graph

50 commits

Author SHA1 Message Date
James Turner
43e3d7ef38 Electrical system: cache property nodes
Remove some hot spots in the electrical simulation, by caching
property nodes in two places.
2018-09-10 10:45:58 +01:00
James Turner
3653508412 Build- and run-time concept of developer mode.
Make a single Cmake value to expose the build type to code, and use
this to default a run-time ‘developer-mode’ property, which can be
over-ridden from the command line.

Use this to drive the different warning levels. Policies subject to
review, especially whether nightly builds should default to 
developer mode or not.
2017-02-27 23:37:59 +00:00
James Turner
6d0c2070fd Use future-proof SGPath APIs.
Remove uses of .str(), .c_str() and some other methods of SGPath.
Pass SGPath directly where possible, or explicitly convert to the
appropriate 8-bit encoding.
2016-06-28 10:08:38 +01:00
James Turner
2314ccfe13 Developer-warnings
- make some existing warnings developer-mode only
- add a warning about legacy aircraft path usage
2015-11-13 22:13:44 +00:00
James Turner
386d87e098 Cleanup exit handling.
Replace many lingering calls to exit() from the code,
replacing most with exception throws, which can be
caught by the existing mechanisms.

Update the option-parsing code to return an explicit
value indicating what to do (e.g., exit status to return
to the shell).
2013-10-15 22:16:50 +01:00
ThorstenB
a3e76909ee Christoph Korn/PlayDeb.net: fix typos 2012-08-17 23:51:30 +02:00
ThorstenB
b9260f543b Ganael Laplanche: fix include dependencies for FreeBSD support 2012-05-05 01:08:20 +02:00
ThorstenB
e9a9f8c96d Use some more logging class variety.
Stop using SG_GENERAL and SG_ALL everywhere. Using different
classes makes switching the classes really useful...
2011-08-12 00:09:26 +02:00
James Turner
18a5a2a144 Fix one more place to use path resolution
(and hence work with multiple aircraft dirs)
Thanks to Jentron for the catch.
2010-09-06 16:10:58 +01:00
James Turner
d1852430bf Make various implicit includes (via PLIB) explicit. 2010-07-28 10:25:42 +01:00
Tim Moore
6044d929d4 eliminate some SGPropertyNode_ptr variables in classes
These were temporary variables that were being deleted explicitly, leading to
various corruption.
2010-01-26 17:19:17 +01:00
fredb
219be77f1e Suppress warnings 2009-07-02 08:59:16 +02:00
ehofman
14885374de header cleanups 2008-07-31 12:04:32 +00:00
timoore
a251fd35cb Include <iostream> and using declarations as needed.
SimGear no longer includes iostream and avoids using declarations in
header files, so various fixups are needed.
2008-06-02 21:07:35 +00:00
mfranz
71cdd8c59a - degrade electrical XML SG_ALERT to SG_WARN. The reason why this is output
at all is that this method is meant to be deprecated. But if it doesn't
  say that, and there's no generic replacement at all, then it's rather
  pointless.
- simplify parameter initialization (The old code copied from Instrumentation/
  but has been simplified there in the same manner a few months ago
  The new method is less picky about additional nodes ane outputs less
  pointless alerts. If there shall really be a check for that, then
  this should be a separate function. But it's nowhere else done in fgfs.
2007-05-11 18:00:07 +00:00
fredb
c5a7267206 Compile again on Win32 platforms 2006-06-16 10:17:06 +00:00
mfranz
c9813d1b5d new FSF address 2006-02-21 01:16:04 +00:00
curt
00d5d7c1b3 Remove an unneeded include. 2005-08-22 23:31:23 +00:00
ehofman
a760dcdf13 Harald JOHNSEN:
- replay.cxx :
  corrected a bug, now reinitialize the recording data when replay is
  deactivated

- fgclouds.cxx :
  cloud layers and weather condition are saved when choosing a weather scenario,
  added a new scenario 'none' so we can switch back to standard flightgear
  weather

- navradio.cxx :
  force a search() on init to initialize some variables, preventing a nearly
  infinite loop  when delta-time == 0 on the first update()

- electrical.cxx :
  uninitialized variable in apply_load() for FG_EXTERNAL supplier

- panel.cxx, panelnode.cxx :
  added a property "depth-test" for 2.5D panels so that they update the depth
  buffer and are no more visible from the outside of the aircraft when the
  aircraft uses textures without an alpha channel

- panel.cxx :
  moved the computation of the instruments diffuse color outside the
  texturelayer code since this is constant during a frame, this is a big speedup
  for 2D panels
2005-08-22 17:49:50 +00:00
curt
3a109c568a Adjust logging output. 2005-06-14 20:55:46 +00:00
curt
6dd82d0502 Updated electrical system.
These changes represent some attempts to bandaid and patch a hopelessly
flawed system to impliment basic battery charging/discharging as well as
provide the ability to model ammeter gauges and draw current from multiple
sources (like load balancing multiple alternators in a multi-engine aircraft.)
The system design forces all these things to be horrible hacks or depend
on extremely subtle system side effects and call ordering so they may or9
may not work to one degree or another.

As mentioned in the mailing list, my recommendation is to move away from
using this system and instead build a procedural electrical system using
nasal.  Sometime in the future we hopefully can impliment a better conceived
data driven electrical system model.
2005-06-14 17:57:48 +00:00
curt
d05121ef46 Fix my mailing address by replacing it with my web page. 2004-11-19 22:10:41 +00:00
curt
19dff3ac44 Alternator should still put out some output when RPM < 800. (Yes I know this
is hard coded for the C172, but so far no one has asked to do this more
generically.)
2004-06-14 21:36:10 +00:00
curt
4e14316256 Fix a property name that was missed in an earlier change. 2004-04-20 22:54:44 +00:00
curt
aa2541a776 Towards better support for a per engine master bat/alt switch. 2004-04-02 16:20:46 +00:00
curt
da5ea10d5d Curt Olson:
Autopilot overhaul.
2004-01-31 19:47:45 +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
curt
c05a2c2bcc Add support for specifying a <rated-draw> tag in the output sections of
the electrical system definition.
2003-11-20 19:03:09 +00:00
curt
455a900b5c Allow a switch definition in the electrical system configuration to have
a <rating-amps> tag which also implies that the switch is a circuit breaker.

Eventually we could have code that will automatically trip the breaker if
the current exceeds the rating.
2003-11-18 21:17:33 +00:00
curt
d68a6d8ca1 Remove some debugging output. 2003-11-17 21:19:37 +00:00
curt
9d33285ef0 Added code to support a richer switch definition syntax. Currently we only
support an attached property name and an intial state, but this can easily
be extended to configure a switch to be a circuit breaker with a max rating,
etc.
2003-11-17 21:10:47 +00:00
curt
c06bf498a9 Additions to the electrical system model to allow it to back propagate
current draw.  This is only one piece of the puzzle, but as we move forward,
the idea is better modeling of the ammeter, and we could automatically pop
circuit breakers if the current gets too high.
2003-11-15 05:18:55 +00:00
ehofman
c01b4dce67 Fix a problem which was introduced by the previous patch 2003-10-16 19:51:59 +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
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
curt
80e300c65a At low rpms when the alternator isn't able to generate enough current to charge
the battery, don't show positive amps.
2003-05-28 18:47:42 +00:00
curt
11e112c1e4 Added very simplistic volt and amp modeling to the electrical model. This
should really be made more generic and part of the electrical model config
but this is all I had time for this weekend.
2003-05-27 19:18:14 +00:00
curt
d4d53763d9 Commented out a stray cout. 2003-02-13 21:31:44 +00:00
curt
6bfdb5a762 Add support for specifying an rpm source for the alternator. This enables
us to tie the output of an arbitrary generator to the state of an arbitrary
engine.
2003-02-03 22:35:24 +00:00
curt
1b40b5e4c9 Fixed a spelling error in the api. (ouch) :-) 2003-02-03 22:22:02 +00:00
curt
9e35d33657 Add the ability to specify an initial state (on/off) for a connector switch.
If nothing is specifed the switch defaults to on, but this is a problem for
the starter switch.
2003-02-03 22:15:36 +00:00
david
9adaa93b19 Kludge in a /systems/electrical/serviceable master property to kill
the whole electrical system.  We will also need a mechanism to kill
individual suppliers (such as the alternator), but this is good enough
for most training.
2003-01-25 21:49:57 +00:00
david
8e60042052 Patch from Erik Hofman:
This patch turns out to be much more reliable compared to the previous
one I sent Curtis. Could you apply it for me?
2002-12-31 00:56:14 +00:00
curt
2d09acb10f Fix a potential crash when an electrical system is not defined. 2002-12-18 21:55:33 +00:00
curt
cc4821e43f Each node in the electrical system graph can now publish to an arbitrary
number of properties which will reflect that node's state.
2002-09-26 04:51:23 +00:00
curt
4a43282b72 Change path name of electrical system config file. 2002-09-25 22:07:28 +00:00
curt
c6c96eb688 Remove 'cout' 2002-09-25 12:38:09 +00:00
curt
8d2014f7bc Updates to the electrical system model. "Juice" is now propogated through
the system, switches, fuses, circuit-breakers work.  Nothing is actually
wired into the electical system yet.
2002-09-24 23:45:56 +00:00
curt
3323efa256 Check point commit:
The code reads the electrical system config and contructs an internal model.
Nothing is done beyond that yet ... the electrical system is not updated,
nor is it connected to the property system in anyway.
2002-09-24 19:57:11 +00:00
curt
90e64f9430 Stub in a place holder for the electrical system model. 2002-09-24 15:24:04 +00:00