Ocean
|
This class implements the base class for all sdl scene object providing access to all elements of a scene. More...
Public Member Functions | |
Rendering::SceneRef | apply (const Rendering::EngineRef &engine) |
Applies the entire scene to the rendering engine. More... | |
Public Member Functions inherited from Ocean::SceneDescription::Scene | |
Scene (const std::string &filename) | |
Creates a new scene object. More... | |
const std::string & | filename () const |
Returns the filename of this scene. More... | |
Public Member Functions inherited from Ocean::SceneDescription::Node | |
NodeId | id () const |
Returns the unique node id of this node. More... | |
const std::string & | name () const |
Returns the name of this node. More... | |
const std::string & | type () const |
Returns the type of this node. More... | |
const Field & | field (const std::string &fieldName) const |
Returns the field base of a specified (standard) field. More... | |
Field & | field (const std::string &fieldName) |
Returns the field base of a specified (standard) field. More... | |
virtual const Field & | anyField (const std::string &fieldName) const |
Returns the field base of a specified standard or dynamic field. More... | |
virtual Field & | anyField (const std::string &fieldName) |
Returns the field base of a specified standard or dynamic field. More... | |
template<typename T > | |
const T & | field (const std::string &fieldName) const |
Returns a specified (standard) field. More... | |
template<typename T > | |
T & | field (const std::string &fieldName) |
Returns a specified (standard) field. More... | |
template<typename T > | |
const T & | anyField (const std::string &fieldName) const |
Returns a specified standard or dynamic field. More... | |
template<typename T > | |
T & | anyField (const std::string &fieldName) |
Returns a specified standard or dynamic field. More... | |
FieldAccessType | fieldAccessType (const std::string &fieldName) const |
Returns the access type of a specified field. More... | |
virtual void | setName (const std::string &name) |
Sets the name of this node. More... | |
bool | hasField (const std::string &fieldName) const |
Returns whether this node has a special (standard) field. More... | |
virtual bool | hasAnyField (const std::string &fieldName) const |
Returns whether this node has a special standard or dynamic field. More... | |
virtual std::string | originalFieldName (const std::string &fieldName) const |
Tries to translate an alias field name to the original field name. More... | |
Field::Type | fieldType (const std::string &fieldName) const |
Returns the type of a special field. More... | |
unsigned int | fieldDimension (const std::string &fieldName) const |
Return the dimension of a special field. More... | |
virtual bool | isDynamic () const |
Returns whether this node can hold dynamic generated field. More... | |
Public Member Functions inherited from Ocean::SceneDescription::SDLNode | |
DescriptionType | descriptionType () const override |
Returns the scene description type of this node. More... | |
Protected Member Functions | |
SDLScene (const std::string &filename) | |
Creates a new scene object. More... | |
virtual Rendering::SceneRef | internalApply (const Rendering::EngineRef &engine)=0 |
Internal function to apply the entire scene to the rendering engine. More... | |
Rendering::ObjectRef | apply (const Rendering::EngineRef &engine, const SDLScene &scene, SDLNode &parentDescription, const Rendering::ObjectRef &parentRendering) override |
Applies this node to the rendering engine. More... | |
Protected Member Functions inherited from Ocean::SceneDescription::Node | |
Node () | |
Creates a new node. More... | |
Node (const Node &node)=delete | |
Disabled copy constructor. More... | |
virtual | ~Node () |
Destructs a node. More... | |
virtual size_t | objectAddress () const |
Returns the address of the most derived object. More... | |
void | registerField (NodeSpecification &specification, const std::string &fieldName, const Field &field, const FieldAccessType accessType=ACCESS_GET_SET) |
Registers a new field to a specified node type. More... | |
Node & | operator= (const Node &node)=delete |
Disabled copy operator. More... | |
Additional Inherited Members | |
Public Types inherited from Ocean::SceneDescription::Node | |
enum | FieldAccessType { ACCESS_NONE = 0 , ACCESS_GET = 1 , ACCESS_SET = 2 , ACCESS_GET_SET = ACCESS_GET | ACCESS_SET , ACCESS_EXPLICIT_NOTIFICATION = 4 } |
Definition of different field access types. More... | |
Protected Types inherited from Ocean::SceneDescription::Node | |
typedef std::map< std::string, Field * > | FieldMap |
Definition of a map mapping field names to fields. More... | |
Static Protected Member Functions inherited from Ocean::SceneDescription::Node | |
static Lock & | nodeIdCounterLock () |
Returns the lock for the node id counter. More... | |
Protected Attributes inherited from Ocean::SceneDescription::Scene | |
std::string | filename_ |
Filename of this scene. More... | |
Protected Attributes inherited from Ocean::SceneDescription::Node | |
NodeId | nodeId_ |
Unique node id. More... | |
std::string | name_ |
Node name. More... | |
NodeSpecification * | specification_ = nullptr |
Pointer to the node specification, guaranteed to exist as long as the node exist. More... | |
Static Protected Attributes inherited from Ocean::SceneDescription::Node | |
static NodeId | nodeIdCounter_ |
Unique node id counter. More... | |
This class implements the base class for all sdl scene object providing access to all elements of a scene.
A new scene object can be created by the scene description Manager object.
|
protected |
Creates a new scene object.
filename | Scene filename |
Rendering::SceneRef Ocean::SceneDescription::SDLScene::apply | ( | const Rendering::EngineRef & | engine | ) |
Applies the entire scene to the rendering engine.
engine | Rendering engine to use |
|
overrideprotectedvirtual |
Applies this node to the rendering engine.
Don't use this function for a scene, use Scene::apply(Rendering::Engine&) instead.
Implements Ocean::SceneDescription::SDLNode.
|
protectedpure virtual |
Internal function to apply the entire scene to the rendering engine.
engine | Rendering engine to use |
Implemented in Ocean::SceneDescription::SDL::OBJ::OBJScene, and Ocean::SceneDescription::SDL::Assimp::AssimpScene.