Ocean
Loading...
Searching...
No Matches
rendering/Shape.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_RENDERING_SHAPE_H
9#define META_OCEAN_RENDERING_SHAPE_H
10
13
14namespace Ocean
15{
16
17namespace Rendering
18{
19
20// Forward declaration
21class Shape;
22
23/**
24 * Definition of a smart object reference holding a shape.
25 * @see SmartObjectRef, Shape.
26 * @ingroup rendering
27 */
29
30/**
31 * This class is the base class for all geometries.
32 * @ingroup rendering
33 */
34class OCEAN_RENDERING_EXPORT Shape : virtual public Renderable
35{
36 public:
37
38 /**
39 * Returns the type of this object.
40 * @see Object::type().
41 */
42 ObjectType type() const override;
43
44 protected:
45
46 /**
47 * Creates a new shape node.
48 */
50
51 /**
52 * Destructs a shape node.
53 */
54 ~Shape() override;
55};
56
57}
58
59}
60
61#endif // META_OCEAN_RENDERING_GEOMETRY_H
ObjectType
Definition of different object type.
Definition Object.h:63
This class is the base class for all renderable objects.
Definition Renderable.h:38
This class is the base class for all geometries.
Definition rendering/Shape.h:35
Shape()
Creates a new shape node.
ObjectType type() const override
Returns the type of this object.
~Shape() override
Destructs a shape node.
This class implements a smart rendering object reference.
Definition rendering/ObjectRef.h:34
SmartObjectRef< Shape > ShapeRef
Definition of a smart object reference holding a shape.
Definition rendering/Shape.h:28
The namespace covering the entire Ocean framework.
Definition Accessor.h:15