1
0
Fork 0

Move the submodels code from the Systems manager into it's own Subsystem manager.

This commit is contained in:
ehofman 2004-10-22 09:58:24 +00:00
parent a938b5b0df
commit 29b5147478
6 changed files with 18 additions and 18 deletions

View file

@ -1,6 +1,7 @@
noinst_LIBRARIES = libAIModel.a
libAIModel_a_SOURCES = \
submodel.cxx submodel.hxx \
AIManager.hxx AIManager.cxx \
AIBase.hxx AIBase.cxx \
AIAircraft.hxx AIAircraft.cxx \

View file

@ -13,9 +13,9 @@
#include <AIModel/AIManager.hxx>
const double SubmodelSystem::lbs_to_slugs = 0.031080950172;
const double FGSubmodelMgr::lbs_to_slugs = 0.031080950172;
SubmodelSystem::SubmodelSystem ()
FGSubmodelMgr::FGSubmodelMgr ()
{
x_offset = y_offset = 0.0;
@ -28,12 +28,12 @@ SubmodelSystem::SubmodelSystem ()
string contents_node;
}
SubmodelSystem::~SubmodelSystem ()
FGSubmodelMgr::~FGSubmodelMgr ()
{
}
void
SubmodelSystem::init ()
FGSubmodelMgr::init ()
{
load();
_serviceable_node = fgGetNode("/sim/systems/submodels/serviceable", true);
@ -63,12 +63,12 @@ SubmodelSystem::init ()
}
void
SubmodelSystem::bind ()
FGSubmodelMgr::bind ()
{
}
void
SubmodelSystem::unbind ()
FGSubmodelMgr::unbind ()
{
submodel_iterator = submodels.begin();
while(submodel_iterator != submodels.end()) {
@ -78,7 +78,7 @@ SubmodelSystem::unbind ()
}
void
SubmodelSystem::update (double dt)
FGSubmodelMgr::update (double dt)
{
if (!(_serviceable_node->getBoolValue())) return;
int i=-1;
@ -98,7 +98,7 @@ SubmodelSystem::update (double dt)
}
bool
SubmodelSystem::release (submodel* sm, double dt)
FGSubmodelMgr::release (submodel* sm, double dt)
{
sm->timer += dt;
if (sm->timer < sm->delay) return false;
@ -137,7 +137,7 @@ SubmodelSystem::release (submodel* sm, double dt)
}
void
SubmodelSystem::load ()
FGSubmodelMgr::load ()
{
int i;
@ -205,7 +205,7 @@ SubmodelSystem::load ()
void
SubmodelSystem::transform( submodel* sm)
FGSubmodelMgr::transform( submodel* sm)
{
// get initial conditions
@ -335,7 +335,7 @@ SubmodelSystem::transform( submodel* sm)
}
void
SubmodelSystem::updatelat(double lat)
FGSubmodelMgr::updatelat(double lat)
{
double latitude = lat;
ft_per_deg_latitude = 366468.96 - 3717.12 * cos(latitude / SG_RADIANS_TO_DEGREES);

View file

@ -20,7 +20,7 @@ SG_USING_STD(vector);
SG_USING_STD(string);
class SubmodelSystem : public SGSubsystem
class FGSubmodelMgr : public SGSubsystem
{
public:
@ -73,8 +73,8 @@ public:
double mass;
} IC_struct;
SubmodelSystem ();
~SubmodelSystem ();
FGSubmodelMgr ();
~FGSubmodelMgr ();
void load ();
void init ();

View file

@ -100,6 +100,7 @@
#include <Input/input.hxx>
#include <Instrumentation/instrument_mgr.hxx>
#include <Model/acmodel.hxx>
#include <AIModel/submodel.hxx>
#include <AIModel/AIManager.hxx>
#include <Navaids/navdb.hxx>
#include <Navaids/navlist.hxx>
@ -1693,6 +1694,7 @@ bool fgInitSubsystems() {
////////////////////////////////////////////////////////////////////
SG_LOG(SG_GENERAL, SG_INFO, " AI Model Manager");
globals->add_subsystem("ai_model", new FGAIManager);
globals->add_subsystem("submodel_mgr", new FGSubmodelMgr);
// It's probably a good idea to initialize the top level traffic manager

View file

@ -5,7 +5,6 @@ libSystems_a_SOURCES = \
electrical.cxx electrical.hxx \
pitot.cxx pitot.hxx \
static.cxx static.hxx \
vacuum.cxx vacuum.hxx \
submodel.cxx submodel.hxx
vacuum.cxx vacuum.hxx
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src

View file

@ -20,13 +20,11 @@
#include "pitot.hxx"
#include "static.hxx"
#include "vacuum.hxx"
#include "submodel.hxx"
FGSystemMgr::FGSystemMgr ()
{
set_subsystem( "electrical", new FGElectricalSystem );
set_subsystem( "submodel", new SubmodelSystem() );
config_props = new SGPropertyNode;