4bfd1722df
This patch removes some useless indirection when creating AIModels. It obsolets AIScenario*. AIEntities are just an intermediate copy of an other intermediate copy of an xml file on the way from the ai scenario configuration file to the AIModels. As such the AImodels can now be created directly from the property tree read from the scenario file. This reduces the amount of work needed to add an other AIModel and reduces the amount of copy operations done during initialization. It also moves internal knowledge of special AI models into these special AI models class instead of spreading that into the whole AIModel subdirectory which in turn enables to use carrier internal data structures for carrier internal data ... Also some unused variables are removed from the AIModel classes. I believe that there are still more of them, but that is what I stumbled accross ... Tested, like the other splitouts these days in a seperate tree and using the autopilot for some time, and in this case with a carrier start ...
48 lines
1.3 KiB
C++
48 lines
1.3 KiB
C++
// FGAIStatic - AIBase derived class creates AI static object
|
|
//
|
|
// Written by David Culp, started Jun 2005.
|
|
//
|
|
// Copyright (C) 2005 David P. Culp - davidculp2@comcast.net
|
|
//
|
|
// This program is free software; you can redistribute it and/or
|
|
// modify it under the terms of the GNU General Public License as
|
|
// published by the Free Software Foundation; either version 2 of the
|
|
// License, or (at your option) any later version.
|
|
//
|
|
// This program is distributed in the hope that it will be useful, but
|
|
// WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
// General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with this program; if not, write to the Free Software
|
|
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
|
|
#ifndef _FG_AIStatic_HXX
|
|
#define _FG_AIStatic_HXX
|
|
|
|
#include "AIManager.hxx"
|
|
#include "AIBase.hxx"
|
|
|
|
#include <string>
|
|
SG_USING_STD(string);
|
|
|
|
|
|
class FGAIStatic : public FGAIBase {
|
|
|
|
public:
|
|
|
|
FGAIStatic();
|
|
~FGAIStatic();
|
|
|
|
virtual bool init();
|
|
virtual void bind();
|
|
virtual void unbind();
|
|
virtual void update(double dt);
|
|
|
|
virtual const char* getTypeString(void) const { return "static"; }
|
|
};
|
|
|
|
|
|
|
|
#endif // _FG_AISTATIC_HXX
|