Ocean
GL.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_PLATFORM_GL_GL_H
9 #define META_OCEAN_PLATFORM_GL_GL_H
10 
12 
13 #if defined(_WINDOWS)
14  #include <gl/gl.h>
15  #include <gl/glext.h>
16 #elif defined(__APPLE__)
17  #define GL_GLEXT_PROTOTYPES
18  #include <OpenGL/OpenGL.h>
19  #include <OpenGL/gl.h>
20 #else
21  #error Not supported platform.
22 #endif
23 
24 namespace Ocean
25 {
26 
27 namespace Platform
28 {
29 
30 namespace GL
31 {
32 
33 /**
34  * @ingroup platform
35  * @defgroup platformgl Ocean Platform GL Library
36  * @{
37  * The Ocean GL Library provides specific functionalities for OpenGL.
38  * The library is platform independent.
39  * @}
40  */
41 
42 /**
43  * @namespace Ocean::Platform::GL Namespace of the Platform GL library.<p>
44  * The Namespace Ocean::Platform::GL is used in the entire Ocean Platform GL Library.
45  */
46 
47 // Defines OCEAN_PLATFORM_GL_EXPORT for dll export and import.
48 #if defined(_WINDOWS) && defined(OCEAN_RUNTIME_SHARED)
49  #ifdef USE_OCEAN_PLATFORM_GL_EXPORT
50  #define OCEAN_PLATFORM_GL_EXPORT __declspec(dllexport)
51  #else
52  #define OCEAN_PLATFORM_GL_EXPORT __declspec(dllimport)
53  #endif
54 #else
55  #define OCEAN_PLATFORM_GL_EXPORT
56 #endif
57 
58 }
59 
60 }
61 
62 }
63 
64 #endif // META_OCEAN_PLATFORM_GL_GL_H
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15