#include <rubysceneimporter.h>
Inheritance diagram for RubySceneImporter:
Public Member Functions | |
RubySceneImporter () | |
virtual | ~RubySceneImporter () |
virtual bool | ImportScene (const std::string &fileName, boost::shared_ptr< oxygen::BaseNode > root, boost::shared_ptr< zeitgeist::ParameterList > parameter) |
import a scene from a file | |
virtual bool | ParseScene (const std::string &scene, boost::shared_ptr< oxygen::BaseNode > root, boost::shared_ptr< zeitgeist::ParameterList > parameter) |
import a scene from a string description | |
void | SetUnlinkOnCompleteScenes (bool unlink) |
constrols the behavior of the importer for complete scenes (instead of delta scenes). | |
Protected Types | |
typedef std::map< std::string, int > | TParameterMap |
mapping from parameter name to parameter index | |
typedef std::list< MethodInvocation > | TMethodInvocationList |
typedef std::list< ParamEnv > | TParameterStack |
Protected Member Functions | |
virtual bool | ParseScene (const char *scene, int size, boost::shared_ptr< oxygen::BaseNode > root, boost::shared_ptr< zeitgeist::ParameterList > parameter) |
bool | ReadHeader (sexp_t *sexp) |
bool | ReadGraph (sexp_t *sexp, boost::shared_ptr< oxygen::BaseNode > root) |
bool | ReadDeltaGraph (sexp_t *sexp, boost::shared_ptr< oxygen::BaseNode > root) |
boost::shared_ptr< zeitgeist::Object > | CreateInstance (const std::string &className) |
void | PushInvocation (const MethodInvocation &invoc) |
bool | Invoke (const MethodInvocation &invoc) |
bool | InvokeMethods () |
bool | ReadMethodCall (sexp_t *_sexp, boost::shared_ptr< oxygen::BaseNode > node) |
bool | ReplaceVariable (std::string ¶m) |
bool | EvalParameter (sexp_t *sexp, std::string &value) |
boost::shared_ptr< oxygen::BaseNode > | CreateNode (sexp_t *sexp) |
bool | ParseTemplate (sexp_t *sexp) |
bool | ParseDefine (sexp_t *sexp) |
void | PushParameter (boost::shared_ptr< zeitgeist::ParameterList > parameter) |
void | PopParameter () |
ParamEnv & | GetParamEnv () |
Protected Attributes | |
bool | mAutoUnlink |
true if a scene is automatically unlinked before a new scene is imported | |
bool | mDeltaScene |
true, if a delta scene is applied | |
float | mVersionMajor |
the major version of the scen graph file | |
float | mVersionMinor |
the minor version of the scen graph file | |
std::string | mFileName |
the last supplied fileName | |
TParameterStack | mParameterStack |
a stack of parameter environments | |
Classes | |
struct | MethodInvocation |
defines a method invocation More... | |
struct | ParamEnv |
a parameter environment More... |
Definition at line 29 of file rubysceneimporter.h.
|
Definition at line 43 of file rubysceneimporter.h. |
|
mapping from parameter name to parameter index
Definition at line 33 of file rubysceneimporter.h. |
|
Definition at line 57 of file rubysceneimporter.h. |
|
Definition at line 70 of file rubysceneimporter.cpp. References mAutoUnlink, mDeltaScene, mVersionMajor, and mVersionMinor. |
|
Definition at line 78 of file rubysceneimporter.cpp. |
|
Referenced by CreateNode(). |
|
Definition at line 293 of file rubysceneimporter.cpp. References CreateInstance(), zeitgeist::Object::GetLog(), and mFileName. Here is the call graph for this function: ![]() |
|
Referenced by ParseDefine(). |
|
Definition at line 184 of file rubysceneimporter.cpp. References zeitgeist::Object::GetLog(), and mParameterStack. Referenced by InvokeMethods(), ParseDefine(), ParseTemplate(), and PushInvocation(). Here is the call graph for this function: ![]() |
|
import a scene from a file
Implements oxygen::SceneImporter. |
|
Definition at line 489 of file rubysceneimporter.cpp. References zeitgeist::Object::GetLog(), RubySceneImporter::MethodInvocation::method, mFileName, RubySceneImporter::MethodInvocation::node, and RubySceneImporter::MethodInvocation::parameter. Referenced by InvokeMethods(), and PushInvocation(). Here is the call graph for this function: ![]() |
|
Definition at line 524 of file rubysceneimporter.cpp. References GetParamEnv(), RubySceneImporter::ParamEnv::invocationList, and Invoke(). Here is the call graph for this function: ![]() |
|
Definition at line 587 of file rubysceneimporter.cpp. References EvalParameter(), zeitgeist::Object::GetLog(), GetParamEnv(), mFileName, RubySceneImporter::ParamEnv::parameter, RubySceneImporter::ParamEnv::parameterMap, and ReplaceVariable(). Here is the call graph for this function: ![]() |
|
|
|
import a scene from a string description
Implements oxygen::SceneImporter. |
|
Definition at line 657 of file rubysceneimporter.cpp. References zeitgeist::Object::GetLog(), GetParamEnv(), mFileName, and RubySceneImporter::ParamEnv::parameterMap. Here is the call graph for this function: ![]() |
|
Definition at line 171 of file rubysceneimporter.cpp. References zeitgeist::Object::GetLog(), and mParameterStack. Here is the call graph for this function: ![]() |
|
Definition at line 462 of file rubysceneimporter.cpp. References zeitgeist::Object::GetCore(), zeitgeist::Object::GetLog(), GetParamEnv(), RubySceneImporter::ParamEnv::invocationList, Invoke(), and RubySceneImporter::MethodInvocation::method. Here is the call graph for this function: ![]() |
|
|
|
|
|
|
|
Definition at line 199 of file rubysceneimporter.cpp. References mDeltaScene, mVersionMajor, mVersionMinor, S_DELTASCENE, and S_SCENEGRAPH. |
|
|
|
Referenced by ParseDefine(). |
|
constrols the behavior of the importer for complete scenes (instead of delta scenes). if 'unlink' is true, the scene below the root node given in ImportScene will automatically be unlinked before the scene is imported Definition at line 82 of file rubysceneimporter.cpp. References mAutoUnlink. |
|
true if a scene is automatically unlinked before a new scene is imported
Definition at line 108 of file rubysceneimporter.h. Referenced by RubySceneImporter(), and SetUnlinkOnCompleteScenes(). |
|
true, if a delta scene is applied
Definition at line 111 of file rubysceneimporter.h. Referenced by ReadHeader(), and RubySceneImporter(). |
|
the last supplied fileName
Definition at line 120 of file rubysceneimporter.h. Referenced by CreateNode(), Invoke(), ParseDefine(), and ParseTemplate(). |
|
a stack of parameter environments
Definition at line 123 of file rubysceneimporter.h. Referenced by GetParamEnv(), and PopParameter(). |
|
the major version of the scen graph file
Definition at line 114 of file rubysceneimporter.h. Referenced by ReadHeader(), and RubySceneImporter(). |
|
the minor version of the scen graph file
Definition at line 117 of file rubysceneimporter.h. Referenced by ReadHeader(), and RubySceneImporter(). |