-------------------------------------------------- From: "Torsten Dreyer" <tors...@t3r.de> Sent: Thursday, June 24, 2010 4:24 PM To: <flightgear-devel@lists.sourceforge.net> Subject: [Flightgear-devel] Heads up: new autopilot subsystem implementation
> Hi all, > > I have just commited a pretty large commit for a new implementation of the > autopilot subsystem(group). The reason for that was that the old way of > having > everything stuffed into one single source file of 1360 lines and a header > file > of 514 lines made working on this piece of code allways a little > challenging. > While at it, I replaced some design patterns to look a little more OO-ish > and > added some doxygen compatible comments to the class definition. > snip > > Because I touched at least 90% of all code lines, it is very likely that I > introduced a new bug. Especially the build process was tested on linux > only. I > have no chance to test the build on Windows on OS/X. > snip > > Torsten Now that the config.h file is sorted (many thanks for the commit) I have again been able to make an MSCV09 from the "next" branch. However it was not without problems ;-) In the autopilot logic.cx was failing due to NOMINMAX not being set. There were also several problems due to SGvec3 and SGvec4 not being defined. These I have sorted by re-arranging the order of include file calls. There may be a better solution, and perhaps my solution will not work on other platforms. The changes are all at the beginning of files:- in analogcomponenet.hxx........................................... #ifndef __ANALOGCOMPONENT_HXX #define __ANALOGCOMPONENT_HXX 1 #include "component.hxx" #include "inputvalue.hxx" namespace FGXMLAutopilot { in inputvalue.cxx........................................ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // #include <Main/fg_props.hxx> #include "inputvalue.hxx" using namespace FGXMLAutopilot; in logic.hxx................................................... #ifndef __LOGICCOMPONENT_HXX #define __LOGICCOMPONENT_HXX 1 #include "analogcomponent.hxx" #include "digitalcomponent.hxx" namespace FGXMLAutopilot { Once it all compiled there were some undefined variables. To solve these fdm_shell.cxx/.hxx and flightProperties.cxx/.hxx needed to be added to Lib_Flight. This produced another compilation error:- The correction in flightProperties.cxx is #include <Main/globals.hxx> #include <FDM/flightProperties.hxx> #include <simgear/props/props.hxx> #include <simgear/math/SGMath.hxx> #include <Main/globals.hxx> FlightProperties::FlightProperties(SGPropertyNode* root) : Also note that fdm_shell.cxx/.hxx and flightProperties.cxx/.hxx do not have the usual copyright header. All compiles and links now. I have not tested to see if it runs OK. Thanks for all the continuing work by all concerned. Alan ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel