|
Rumba C++ SDK
|
A mutable scene node value. More...
#include <Scene.h>
Classes | |
| class | Traversal |
| A scene iterator. More... | |
Public Member Functions | |
| Scene (const StringView &name="", const gsl::span< SceneConst > &children=gsl::span< SceneConst >()) | |
| void | set_name (const char *) |
| Set the node name. More... | |
| void | set_matrix (const Imath::M44d &) |
| Set the node transform. More... | |
| void | set_geometry (const Shape &geometry) |
| Set the node geometry. More... | |
| void | remove_geometry () |
| Remove the node geometry. More... | |
| void | set_attribute (const StringView &attribute, const Value &value) |
| Set an attribute. More... | |
| void | merge (const SceneConst &other, const std::function< void(Scene &a, const SceneConst &b)> &func) |
| Scene | add_child (const std::string &path) |
| Create and return a child scene node. More... | |
| void | add_child (const SceneConst &child) |
| Adds the given child scene node as a child. More... | |
| void | prune_empty_nodes () |
| Traversal | write_children (bool children_only=false, bool shapes_only=false) |
| Get the scene traversal. More... | |
Public Member Functions inherited from maquina::SceneConst | |
| SceneConst () | |
| SceneConst (const Value &v) | |
| const std::string & | name () const |
| Returns the node name. More... | |
| const Imath::M44d & | matrix () const |
| Returns the node transform. More... | |
| bool | has_geometry () const |
| Returns true if this node has a geometry. More... | |
| bool | has_attribute (const StringView &attribute) const |
| Returns true if this node has the attribute defined on the node. More... | |
| const Value | attribute (const StringView &attribute) const |
| Return an attribute. More... | |
| Attributes | read_attributes () const |
| Return a read-only attribute iteration. More... | |
| const Shape | geometry () const |
| Get the node geometry. More... | |
| std::shared_ptr< SceneConst > | child (const std::string &path) const |
| Return a child scene node. More... | |
| Traversal | read_children (bool children_only=false, bool shapes_only=false) const |
| Get the scene traversal. More... | |
Public Member Functions inherited from maquina::Value | |
| Value () | |
| Value (Value &&other)=default | |
| Value (const Value &other)=default | |
| Value & | operator= (Value &&other)=default |
| Value & | operator= (const Value &other)=default |
| virtual | ~Value ()=default |
| Value | duplicate () const |
| Duplicate the value. More... | |
| bool | as_bool () const |
| Returns the value as a bool. More... | |
| int | as_int () const |
| Returns the value as an integer. More... | |
| float | as_float () const |
| Returns the value as a float. More... | |
| double | as_double () const |
| Returns the value as a double. More... | |
| const std::string & | as_string () const |
| Returns the value as a string. More... | |
| std::wstring | as_wstring () const |
| Returns the value as a wstring. More... | |
| Imath::V2f | as_V2f () const |
| Returns the value as a V2f. More... | |
| Imath::V3f | as_V3f () const |
| Returns the value as a V3f. More... | |
| Imath::V4f | as_V4f () const |
| Returns the value as a V4f. More... | |
| const Imath::V2d & | as_V2d () const |
| Returns the value as a V2d. More... | |
| const Imath::V3d & | as_V3d () const |
| Returns the value as a V3d. More... | |
| const Imath::V4d & | as_V4d () const |
| Returns the value as a V4d. More... | |
| const Imath::V2i & | as_V2i () const |
| Returns the value as a V2i. More... | |
| const Imath::V3i & | as_V3i () const |
| Returns the value as a V3i. More... | |
| const Imath::V4i & | as_V4i () const |
| Returns the value as a V4i. More... | |
| Imath::M44f | as_M44f () const |
| Returns the value as a M44f. More... | |
| const Imath::M44d & | as_M44d () const |
| Returns the value as a M44d. More... | |
| const Imath::Box3f & | as_Box3f () const |
| Returns the value as a Box3f. More... | |
| const Imath::Color4f & | as_Color4f () const |
| Returns the value as a Color4f. More... | |
| Imath::Quatf | as_Quatf () const |
| Returns the value as a Quatf. More... | |
| const Imath::Quatd & | as_Quatd () const |
| Returns the value as a Quatd. More... | |
| std::shared_ptr< const UserData > | as_user_data () const |
| Returns the value as a user data. More... | |
| StringView | type_name () const |
| Return the type name of the Value. More... | |
| virtual bool | has_node_delegate () const |
| Check if this value can produces a NodeDelegate. More... | |
| virtual std::shared_ptr< NodeDelegate > | node_delegate (const std::shared_ptr< NodeDelegate > &parent, const StringView &name) const |
| bool | operator== (const Value &o) const |
| Compare the two values. More... | |
| bool | operator!= (const Value &o) const |
| bool | is_instance (const char *value_type_name) const |
| Check if this type derives from another value type. More... | |
| operator bool () const | |
| Value (bool) | |
| Create a boolean value. More... | |
| Value (int) | |
| Create an integer value. More... | |
| Value (float) | |
| Create a float value. More... | |
| Value (double) | |
| Create a double value (stored in a float right now) More... | |
| Value (const char *string) | |
| Create a string value. More... | |
| Value (const wchar_t *string) | |
| Create a string value. More... | |
| Value (const std::string &string) | |
| Create a string value. More... | |
| Value (const std::wstring &string) | |
| Create a wide string value. More... | |
| Value (const Imath::V2f &) | |
| Create a Imath::V2f value. More... | |
| Value (const Imath::V3f &) | |
| Create a Imath::V3f value. More... | |
| Value (const Imath::V4f &) | |
| Create a Imath::V4f value. More... | |
| Value (const Imath::V2d &) | |
| Create a Imath::V2d value. More... | |
| Value (const Imath::V3d &) | |
| Create a Imath::V3d value. More... | |
| Value (const Imath::V4d &) | |
| Create a Imath::V4d value. More... | |
| Value (const Imath::V2i &) | |
| Create a Imath::V2i value. More... | |
| Value (const Imath::V3i &) | |
| Create a Imath::V3i value. More... | |
| Value (const Imath::V4i &) | |
| Create a Imath::V4i value. More... | |
| Value (const Imath::Color4f &) | |
| Create a Imath::Color4f value. More... | |
| Value (const Imath::M44f &) | |
| Create a Imath::M44f value. More... | |
| Value (const Imath::M44d &) | |
| Create a Imath::M44d value. More... | |
| Value (const Imath::Box3f &) | |
| Create a Imath::Box3f value. More... | |
| Value (const Imath::Quatf &) | |
| Create a Imath::Quatf value. More... | |
| Value (const Imath::Quatd &) | |
| Create a Imath::Quatd value. More... | |
| Value (const std::shared_ptr< const UserData > &user_data) | |
| Create a user data value. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from maquina::Value | |
| static bool | validate_type_name (const char *type_name) |
| Return true if the name is a valid type name. More... | |
| static Value | get_default_value (const char *type_name) |
| Return a default value for a given type. More... | |
Static Public Attributes inherited from maquina::SceneConst | |
| static const SceneConst | default_value |
| The default value. More... | |
Static Public Attributes inherited from maquina::Value | |
| static const Value | default_value |
| The default value. More... | |
A mutable scene node value.
| maquina::Scene::Scene | ( | const StringView & | name = "", |
| const gsl::span< SceneConst > & | children = gsl::span< SceneConst >() |
||
| ) |
| Scene maquina::Scene::add_child | ( | const std::string & | path | ) |
Create and return a child scene node.
The child is directly returned if it already exists.
| path | The child path from this node, like "child0/child1/child2" |
| void maquina::Scene::add_child | ( | const SceneConst & | child | ) |
Adds the given child scene node as a child.
| void maquina::Scene::merge | ( | const SceneConst & | other, |
| const std::function< void(Scene &a, const SceneConst &b)> & | func | ||
| ) |
| void maquina::Scene::prune_empty_nodes | ( | ) |
Empty means with no geometry, no attribute and an identity matrix
| void maquina::Scene::remove_geometry | ( | ) |
Remove the node geometry.
| void maquina::Scene::set_attribute | ( | const StringView & | attribute, |
| const Value & | value | ||
| ) |
Set an attribute.
If the attribute already exists, it is overriden.
| void maquina::Scene::set_geometry | ( | const Shape & | geometry | ) |
Set the node geometry.
| void maquina::Scene::set_matrix | ( | const Imath::M44d & | ) |
Set the node transform.
| void maquina::Scene::set_name | ( | const char * | ) |
Set the node name.
| Traversal maquina::Scene::write_children | ( | bool | children_only = false, |
| bool | shapes_only = false |
||
| ) |
Get the scene traversal.