Ocean
Loading...
Searching...
No Matches
Ocean::SceneDescription::SDX::X3D::Billboard Class Reference

This class implements a x3d billboard node. More...

#include <Billboard.h>

Inheritance diagram for Ocean::SceneDescription::SDX::X3D::Billboard:

Public Member Functions

 Billboard (const SDXEnvironment *environment)
 Creates a new x3d billboard node.
 
- Public Member Functions inherited from Ocean::SceneDescription::SDX::X3D::X3DNode
bool setField (const std::string &fieldName, const Field &field) override
 Sets or changes a specified field of this node.
 
bool addConnection (const std::string &outputField, const NodeId inputNode, const std::string &inputField)
 Adds a field connection for a specified field starting at this node.
 
std::string originalFieldName (const std::string &fieldName) const override
 Tries to translate an alias field name to the original field name.
 
- Public Member Functions inherited from Ocean::SceneDescription::SDXNode
DescriptionType descriptionType () const override
 Returns the scene description type of this node.
 
const Rendering::EngineRefengine () const
 Returns the rendering engine used by this node.
 
const std::string & library () const
 Returns the name of the scene description library defining this node.
 
const std::string & filename () const
 Returns the name of the file defining this node.
 
SceneId sceneId () const
 Returns the unique id of the scene defining this node originally.
 
virtual const Rendering::ObjectRefrenderingObject () const
 Returns the associated rendering object.
 
void setName (const std::string &name) override
 Sets the name of this node.
 
virtual bool setAnyField (const std::string &fieldName, const Field &field)
 Sets or changes a specified standard or dynamic field of this node.
 
NodeRefs parentNodes () const
 Returns all parent nodes of this node.
 
SDXNodeSet ancestorNodes () const
 Returns all ancestor nodes of this node.
 
virtual void initialize (const Rendering::SceneRef &scene, const Timestamp timestamp, const bool reinitialize=false)
 Event function to inform the node that it has been initialized and can apply all internal values to corresponding rendering objects.
 
- Public Member Functions inherited from Ocean::SceneDescription::Node
NodeId id () const
 Returns the unique node id of this node.
 
const std::string & name () const
 Returns the name of this node.
 
const std::string & type () const
 Returns the type of this node.
 
const Fieldfield (const std::string &fieldName) const
 Returns the field base of a specified (standard) field.
 
Fieldfield (const std::string &fieldName)
 Returns the field base of a specified (standard) field.
 
virtual const FieldanyField (const std::string &fieldName) const
 Returns the field base of a specified standard or dynamic field.
 
virtual FieldanyField (const std::string &fieldName)
 Returns the field base of a specified standard or dynamic field.
 
template<typename T >
const T & field (const std::string &fieldName) const
 Returns a specified (standard) field.
 
template<typename T >
T & field (const std::string &fieldName)
 Returns a specified (standard) field.
 
template<typename T >
const T & anyField (const std::string &fieldName) const
 Returns a specified standard or dynamic field.
 
template<typename T >
T & anyField (const std::string &fieldName)
 Returns a specified standard or dynamic field.
 
FieldAccessType fieldAccessType (const std::string &fieldName) const
 Returns the access type of a specified field.
 
bool hasField (const std::string &fieldName) const
 Returns whether this node has a special (standard) field.
 
virtual bool hasAnyField (const std::string &fieldName) const
 Returns whether this node has a special standard or dynamic field.
 
Field::Type fieldType (const std::string &fieldName) const
 Returns the type of a special field.
 
unsigned int fieldDimension (const std::string &fieldName) const
 Return the dimension of a special field.
 
virtual bool isDynamic () const
 Returns whether this node can hold dynamic generated field.
 

Protected Member Functions

NodeSpecification specifyNode ()
 Specifies the node type and the fields of this node.
 
void onInitialize (const Rendering::SceneRef &scene, const Timestamp timestamp) override
 Event function to inform the node that it has been initialized and can apply all internal values to corresponding rendering objects.
 
void onFieldChanged (const std::string &fieldName) override
 Event function to inform the node about a changed field.
 
size_t objectAddress () const override
 Returns the address of the most derived object.
 
- Protected Member Functions inherited from Ocean::SceneDescription::SDX::X3D::X3DGroupingNode
 X3DGroupingNode (const SDXEnvironment *environment)
 Creates an abstract x3d grouping node.
 
 ~X3DGroupingNode () override
 Destructs a grouping node.
 
void registerFields (NodeSpecification &specification)
 Registers the fields of this node.
 
void onInitialize (const Rendering::SceneRef &scene, const Timestamp timestamp) override
 Event function to inform the node that it has been initialized and can apply all internal values to corresponding rendering objects.
 
bool onFieldChanging (const std::string &fieldName, const Field &field) override
 Explicit changing event function for node fields.
 
- Protected Member Functions inherited from Ocean::SceneDescription::SDX::X3D::X3DChildNode
 X3DChildNode (const SDXEnvironment *environment)
 Creates a new x3d child node.
 
- Protected Member Functions inherited from Ocean::SceneDescription::SDX::X3D::X3DNode
 X3DNode (const SDXEnvironment *environment)
 Creates a new abstract x3d node.
 
void registerFields (NodeSpecification &specification)
 Registers the fields of this node.
 
void forwardThatFieldHasBeenChanged (const std::string &fieldName, const Field &field)
 Informs connected nodes that a field of this node has been changed.
 
- Protected Member Functions inherited from Ocean::SceneDescription::SDXNode
 SDXNode (const SDXEnvironment *environment)
 Creates a new node object.
 
 ~SDXNode () override
 Destructs a node object.
 
void registerParentNode (const NodeId parentId)
 Registers a new parent node for this (child) node.
 
void unregisterParentNode (const NodeId parentId)
 Unregisters a parent node for this (child) node.
 
void registerThisNodeAsParent (const SDXNodeRef &child)
 Registers this node at a child as parent node.
 
void unregisterThisNodeAsParent (const SDXNodeRef &child)
 Unregisters this node from a child as parent.
 
- Protected Member Functions inherited from Ocean::SceneDescription::Node
 Node ()
 Creates a new node.
 
 Node (const Node &node)=delete
 Disabled copy constructor.
 
virtual ~Node ()
 Destructs a node.
 
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.
 
Nodeoperator= (const Node &node)=delete
 Disabled copy operator.
 
- Protected Member Functions inherited from Ocean::SceneDescription::SDX::X3D::X3DBoundedObject
 X3DBoundedObject (const SDXEnvironment *environment)
 Creates a new x3d bounded object.
 
void registerFields (NodeSpecification &specification)
 Registers the fields of this node.
 

Protected Attributes

SingleVector3 axisOfRotation_
 AxisOfRotation field.
 
- Protected Attributes inherited from Ocean::SceneDescription::SDX::X3D::X3DGroupingNode
MultiNode addChildren_
 AddChild field.
 
MultiNode removeChildren_
 RemoveChildren field.
 
MultiNode children_
 Children field.
 
- Protected Attributes inherited from Ocean::SceneDescription::SDX::X3D::X3DNode
SingleNode metadata_
 Metadata field.
 
FieldConnectionMap fieldConnections_
 Map holding all field connections.
 
- Protected Attributes inherited from Ocean::SceneDescription::SDXNode
const SDXEnvironmentenvironment_ = nullptr
 Object specifying the environment of this node.
 
NodeIdMap parents_
 Map holding all parent nodes.
 
Rendering::ObjectRef renderingObject_
 Corresponding rendering object.
 
bool initialized_ = false
 State determining whether the node has been initialized already.
 
Lock lock_
 Node lock.
 
- Protected Attributes inherited from Ocean::SceneDescription::Node
NodeId nodeId_
 Unique node id.
 
std::string name_
 Node name.
 
NodeSpecificationspecification_ = nullptr
 Pointer to the node specification, guaranteed to exist as long as the node exist.
 
- Protected Attributes inherited from Ocean::SceneDescription::SDX::X3D::X3DBoundedObject
SingleVector3 bboxCenter_
 BBoxCenter node.
 
SingleVector3 bboxSize_
 BBoxSize node.
 

Additional Inherited Members

- Public Types inherited from Ocean::SceneDescription::SDXNode
typedef std::unordered_map< NodeId, unsigned int > NodeIdMap
 Definition of a map mapping node ids to reference counters.
 
- 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::SDX::X3D::X3DNode
typedef std::pair< NodeId, std::string > ReceiverPair
 Definition of a node and field pair.
 
typedef std::multimap< std::string, ReceiverPairFieldConnectionMap
 Definition of a map mapping field names to field receiver pairs.
 
- Protected Types inherited from Ocean::SceneDescription::Node
typedef std::map< std::string, Field * > FieldMap
 Definition of a map mapping field names to fields.
 
- Static Protected Member Functions inherited from Ocean::SceneDescription::Node
static LocknodeIdCounterLock ()
 Returns the lock for the node id counter.
 
- Static Protected Attributes inherited from Ocean::SceneDescription::Node
static NodeId nodeIdCounter_
 Unique node id counter.
 

Detailed Description

This class implements a x3d billboard node.

Constructor & Destructor Documentation

◆ Billboard()

Ocean::SceneDescription::SDX::X3D::Billboard::Billboard ( const SDXEnvironment environment)
explicit

Creates a new x3d billboard node.

Parameters
environmentNode environment

Member Function Documentation

◆ objectAddress()

size_t Ocean::SceneDescription::SDX::X3D::Billboard::objectAddress ( ) const
overrideprotectedvirtual

Returns the address of the most derived object.

See also
Node::objectAddress().

Reimplemented from Ocean::SceneDescription::Node.

◆ onFieldChanged()

void Ocean::SceneDescription::SDX::X3D::Billboard::onFieldChanged ( const std::string &  fieldName)
overrideprotectedvirtual

Event function to inform the node about a changed field.

See also
SDXNode::onFieldChanged().

Reimplemented from Ocean::SceneDescription::SDXNode.

◆ onInitialize()

void Ocean::SceneDescription::SDX::X3D::Billboard::onInitialize ( const Rendering::SceneRef scene,
const Timestamp  timestamp 
)
overrideprotectedvirtual

Event function to inform the node that it has been initialized and can apply all internal values to corresponding rendering objects.

See also
SDXNode::onInitialize().

Reimplemented from Ocean::SceneDescription::SDXNode.

◆ specifyNode()

NodeSpecification Ocean::SceneDescription::SDX::X3D::Billboard::specifyNode ( )
protected

Specifies the node type and the fields of this node.

Returns
Unique node specification of this node

Field Documentation

◆ axisOfRotation_

SingleVector3 Ocean::SceneDescription::SDX::X3D::Billboard::axisOfRotation_
protected

AxisOfRotation field.


The documentation for this class was generated from the following file: