Ocean
BitmapFramebuffer.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_BITMAP_FRAMEBUFFER_H
9 #define META_OCEAN_RENDERING_BITMAP_FRAMEBUFFER_H
10 
13 
14 namespace Ocean
15 {
16 
17 namespace Rendering
18 {
19 
20 // Forward declaration
21 class BitmapFramebuffer;
22 
23 /**
24  * Definition of a smart object reference holding a bitmap framebuffer node.
25  * @see SmartObjectRef, BitmapFramebuffer.
26  * @ingroup rendering
27  */
29 
30 /**
31  * This class is the base class for all bitmap framebuffers.
32  * The framebuffer must be initialized before usage.
33  * @see initialize().
34  * @ingroup rendering
35  */
36 class OCEAN_RENDERING_EXPORT BitmapFramebuffer : virtual public Framebuffer
37 {
38  public:
39 
40  /**
41  * Initializes the framebuffer.
42  * @see Framebuffer::initialize().
43  */
44  bool initialize(const FramebufferRef& shareFramebuffer = FramebufferRef()) override;
45 
46  /**
47  * Returns the type of this framebuffer.
48  * @see Framebuffer::framebufferType().
49  */
50  FramebufferType framebufferType() const override;
51 
52  /**
53  * Returns the type of this object.
54  * @see Object::type().
55  */
56  ObjectType type() const override;
57 
58  protected:
59 
60  /**
61  * Creates a new bitmap framebuffer.
62  */
64 
65  /**
66  * Destructs a bitmap framebuffer.
67  */
68  ~BitmapFramebuffer() override;
69 };
70 
71 }
72 
73 }
74 
75 #endif // META_OCEAN_RENDERING__H
This class is the base class for all bitmap framebuffers.
Definition: BitmapFramebuffer.h:37
FramebufferType framebufferType() const override
Returns the type of this framebuffer.
~BitmapFramebuffer() override
Destructs a bitmap framebuffer.
BitmapFramebuffer()
Creates a new bitmap framebuffer.
bool initialize(const FramebufferRef &shareFramebuffer=FramebufferRef()) override
Initializes the framebuffer.
ObjectType type() const override
Returns the type of this object.
This class is the base class for all rendering framebuffers.
Definition: rendering/Framebuffer.h:48
FramebufferType
Definition of different framebuffer types.
Definition: rendering/Framebuffer.h:55
ObjectType
Definition of different object type.
Definition: Object.h:63
This class implements a smart rendering object reference.
Definition: rendering/ObjectRef.h:34
SmartObjectRef< Framebuffer > FramebufferRef
Definition of a smart object reference holding a framebuffer.
Definition: rendering/Framebuffer.h:31
SmartObjectRef< BitmapFramebuffer > BitmapFramebufferRef
Definition of a smart object reference holding a bitmap framebuffer node.
Definition: BitmapFramebuffer.h:21
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15