Ocean
Loading...
Searching...
No Matches
GLESFactory.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_GLES_FACTORY_H
9#define META_OCEAN_RENDERING_GLES_FACTORY_H
10
12
14
15namespace Ocean
16{
17
18namespace Rendering
19{
20
21namespace GLESceneGraph
22{
23
24/**
25 * This class implements a class factory for all GLESceneGraph objects.<br>
26 * Only the factory is able to create any GLESceneGraph object.
27 * @ingroup renderinggles
28 */
29class OCEAN_RENDERING_GLES_EXPORT GLESFactory : public Factory
30{
31 public:
32
33 /**
34 * Creates a new absolute transform.
35 * @see Factory::createAbsoluteTransform().
36 */
38
39 /**
40 * Creates a new attribute set object.
41 * @see Factory::createAttributeSet().
42 */
43 ObjectRef createAttributeSet() const override;
44
45 /**
46 * Creates a new billboard object.
47 * @see Factory::createBillboard().
48 */
49 NodeRef createBillboard() const override;
50
51 /**
52 * Creates a new blend attribute object.
53 * @return New blend attribute
54 */
56
57 /**
58 * Creates a new box object.
59 * @see Factory::createBox().
60 */
61 ObjectRef createBox() const override;
62
63 /**
64 * Creates a new cone object.
65 * @see Factory::createCone().
66 */
67 ObjectRef createCone() const override;
68
69 /**
70 * Creates a new cylinder object.
71 * @see Factory::createCylinder().
72 */
73 ObjectRef createCylinder() const override;
74
75 /**
76 * Creates a new depth attribute object.
77 * @see Factory::createDepthAttribute().
78 */
80
81 /**
82 * Creates a new directional light object.
83 * @see Factory::createDirectionalLight().
84 */
86
87 /**
88 * Creates a new frame texture object.
89 * @see Factory::createFrameTexture2D().
90 */
92
93 /**
94 * Creates a new geometry object.
95 * @see Factory::createGeometry().
96 */
97 NodeRef createGeometry() const override;
98
99 /**
100 * Creates a new group object.
101 * @see Factory::createGroup().
102 */
103 NodeRef createGroup() const override;
104
105 /**
106 * Creates a new lines object.
107 * @see Factory::createLines().
108 */
109 ObjectRef createLines() const override;
110
111 /**
112 * Creates a new line strips object.
113 * @see Factory::createLineStrips().
114 */
115 ObjectRef createLineStrips() const override;
116
117 /**
118 * Creates a new LOD object.
119 * @see Factory::createLOD().
120 */
121 NodeRef createLOD() const override;
122
123 /**
124 * Creates a new material object.
125 * @see Factory::createMaterial().
126 */
127 ObjectRef createMaterial() const override;
128
129 /**
130 * Creates a new texture object.
131 * @see Factory::createMediaTexture2D().
132 */
134
135 /**
136 * Creates a new perspective view object.
137 * @see Factory::createPerspectiveView().
138 */
140
141 /**
142 * Creates a new phantom attribute.
143 * @see Factory::createPhantomAttribute().
144 */
146
147 /**
148 * Creates a new point light object.
149 * @see Factory::createPointLight().
150 */
151 ObjectRef createPointLight() const override;
152
153 /**
154 * Creates a new points object.
155 * @see Factory::createPoints().
156 */
157 ObjectRef createPoints() const override;
158
159 /**
160 * Creates a new primitive attribute object.
161 * @see Factory::createPrimitiveAttribute().
162 */
164
165 /**
166 * Creates a new scene object.
167 * @see Factory::createScene().
168 */
169 NodeRef createScene() const override;
170
171 /**
172 * Creates a new shader program object.
173 * @see Factory::createShaderProgram().
174 */
176
177 /**
178 * Creates a new sphere object.
179 * @see Factory::createSphare().
180 */
181 ObjectRef createSphere() const override;
182
183 /**
184 * Creates a new stereo attribute.
185 * @see Factory::createStereoAttribute().
186 */
188
189 /**
190 * Creates a new switch object.
191 * @see Factory::createSwitch().
192 */
193 NodeRef createSwitch() const override;
194
195 /**
196 * Creates a new spot light object.
197 * @see Factroy::createSpotLight().
198 */
199 ObjectRef createSpotLight() const override;
200
201 /**
202 * Creates a new stereo view object.
203 * @see Factroy::createStereoView().
204 */
205 ObjectRef createStereoView() const override;
206
207 /**
208 * Creates a new text framebuffer object.
209 * @see Factory::createText().
210 */
211 ObjectRef createText() const override;
212
213 /**
214 * Creates a new texture framebuffer object.
215 * @see Factory::createTextureFramebuffer().
216 */
218
219 /**
220 * Creates a new texture attribute object.
221 * @see Factory::createTextures().
222 */
223 ObjectRef createTextures() const override;
224
225 /**
226 * Creates a new transform object.
227 * @see Factory::createTransform().
228 */
229 NodeRef createTransform() const override;
230
231 /**
232 * Creates a new triangle fans object.
233 * @see Factory::createTriangleFans().
234 */
236
237 /**
238 * Creates a new triangles object.
239 * @see Factory::createTriangles().
240 */
241 ObjectRef createTriangles() const override;
242
243 /**
244 * Creates a new triangle strips object.
245 * @see Factory::createTriangleStrips().
246 */
248
249 /**
250 * Creates a new undistorted background object.
251 * @see Factory::createUndistortedBackground().
252 */
254
255 /**
256 * Creates a new vertex set object.
257 * @see Factory::createVertexSet().
258 */
259 ObjectRef createVertexSet() const override;
260};
261
262}
263
264}
265
266}
267
268#endif // META_OCEAN_RENDERING_GLES_FACTORY_H
This class implements a node and object factory.
Definition rendering/Factory.h:30
This class implements a class factory for all GLESceneGraph objects.
Definition GLESFactory.h:30
NodeRef createSwitch() const override
Creates a new switch object.
ObjectRef createAbsoluteTransform() const override
Creates a new absolute transform.
ObjectRef createDirectionalLight() const override
Creates a new directional light object.
ObjectRef createShaderProgram() const override
Creates a new shader program object.
ObjectRef createMediaTexture2D() const override
Creates a new texture object.
NodeRef createScene() const override
Creates a new scene object.
NodeRef createBillboard() const override
Creates a new billboard object.
ObjectRef createTriangleStrips() const override
Creates a new triangle strips object.
ObjectRef createPrimitiveAttribute() const override
Creates a new primitive attribute object.
NodeRef createTransform() const override
Creates a new transform object.
NodeRef createUndistortedBackground() const override
Creates a new undistorted background object.
ObjectRef createSphere() const override
Creates a new sphere object.
ObjectRef createCone() const override
Creates a new cone object.
NodeRef createGroup() const override
Creates a new group object.
ObjectRef createText() const override
Creates a new text framebuffer object.
ObjectRef createStereoView() const override
Creates a new stereo view object.
ObjectRef createVertexSet() const override
Creates a new vertex set object.
ObjectRef createBox() const override
Creates a new box object.
ObjectRef createPhantomAttribute() const override
Creates a new phantom attribute.
ObjectRef createStereoAttribute() const override
Creates a new stereo attribute.
ObjectRef createTextureFramebuffer() const override
Creates a new texture framebuffer object.
ObjectRef createMaterial() const override
Creates a new material object.
ObjectRef createBlendAttribute() const override
Creates a new blend attribute object.
ObjectRef createCylinder() const override
Creates a new cylinder object.
ObjectRef createPoints() const override
Creates a new points object.
ObjectRef createLines() const override
Creates a new lines object.
ObjectRef createAttributeSet() const override
Creates a new attribute set object.
ObjectRef createFrameTexture2D() const override
Creates a new frame texture object.
ObjectRef createPerspectiveView() const override
Creates a new perspective view object.
ObjectRef createTriangles() const override
Creates a new triangles object.
ObjectRef createSpotLight() const override
Creates a new spot light object.
ObjectRef createTriangleFans() const override
Creates a new triangle fans object.
NodeRef createGeometry() const override
Creates a new geometry object.
NodeRef createLOD() const override
Creates a new LOD object.
ObjectRef createLineStrips() const override
Creates a new line strips object.
ObjectRef createDepthAttribute() const override
Creates a new depth attribute object.
ObjectRef createTextures() const override
Creates a new texture attribute object.
ObjectRef createPointLight() const override
Creates a new point light object.
The namespace covering the entire Ocean framework.
Definition Accessor.h:15