#include <simgear/misc/sg_path.hxx>
#include <simgear/structure/subsystem_mgr.hxx>
#include <simgear/nasal/nasal.h>
-#include <simgear/scene/model/model.hxx>
+#include <simgear/scene/model/modellib.hxx>
#include <simgear/xml/easyxml.hxx>
#include <map>
-SG_USING_STD(map);
+using std::map;
class FGNasalScript;
virtual bool handleCommand(const SGPropertyNode* arg);
void createModule(const char* moduleName, const char* fileName,
- const char* src, int len, const SGPropertyNode* arg=0);
+ const char* src, int len, const SGPropertyNode* cmdarg=0,
+ int argc=0, naRef*args=0);
void deleteModule(const char* moduleName);
naRef call(naRef code, int argc, naRef* args, naRef locals);
+ naRef propNodeGhost(SGPropertyNode* handle);
private:
friend class FGNasalScript;
void logError(naContext);
naRef parse(const char* filename, const char* buf, int len);
naRef genPropsModule();
- naRef propNodeGhost(SGPropertyNode* handle);
// This mechanism is here to allow naRefs to be passed to
// locations "outside" the interpreter. Normally, such a
};
-class FGNasalModelData : public SGModelData {
+class FGNasalModelData : public simgear::SGModelData {
public:
- FGNasalModelData(SGPropertyNode *props = 0) : _props(props), _unload(0) {}
+ FGNasalModelData(SGPropertyNode *root = 0) : _root(root), _unload(0) {}
~FGNasalModelData();
void modelLoaded(const string& path, SGPropertyNode *prop, osg::Node *);
private:
string _module;
- SGPropertyNode_ptr _props;
+ SGPropertyNode_ptr _root;
SGConstPropertyNode_ptr _unload;
};