Ocean
Ocean SceneDescription Abstraction Library

The Ocean SceneDescription Library is the base library and organizer of all scene description libraries. More...

Collaboration diagram for Ocean SceneDescription Abstraction Library:

Modules

 Ocean SceneDescription SDL Assimp Library
 The Ocean SceneDescription SDL Assimp Library implements a scene description interface for assimp-supported files.
 
 Ocean SceneDescription SDL OBJ Library
 The Ocean SceneDescription SDL OBJ Library implements a scene description interface for obj files.
 
 Ocean SceneDescription SDX X3D Library
 The Ocean SceneDescription SDX X3D Library implements a scene description interface for X3D files.
 

Data Structures

class  Ocean::SceneDescription::DynamicNode
 This class is the base class for all nodes able to handle fields loaded during runtime. More...
 
class  Ocean::SceneDescription::Field
 This class is the base class for all scene description fields. More...
 
class  Ocean::SceneDescription::Field0D< T >
 This class implements all 0D fields (fields holding a single value only). More...
 
class  Ocean::SceneDescription::Field1D< T >
 This class implements all 1D fields (fields holding an array of single values). More...
 
class  Ocean::SceneDescription::TypeMapper< T >
 Class providing mapping between scalar field types and real types. More...
 
class  Ocean::SceneDescription::Library
 This class is the base class for all scene description libraries. More...
 
class  Ocean::SceneDescription::Manager
 This class implements the manager for all scene descriptions. More...
 
class  Ocean::SceneDescription::Node
 This class is the base class for all scene description nodes. More...
 
class  Ocean::SceneDescription::NodeRefManager
 This class implements a scene description node reference manager. More...
 
class  Ocean::SceneDescription::Scene
 This class implements the base class for all scene objects providing access to all elements of a scene. More...
 
class  Ocean::SceneDescription::SDLNode
 This class implements the base class for all scene description nodes. More...
 
class  Ocean::SceneDescription::SDLScene
 This class implements the base class for all sdl scene object providing access to all elements of a scene. More...
 
class  Ocean::SceneDescription::SDXDynamicNode
 This class implements the base class for all dynamic SDX scene description nodes. More...
 
class  Ocean::SceneDescription::SDXEventNode
 This class implements the base class for all nodes receiving event calls regularly. More...
 
class  Ocean::SceneDescription::SDXNode
 This class implements the base class for all SDX scene description nodes. More...
 
class  Ocean::SceneDescription::SDXScene
 This class implements the base class for all sdx scene object providing access to all elements of a scene. More...
 
class  Ocean::SceneDescription::SDXUpdateNode
 This class implements the base class for all nodes needing update calls regularly. More...
 

Typedefs

typedef SmartObjectRef< DynamicNode, NodeOcean::SceneDescription::DynamicNodeRef
 Definition of a smart object reference for X scene description nodes. More...
 
typedef Field0D< bool > Ocean::SceneDescription::SingleBool
 Definition of a single field with boolean value. More...
 
typedef Field0D< RGBAColorOcean::SceneDescription::SingleColor
 Definition of a single field with color value. More...
 
typedef Field0D< ScalarOcean::SceneDescription::SingleFloat
 Definition of a single field with float value. More...
 
typedef Field0D< int > Ocean::SceneDescription::SingleInt
 Definition of a single field with integer value. More...
 
typedef Field0D< NodeRefOcean::SceneDescription::SingleNode
 Definition of a single field with node value. More...
 
typedef Field0D< SquareMatrix3Ocean::SceneDescription::SingleMatrix3
 Definition of a single field with 3x3 matrix value. More...
 
typedef Field0D< SquareMatrix4Ocean::SceneDescription::SingleMatrix4
 Definition of a single field with 4x4 matrix value. More...
 
typedef Field0D< RotationOcean::SceneDescription::SingleRotation
 Definition of a single field with rotation value. More...
 
typedef Field0D< std::string > Ocean::SceneDescription::SingleString
 Definition of a single field with string value. More...
 
typedef Field0D< TimestampOcean::SceneDescription::SingleTime
 Definition of a single field with time value. More...
 
typedef Field0D< Vector2Ocean::SceneDescription::SingleVector2
 Definition of a single field with 2D vector value. More...
 
typedef Field0D< Vector3Ocean::SceneDescription::SingleVector3
 Definition of a single field with 3D vector value. More...
 
typedef Field0D< Vector4Ocean::SceneDescription::SingleVector4
 Definition of a single field with 4D vector value. More...
 
typedef Field1D< bool > Ocean::SceneDescription::MultiBool
 Definition of a multi field with boolean values. More...
 
typedef Field1D< RGBAColorOcean::SceneDescription::MultiColor
 Definition of a multi field with color values. More...
 
typedef Field1D< ScalarOcean::SceneDescription::MultiFloat
 Definition of a multi field with float values. More...
 
typedef Field1D< int > Ocean::SceneDescription::MultiInt
 Definition of a multi field with integer values. More...
 
typedef Field1D< NodeRefOcean::SceneDescription::MultiNode
 Definition of a multi field with node values. More...
 
typedef Field1D< SquareMatrix3Ocean::SceneDescription::MultiMatrix3
 Definition of a multi field with 3x3 matrix values. More...
 
typedef Field1D< SquareMatrix4Ocean::SceneDescription::MultiMatrix4
 Definition of a multi field with 4x4 matrix values. More...
 
typedef Field1D< RotationOcean::SceneDescription::MultiRotation
 Definition of a multi field with rotation values. More...
 
typedef Field1D< std::string > Ocean::SceneDescription::MultiString
 Definition of a multi field with string values. More...
 
typedef Field1D< TimestampOcean::SceneDescription::MultiTime
 Definition of a multi field with time values. More...
 
typedef Field1D< Vector2Ocean::SceneDescription::MultiVector2
 Definition of a multi field with 2D vector values. More...
 
typedef Field1D< Vector3Ocean::SceneDescription::MultiVector3
 Definition of a multi field with 3D vector values. More...
 
typedef Field1D< Vector4Ocean::SceneDescription::MultiVector4
 Definition of a multi field with 4D vector values. More...
 
typedef Ocean::ObjectRef< NodeOcean::SceneDescription::NodeRef
 Definition of a scene description node reference with an internal reference counter. More...
 
typedef std::vector< NodeRefOcean::SceneDescription::NodeRefs
 Definition of a vector holding scene description node references. More...
 
typedef SmartObjectRef< Scene, NodeOcean::SceneDescription::SceneRef
 Definition of a smart object reference for scene desciption scenes. More...
 
typedef size_t Ocean::SceneDescription::NodeId
 Definition of a object id. More...
 
typedef SmartObjectRef< SDLNode, NodeOcean::SceneDescription::SDLNodeRef
 Definition of a smart object reference for loader scene description nodes. More...
 
typedef SmartObjectRef< SDLScene, NodeOcean::SceneDescription::SDLSceneRef
 Definition of a smart object reference for scene desciption loader scenes. More...
 
typedef SmartObjectRef< X3DNode, NodeOcean::SceneDescription::SDX::X3D::X3DNodeRef
 Definition of a smart object reference for abstract X3D nodes. More...
 
typedef SmartObjectRef< SDXDynamicNode, NodeOcean::SceneDescription::SDXDynamicNodeRef
 Definition of a smart object reference for SDX dynamic scene description nodes. More...
 
typedef SmartObjectRef< SDXNode, NodeOcean::SceneDescription::SDXNodeRef
 Definition of a smart object reference for SDX scene description nodes. More...
 
typedef std::set< SDXNodeRefOcean::SceneDescription::SDXNodeSet
 Definition of a set holding SDX node references. More...
 
typedef SmartObjectRef< SDXScene, NodeOcean::SceneDescription::SDXSceneRef
 Definition of a smart object reference for scene desciption X scenes. More...
 

Enumerations

enum  Ocean::SceneDescription::DescriptionType : uint32_t { Ocean::SceneDescription::TYPE_TRANSIENT = 1u , Ocean::SceneDescription::TYPE_PERMANENT = 2u }
 Definition of different scene description types. More...
 
enum  Ocean::SceneDescription::ButtonType { Ocean::SceneDescription::BUTTON_NONE , Ocean::SceneDescription::BUTTON_LEFT , Ocean::SceneDescription::BUTTON_MIDDLE , Ocean::SceneDescription::BUTTON_RIGHT }
 Definition of different button types. More...
 
enum  Ocean::SceneDescription::ButtonEvent { Ocean::SceneDescription::EVENT_PRESS , Ocean::SceneDescription::EVENT_HOLD , Ocean::SceneDescription::EVENT_RELEASE }
 Definition of different device events. More...
 

Variables

constexpr NodeId Ocean::SceneDescription::invalidNodeId = NodeId(-1)
 Definition of an invalid object id. More...
 

Detailed Description

The Ocean SceneDescription Library is the base library and organizer of all scene description libraries.


Several different scene description libraries can be registered and managed at the same time.
Each library may support a different types of scene description files / specifications.
The Manager object manages all registered libraries and hides the internal complexity.
The library is platform independent.

See also
Manager, Scene

Typedef Documentation

◆ DynamicNodeRef

Definition of a smart object reference for X scene description nodes.

See also
DynamicNode, Node.

◆ MultiBool

Definition of a multi field with boolean values.

◆ MultiColor

Definition of a multi field with color values.

◆ MultiFloat

Definition of a multi field with float values.

◆ MultiInt

Definition of a multi field with integer values.

◆ MultiMatrix3

Definition of a multi field with 3x3 matrix values.

◆ MultiMatrix4

Definition of a multi field with 4x4 matrix values.

◆ MultiNode

Definition of a multi field with node values.

◆ MultiRotation

Definition of a multi field with rotation values.

◆ MultiString

Definition of a multi field with string values.

◆ MultiTime

Definition of a multi field with time values.

◆ MultiVector2

Definition of a multi field with 2D vector values.

◆ MultiVector3

Definition of a multi field with 3D vector values.

◆ MultiVector4

Definition of a multi field with 4D vector values.

◆ NodeId

Definition of a object id.

◆ NodeRef

Definition of a scene description node reference with an internal reference counter.

See also
Node.

◆ NodeRefs

Definition of a vector holding scene description node references.

◆ SceneRef

Definition of a smart object reference for scene desciption scenes.

See also
Scene, Node.

◆ SDLNodeRef

Definition of a smart object reference for loader scene description nodes.

See also
SDLNode, Node.

◆ SDLSceneRef

Definition of a smart object reference for scene desciption loader scenes.

See also
SDLScene, Node.

◆ SDXDynamicNodeRef

Definition of a smart object reference for SDX dynamic scene description nodes.

See also
SDXDynamicNode, Node.

◆ SDXNodeRef

Definition of a smart object reference for SDX scene description nodes.

See also
SDXNode, Node.

◆ SDXNodeSet

Definition of a set holding SDX node references.

◆ SDXSceneRef

Definition of a smart object reference for scene desciption X scenes.

See also
SDXScene, Node.

◆ SingleBool

Definition of a single field with boolean value.

◆ SingleColor

Definition of a single field with color value.

◆ SingleFloat

Definition of a single field with float value.

◆ SingleInt

Definition of a single field with integer value.

◆ SingleMatrix3

Definition of a single field with 3x3 matrix value.

◆ SingleMatrix4

Definition of a single field with 4x4 matrix value.

◆ SingleNode

Definition of a single field with node value.

◆ SingleRotation

Definition of a single field with rotation value.

◆ SingleString

Definition of a single field with string value.

◆ SingleTime

Definition of a single field with time value.

◆ SingleVector2

Definition of a single field with 2D vector value.

◆ SingleVector3

Definition of a single field with 3D vector value.

◆ SingleVector4

Definition of a single field with 4D vector value.

◆ X3DNodeRef

Definition of a smart object reference for abstract X3D nodes.

See also
X3DNode, Node.

Enumeration Type Documentation

◆ ButtonEvent

Definition of different device events.

Enumerator
EVENT_PRESS 

Press event.

EVENT_HOLD 

Hold event.

EVENT_RELEASE 

Release event.

◆ ButtonType

Definition of different button types.

Enumerator
BUTTON_NONE 
BUTTON_LEFT 

Left button.

BUTTON_MIDDLE 

Middle button.

BUTTON_RIGHT 

Right button.

◆ DescriptionType

Definition of different scene description types.

Enumerator
TYPE_TRANSIENT 

A scene description holding a transient scene hierarchy only.

TYPE_PERMANENT 

A scene description holding a permanent scene hierarchy allowing permanent access.

Variable Documentation

◆ invalidNodeId

constexpr NodeId Ocean::SceneDescription::invalidNodeId = NodeId(-1)
constexpr

Definition of an invalid object id.