Ocean
Viewpoint.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_VIEWPOINT_H
9 #define META_OCEAN_SCENEDESCRIPTION_SDX_X3D_VIEWPOINT_H
10 
13 
15 
16 namespace Ocean
17 {
18 
19 namespace SceneDescription
20 {
21 
22 namespace SDX
23 {
24 
25 namespace X3D
26 {
27 
28 /**
29  * This class implements a x3d viewpoint node.
30  * @ingroup scenedescriptionsdxx3d
31  */
32 class OCEAN_SCENEDESCRIPTION_SDX_X3D_EXPORT Viewpoint :
33  virtual public X3DViewpointNode,
34  virtual public SDXUpdateNode
35 {
36  public:
37 
38  /**
39  * Creates a new x3d viewpoint node.
40  * @param environment Node environment
41  */
42  explicit Viewpoint(const SDXEnvironment* environment);
43 
44  protected:
45 
46  /**
47  * Specifies the node type and the fields of this node.
48  * @return Unique node specification of this node
49  */
51 
52  /**
53  * Returns the address of the most derived object.
54  * @see Node::objectAddress().
55  */
56  size_t objectAddress() const override;
57 
58  /**
59  * Pre update event function.
60  * @see SDXUpdateNode::onPreUpdate().
61  */
62  Timestamp onPreUpdate(const Rendering::ViewRef& view, const Timestamp timestamp) override;
63 
64  protected:
65 
66  /// FieldOfView field.
68 };
69 
70 }
71 
72 }
73 
74 }
75 
76 }
77 
78 #endif // META_OCEAN_SCENEDESCRIPTION_SDX_X3D_VIEWPOINT_H
This class implements a node specification object.
Definition: scenedescription/Node.h:77
This class implements a x3d viewpoint node.
Definition: Viewpoint.h:35
Timestamp onPreUpdate(const Rendering::ViewRef &view, const Timestamp timestamp) override
Pre update event function.
size_t objectAddress() const override
Returns the address of the most derived object.
SingleFloat fieldOfView_
FieldOfView field.
Definition: Viewpoint.h:67
NodeSpecification specifyNode()
Specifies the node type and the fields of this node.
Viewpoint(const SDXEnvironment *environment)
Creates a new x3d viewpoint node.
This class implements an abstract x3d viewpoint node.
Definition: X3DViewpointNode.h:31
This class implements a node environment container.
Definition: SDXNode.h:62
This class implements the base class for all nodes needing update calls regularly.
Definition: SDXUpdateNode.h:25
This class implements a timestamp.
Definition: Timestamp.h:36
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15