assign a unique module name to ai/mp embedded nasal (again): __model%u
This commit is contained in:
parent
c478cdd35f
commit
de35bbe4ed
3 changed files with 8 additions and 4 deletions
|
@ -41,7 +41,6 @@
|
|||
|
||||
#include <Main/globals.hxx>
|
||||
#include <Scenery/scenery.hxx>
|
||||
#include <Scripting/NasalSys.hxx>
|
||||
|
||||
#include "AIBase.hxx"
|
||||
#include "AIModelData.hxx"
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <fstream>
|
||||
#include <sstream>
|
||||
|
||||
#include <plib/ul.h>
|
||||
|
||||
|
@ -1099,6 +1100,8 @@ bool FGNasalListener::changed(SGPropertyNode* node)
|
|||
// destructor the <unload> script. The latter happens when the model branch
|
||||
// is removed from the scene graph.
|
||||
|
||||
unsigned int FGNasalModelData::_module_id = 0;
|
||||
|
||||
void FGNasalModelData::modelLoaded(const string& path, SGPropertyNode *prop,
|
||||
osg::Node *)
|
||||
{
|
||||
|
@ -1113,9 +1116,10 @@ void FGNasalModelData::modelLoaded(const string& path, SGPropertyNode *prop,
|
|||
if(!load && !_unload)
|
||||
return;
|
||||
|
||||
_module = path;
|
||||
if(_props)
|
||||
_module += ':' + _props->getPath();
|
||||
std::stringstream m;
|
||||
m << "__model" << _module_id++;
|
||||
_module = m.str();
|
||||
|
||||
const char *s = load ? load->getStringValue() : "";
|
||||
|
||||
naRef arg[2];
|
||||
|
|
|
@ -167,6 +167,7 @@ public:
|
|||
void modelLoaded(const string& path, SGPropertyNode *prop, osg::Node *);
|
||||
|
||||
private:
|
||||
static unsigned int _module_id;
|
||||
string _module;
|
||||
SGPropertyNode_ptr _root;
|
||||
SGConstPropertyNode_ptr _unload;
|
||||
|
|
Loading…
Add table
Reference in a new issue