Ocean
X3DBackgroundNode.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) Meta Platforms, Inc. and affiliates.
3  *
4  * This source code is licensed under the MIT license found in the
5  * LICENSE file in the root directory of this source tree.
6  */
7 
8 #ifndef META_OCEAN_SCENEDESCRIPTION_SDX_X3D_X3D_BACKGROUND_NODE_H
9 #define META_OCEAN_SCENEDESCRIPTION_SDX_X3D_X3D_BACKGROUND_NODE_H
10 
13 
14 namespace Ocean
15 {
16 
17 namespace SceneDescription
18 {
19 
20 namespace SDX
21 {
22 
23 namespace X3D
24 {
25 
26 /**
27  * This class implements an abstract x3d background node.
28  * @ingroup scenedescriptionsdxx3d
29  */
30 class OCEAN_SCENEDESCRIPTION_SDX_X3D_EXPORT X3DBackgroundNode : virtual public X3DBindableNode
31 {
32  protected:
33 
34  /**
35  * Creats a new x3d background node.
36  * @param environment Node environment
37  */
38  explicit X3DBackgroundNode(const SDXEnvironment* environment);
39 
40  /**
41  * Registers the fields of this node.
42  * @param specification Node specification receiving the field informations
43  */
44  void registerFields(NodeSpecification& specification);
45 
46  /**
47  * Event function to inform the node that it has been initialized and can apply all internal values to corresponding rendering objects.
48  * @see SDXNode::onInitialize().
49  */
50  void onInitialize(const Rendering::SceneRef& scene, const Timestamp timestamp) override;
51 
52  /**
53  * Event function to inform the node about a changed field.
54  * @see SDXNode::onFieldChanged().
55  */
56  void onFieldChanged(const std::string& fieldName) override;
57 
58  protected:
59 
60  /// GroundAngle field.
62 
63  /// GroundColor field.
65 
66  /// SkyAngle field.
68 
69  /// SkyColor field.
71 
72  /// Transparency field.
74 };
75 
76 }
77 
78 }
79 
80 }
81 
82 }
83 
84 #endif // META_OCEAN_SCENEDESCRIPTION_SDX_X3D_X3D_BACKGROUND_NODE_H
This class implements a node specification object.
Definition: scenedescription/Node.h:77
This class implements an abstract x3d background node.
Definition: X3DBackgroundNode.h:31
MultiFloat skyAngle_
SkyAngle field.
Definition: X3DBackgroundNode.h:67
SingleFloat transparency_
Transparency field.
Definition: X3DBackgroundNode.h:73
void registerFields(NodeSpecification &specification)
Registers the fields of this node.
MultiColor groundColor_
GroundColor field.
Definition: X3DBackgroundNode.h:64
MultiFloat groundAngle_
GroundAngle field.
Definition: X3DBackgroundNode.h:61
X3DBackgroundNode(const SDXEnvironment *environment)
Creats a new x3d background 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 c...
MultiColor skyColor_
SkyColor field.
Definition: X3DBackgroundNode.h:70
void onFieldChanged(const std::string &fieldName) override
Event function to inform the node about a changed field.
This class implements an abstract x3d bindable node.
Definition: X3DBindableNode.h:31
This class implements a node environment container.
Definition: SDXNode.h:62
This class implements a timestamp.
Definition: Timestamp.h:36
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15