Re: [Flightgear-devel] an idea about dialog-apply command
I object to the proposed change. (Reasons below.) * Sébastien MARQUE -- 2/21/2009 2:39 AM: In this script you'll find several listeners linked to several properties that can be modified using instrument-failures.xml or system-failures.xml. Except that these are *not* change-only listeners. | setlistener(f ~ /serviceable, failure[f]); You should have used: setlistener(f ~ /serviceable, failure[f], 0, 1); ... as described on the wiki page about Nasal. But there are two other ways to avoid your problem: - Use live on the checkbox and don't apply the whole dialog every time. - Use dialog-apply on selected checkboxes (object-name!): binding commanddialog-apply/command object-namecheckbox1/object-name /binding Because (default Nasal-)listeners are *by design* triggered whenever they are written to, and this can be desired behavior (what about applying a signal property multiple times?), and because there are three methods to avoid problems arising from that, I don't think applying the patch would be a good idea. m. -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] [PATCH] to enhance translate animation
Hi Torsten, Committed. Thanks! Cheers, Durk On Sunday 15 February 2009 20:01:11 Torsten Dreyer wrote: the rotate animation has two ways to define a axis 1. by using center/x-m and axis/[xyz] 2. by using axis/[xyz]1-m and axis/[xyz]2-m The translate animation only supports method 1. and here comes a patch that enables method 2 for this animations, too. -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] an idea about dialog-apply command
* Melchior FRANZ -- 2/21/2009 9:33 AM: You should have used: setlistener(f ~ /serviceable, failure[f], 0, 1); Whoops. Of course, I meant: setlistener(f ~ /serviceable, failure[f], 0, 0); The meaning of the first optional argument is: 0 ... just attach (default) 1 ... attach and run initially and that of the second is: 0 ... trigger on change only 1 ... trigger on writing -- independent of value (default) 2 ... trigger on writing to node or children, as well as addition and removal of children BTW: We might decide at some point that we only want to dialog-apply if values changed, but this needs more consideration, and one broken dialog isn't enough reason to convince me. ;-) BTW2: dialog-{apply,update} should handle an arbitrary number of object-name, not just one. m. -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] an idea about dialog-apply command
Hi Csaba and Melchior, oops, sorry, I've made a mistake attaching the failures.nas script, but please believe me that I've first tried setlistener(f ~ /serviceable, failure[f], 0, 0); in order to behave as written in setlistener doc (wiki and globals.nas). I've just write back to correct listeners args (0 ,0), and unapply patch but here is the result, I only unchecked Airspeed Indicator, in Instrument Failures dialog, then use the Apply button: airspeed indicator failure altimeter failure turn indicator failure slip-skid ball failure heading indicator failure vertical speed indicator failure which is not correct. With the small patch applied, correct listeners args (0, 0) and unchecking Airspeed Indicator again: airspeed indicator failure which is correct. I think that it wasn't discovered before (was it?) because nobody has put several listeners on several properties contained in one single dialog, or maybe it has no effects (tests on property value as I've done myself before searching to modify dialog-apply?). I don't think that the dialog is broken, but for me the dialog-appply command is. Reading the code about dialog-apply fgcommand I've seen that every object-name is copied in dialog.cxx, FGDialog::applyValues for (unsigned int i = 0; i _propertyObjects.size(); i++) { const string name = _propertyObjects[i]-name; if (objectName name != objectName) continue; copy_from_pui(_propertyObjects[i]-object, _propertyObjects[i]-node); } independantly of changes, so I thought that it was maybe the reason for listeners to be fire up. best regards seb Melchior FRANZ a écrit : * Melchior FRANZ -- 2/21/2009 9:33 AM: You should have used: setlistener(f ~ /serviceable, failure[f], 0, 1); Whoops. Of course, I meant: setlistener(f ~ /serviceable, failure[f], 0, 0); The meaning of the first optional argument is: 0 ... just attach (default) 1 ... attach and run initially and that of the second is: 0 ... trigger on change only 1 ... trigger on writing -- independent of value (default) 2 ... trigger on writing to node or children, as well as addition and removal of children BTW: We might decide at some point that we only want to dialog-apply if values changed, but this needs more consideration, and one broken dialog isn't enough reason to convince me. ;-) BTW2: dialog-{apply,update} should handle an arbitrary number of object-name, not just one. m. -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
[Flightgear-devel] Property System Overview?
Do we have any documentation or overview of the property system that gives a high level view. I found something about the contents of the property tree on our wiki. There's probably some api documentation floating around. But what I really would like is a higher level description of what the property system is, why it's useful our application, etc. Pretend Curt is in a meeting and he's given 30 seconds to explain the property system to smart people who have never seen this concept before. I've just burned my first 15 seconds with U, er, It's like , you know Now all these smart people are scowling. Now what!?! Thanks, Curt. -- Curtis Olson: http://baron.flightgear.org/~curt/ -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Property System Overview?
Pretend Curt is in a meeting and he's given 30 seconds to explain the property system to smart people who have never seen this concept before. I've just burned my first 15 seconds with U, er, It's like , you know Now all these smart people are scowling. Now what!?! I'd try this: The property system - or property tree - represents the internal state of all systems within FlightGear, like the flight dynamics model. The content of these internal state variables are presented in a hierarchically manner and can easily be accessed through a well known API. A system may present it's current state to other systems and let other systems change it's current state by allowing them to write to it's own properties. One might think of the property system as a global, normalized communication platform. 13 seconds - so you have two seconds for Any questions? at the end... Torsten -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Property System Overview?
On Saturday 21 February 2009, Torsten Dreyer wrote: Pretend Curt is in a meeting and he's given 30 seconds to explain the property system to smart people who have never seen this concept before. I've just burned my first 15 seconds with U, er, It's like , you know Now all these smart people are scowling. Now what!?! I'd try this: The property system - or property tree - represents the internal state of all systems within FlightGear, like the flight dynamics model. The content of these internal state variables are presented in a hierarchically manner and can easily be accessed through a well known API. A system may present it's current state to other systems and let other systems change it's current state by allowing them to write to it's own properties. One might think of the property system as a global, normalized communication platform. 13 seconds - so you have two seconds for Any questions? at the end... Torsten or... The property system acts as a routing interface, both between different high-level FG sub-systems and the outside world. Data that is required by one FG sub-system can be exposed in the property tree, where it can then be read or modified, either by other internal FG sub-systems, or by for external input output. [For example, a left banking joystick input is exposed in the property tree where it is read by the FG FDM sub-system. The FG FDM sub-system then in turn outputs an aileron deflection back to the property tree where it is then read by the FG animation sub-system to animate the aileron deflection in the 3D model.] Alternatively data [the joystick input], once exposed in the property tree, can be read and modified by an external application via the FG IO sub-system, such as an external FDM. [The output from the external FDM can then be fed back in to FG by writing it's data back to the property tree, once again, via the FG IO sub-system.] In addition to the protocols supported by the FG IO sub-system there are also telnet and http interfaces, which allow property tree data to be read and modified via these interfaces. An important feature of the property tree interface is that it can be tailored and new entries added as required. [If you wish to use a custom-written sub-system, such as your own Terrain Following and Avoidance sub-system, for example, and perhaps implemented or prototyped in Nasal,] A[a]dding new property tree branches and nodes to handle your unique data presents no problems. If you need to cut it down you can take out the examples []. You can then give examples once you've got their attention. LeeE -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Property System Overview?
LeeE wrote: On Saturday 21 February 2009, Torsten Dreyer wrote: Pretend Curt is in a meeting and he's given 30 seconds to explain the property system to smart people who have never seen this concept before. I've just burned my first 15 seconds with U, er, It's like , you know Now all these smart people are scowling. Now what!?! I'd try this: The property system - or property tree - represents the internal state of all systems within FlightGear, like the flight dynamics model. The content of these internal state variables are presented in a hierarchically manner and can easily be accessed through a well known API. Some things I'd add: Naming a property is very much like naming a file in a file system, with levels of hierarchy. The property tree maps very nicely to XML. This is convenient for initializing the property tree and saving its state. Values in the tree are typed, but they can also be untyped strings which will be converted to a typed value when read. Tim -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] an idea about dialog-apply command
On Sat, Feb 21, 2009 at 11:32 AM, Melchior FRANZ mfr...@aon.at wrote: setlistener(f ~ /serviceable, failure[f], 0, 0); 0 ... trigger on change only As I wrote in my other email, this doesn't work as expected. The listener is triggered initially even if the property doesn't change. Sébastien, I think your listeners should check the value of the property. It might very well happen that a failed instrument is later fixed, can't it? So the listeners would get triggered again and you'd have to differentiate between failure and fixing. This would also make the dialog-apply problem go away. -- Csaba/Jester -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
[Flightgear-devel] Patch for positioned.cxx
Hi, Compiling the file positioned.cxx with MSVC in debug model, it have some problems. but in release model , it have not. I think that it is the problem of implementation of STL by Microsoft in debug model. So i add a method for class LowerLimitOfType, and it works. I'd be happy if someone considers commiting this. Thanks, ZhiYong Huang Index: positioned.cxx === RCS file: /var/cvs/FlightGear-0.9/source/src/Navaids/positioned.cxx,v retrieving revision 1.12 diff -u -r1.12 positioned.cxx --- positioned.cxx 9 Jan 2009 13:15:03 - 1.12 +++ positioned.cxx 21 Feb 2009 17:54:27 - @@ -55,6 +55,9 @@ } }; +typedef std::setFGPositioned*, OrderByType BucketEntry; +typedef std::maplong int, BucketEntry SpatialPositionedIndex; + class LowerLimitOfType { public: @@ -67,11 +70,16 @@ { return a b-type(); } +#if defined(_MSC_VER) defined(_DEBUG) + bool operator()(const FGPositioned* a, const FGPositioned* b) const + { + return a-type() b-type(); + } +#endif }; -typedef std::setFGPositioned*, OrderByType BucketEntry; -typedef std::maplong int, BucketEntry SpatialPositionedIndex; + static NamedPositionedIndex global_namedIndex; static SpatialPositionedIndex global_spatialIndex; -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Patch for positioned.cxx
Hi, I have been applying this patch since sometime before Sep last year - see - http://geoffair.net/fg/txt/fgfs-047.patch.txt IMHO the _MSC_VER and _DEBUG switches do NOT need to be applied. I am forever puzzled how gcc resolves this since the comparison is indeed two pointers ... diff -ur CVS\FlightGear\source\src\Navaids\positioned.cxx FlightGear\src \Navaids\positioned.cxx --- CVS\FlightGear\source\src\Navaids\positioned.cxxMon Sep 08 21:25:45 2008 +++ FlightGear\src\Navaids\positioned.cxx Sat Nov 01 19:02:22 2008 @@ -147,6 +147,10 @@ { return a b-type(); } + bool operator()(const FGPositioned* a, const FGPositioned* b) const + { +return a-type() b-type(); + } }; static void Hope this helps... Regards, Geoff. On Sun, 2009-02-22 at 02:14 +0800, 黄志勇 wrote: Hi, Compiling the file positioned.cxx with MSVC in debug model, it have some problems. but in release model , it have not. I think that it is the problem of implementation of STL by Microsoft in debug model. So i add a method for class LowerLimitOfType, and it works. I'd be happy if someone considers commiting this. Thanks, ZhiYong Huang Index: positioned.cxx === RCS file: /var/cvs/FlightGear-0.9/source/src/Navaids/positioned.cxx,v retrieving revision 1.12 diff -u -r1.12 positioned.cxx --- positioned.cxx 9 Jan 2009 13:15:03 - 1.12 +++ positioned.cxx 21 Feb 2009 17:54:27 - @@ -55,6 +55,9 @@ } }; +typedef std::setFGPositioned*, OrderByType BucketEntry; +typedef std::maplong int, BucketEntry SpatialPositionedIndex; + class LowerLimitOfType { public: @@ -67,11 +70,16 @@ { return a b-type(); } +#if defined(_MSC_VER) defined(_DEBUG) + bool operator()(const FGPositioned* a, const FGPositioned* b) const + { + return a-type() b-type(); + } +#endif }; -typedef std::setFGPositioned*, OrderByType BucketEntry; -typedef std::maplong int, BucketEntry SpatialPositionedIndex; + static NamedPositionedIndex global_namedIndex; static SpatialPositionedIndex global_spatialIndex; __ 网易邮箱,中国第一大电子邮件服务商 -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] an idea about dialog-apply command
Yes, I will be obliged to check the value to avoid the instrument fix in some cases. But as I discover this problem I wanted to try a solution for every dialog-apply, to make the listeners work as expected, for future uses, not only the failures system I'm trying to write. If the fix is rejected, that's not a problem for me, but I think we let a problem that can go out again some day... regards seb Csaba Halász a écrit : On Sat, Feb 21, 2009 at 11:32 AM, Melchior FRANZ mfr...@aon.at wrote: setlistener(f ~ /serviceable, failure[f], 0, 0); 0 ... trigger on change only As I wrote in my other email, this doesn't work as expected. The listener is triggered initially even if the property doesn't change. Sébastien, I think your listeners should check the value of the property. It might very well happen that a failed instrument is later fixed, can't it? So the listeners would get triggered again and you'd have to differentiate between failure and fixing. This would also make the dialog-apply problem go away. -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
[Flightgear-devel] northern hemisphere vs southern hemisphere
Hi all, After some tests, I just discovered something amusing in FG. In fact, you do not know can be, but the gravity is reversed between the northern hemisphere and southern hemisphere. Finally it is the impression that it was ;) Look the Bo105 in northen hemisphere : http://helijah.free.fr/LFKJ2.png the same in southern hemisphere : http://helijah.free.fr/FACT2.png Or the Aircrane (blades longer) in northen hemisphere : http://helijah.free.fr/LFKJ.png and in southern hemisphere : http://helijah.free.fr/FACT.png Although this will not interfere with many of us. Many of us live in the northern hemisphere. But what should we say to those who live in the southern hemisphere ? Funny is not it ? Best regards. Emmanuel -- BARANGER Emmanuel http://helijah.free.fr http://helijah.free.fr/flightgear/hangar.htm http://helijah.free.fr/flightgear/H4-Hercules.htm http://helijah.free.fr/flightgear/flightgear.htm http://www.jamendo.com/fr/album/27163 -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Patch for positioned.cxx
On Sat, Feb 21, 2009 at 7:34 PM, Geoff McLane ubu...@geoffair.info wrote: IMHO the _MSC_VER and _DEBUG switches do NOT need to be applied. I am forever puzzled how gcc resolves this since the comparison is indeed two pointers ... No it isn't. Both uses in lower_bound and upper_bound take an iterator range and a const Type. So it is a pointer and a reference. gcc is right. -- Csaba/Jester -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] METAR++ or: live wind aloft data for FlightGear
2009/2/19 Torsten Dreyer tors...@t3r.de: Comments welcome. All works fine, thank you very much for this feature. From now long-range flights got new level of realism. -- --- WBR, Vadym. -- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] northern hemisphere vs southern hemisphere
BARANGER, It's really funny! :)! Huang. 在2009-02-22,BARANGER Emmanuel embaran...@free.fr 写道: Hi all, After some tests, I just discovered something amusing in FG. In fact, you do not know can be, but the gravity is reversed between the northern hemisphere and southern hemisphere. Finally it is the impression that it was ;) Look the Bo105 in northen hemisphere : http://helijah.free.fr/LFKJ2.png the same in southern hemisphere : http://helijah.free.fr/FACT2.png Or the Aircrane (blades longer) in northen hemisphere : http://helijah.free.fr/LFKJ.png and in southern hemisphere : http://helijah.free.fr/FACT.png Although this will not interfere with many of us. Many of us live in the northern hemisphere. But what should we say to those who live in the southern hemisphere ? Funny is not it ? Best regards. Emmanuel -- BARANGER Emmanuel http://helijah.free.frhttp://helijah.free.fr/flightgear/hangar.htmhttp://helijah.free.fr/flightgear/H4-Hercules.htmhttp://helijah.free.fr/flightgear/flightgear.htmhttp://www.jamendo.com/fr/album/27163-- Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel