HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ImathForward.h
Go to the documentation of this file.
1 //
2 // SPDX-License-Identifier: BSD-3-Clause
3 // Copyright Contributors to the OpenEXR Project.
4 //
5 
6 #ifndef INCLUDED_IMATHFORWARD_H
7 #define INCLUDED_IMATHFORWARD_H
8 
9 #include "ImathNamespace.h"
10 #include "ImathExport.h"
11 
12 IMATH_INTERNAL_NAMESPACE_HEADER_ENTER
13 
14 /// @cond Doxygen_Suppress
15 
16 //
17 // Basic template type declarations.
18 //
19 
20 //
21 // Note: declarations with attributes generate warnings with
22 // -Wattributes or -Wall if the type is already defined, i.e. the
23 // header is already included. To avoid the warning, only make the
24 // forward declaration if the header has not yet been included.
25 //
26 
27 #ifndef INCLUDED_IMATHBOX_H
28 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Box;
29 #endif
30 #ifndef INCLUDED_IMATHCOLOR_H
31 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Color3;
32 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Color4;
33 #endif
34 #ifndef INCLUDED_IMATHEULER_H
35 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Euler;
36 #endif
37 #ifndef INCLUDED_IMATHFRUSTUM_H
38 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Frustum;
39 #endif
40 #ifndef INCLUDED_IMATHFRUSTUMTEST_H
41 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE FrustumTest;
42 #endif
43 #ifndef INCLUDED_IMATHINTERVAL_H
44 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Interval;
45 #endif
46 #ifndef INCLUDED_IMATHLINE_H
47 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Line3;
48 #endif
49 #ifndef INCLUDED_IMATHMATRIX_H
50 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Matrix33;
51 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Matrix44;
52 #endif
53 #ifndef INCLUDED_IMATHPLANE_H
54 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Plane3;
55 #endif
56 #ifndef INCLUDED_IMATHQUAT_H
57 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Quat;
58 #endif
59 #ifndef INCLUDED_IMATHSHEAR_H
60 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Shear6;
61 #endif
62 #ifndef INCLUDED_IMATHSPHERE_H
63 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Sphere3;
64 #endif
65 #ifndef INCLUDED_IMATHVEC_H
66 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Vec2;
67 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Vec3;
68 template <class T> class IMATH_EXPORT_TEMPLATE_TYPE Vec4;
69 #endif
70 
71 #ifndef INCLUDED_IMATHRANDOM_H
74 #endif
75 
76 /// @endcond
77 
78 IMATH_INTERNAL_NAMESPACE_HEADER_EXIT
79 
80 #endif // INCLUDED_IMATHFORWARD_H
Definition: ImathVec.h:32
Definition: ImathQuat.h:42
#define IMATH_EXPORT_TYPE
Definition: ImathExport.h:61
Definition: ImathVec.h:31
#define IMATH_EXPORT_TEMPLATE_TYPE
Definition: ImathExport.h:60
Definition: ImathBox.h:37
Definition: ImathVec.h:33