Ocean
ImageTexture.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_IMAGE_TEXTURE_H
9 #define META_OCEAN_SCENEDESCRIPTION_SDX_X3D_IMAGE_TEXTURE_H
10 
14 
15 namespace Ocean
16 {
17 
18 namespace SceneDescription
19 {
20 
21 namespace SDX
22 {
23 
24 namespace X3D
25 {
26 
27 /**
28  * This class implements a x3d image texture node.
29  * @ingroup scenedescriptionsdxx3d
30  */
31 class OCEAN_SCENEDESCRIPTION_SDX_X3D_EXPORT ImageTexture :
32  virtual public X3DTexture2DNode,
33  virtual public X3DUrlObject
34 {
35  public:
36 
37  /**
38  * Creates a new x3d image texture node.
39  * @param environment Node environment
40  */
41  explicit ImageTexture(const SDXEnvironment* environment);
42 
43  protected:
44 
45  /**
46  * Specifies the node type and the fields of this node.
47  * @return Unique node specification of this node
48  */
50 
51  /**
52  * Event function to inform the node that it has been initialized and can apply all internal values to corresponding rendering objects.
53  * @see SDXNode::onInitialize().
54  */
55  void onInitialize(const Rendering::SceneRef& scene, const Timestamp timestamp) override;
56 
57  /**
58  * Event function to inform the node about a changed field.
59  * @see SDXNode::onFieldChanged().
60  */
61  void onFieldChanged(const std::string& fieldName) override;
62 
63  /**
64  * Returns the address of the most derived object.
65  * @see Node::objectAddress().
66  */
67  size_t objectAddress() const override;
68 };
69 
70 }
71 
72 }
73 
74 }
75 
76 }
77 
78 #endif // META_OCEAN_SCENEDESCRIPTION_SDX_X3D_IMAGE_TEXTURE_H
This class implements a node specification object.
Definition: scenedescription/Node.h:77
This class implements a x3d image texture node.
Definition: ImageTexture.h:34
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 c...
ImageTexture(const SDXEnvironment *environment)
Creates a new x3d image texture node.
size_t objectAddress() const override
Returns the address of the most derived object.
void onFieldChanged(const std::string &fieldName) override
Event function to inform the node about a changed field.
This class implements an abstract x3d texture 2D node.
Definition: X3DTexture2DNode.h:38
This class implements an abstract x3d url object.
Definition: X3DUrlObject.h:35
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