/src/openexr/src/lib/OpenEXR/ImfVecAttribute.cpp
Line | Count | Source (jump to first uncovered line) |
1 | | // |
2 | | // SPDX-License-Identifier: BSD-3-Clause |
3 | | // Copyright (c) Contributors to the OpenEXR Project. |
4 | | // |
5 | | |
6 | | //----------------------------------------------------------------------------- |
7 | | // |
8 | | // class V2iAttribute |
9 | | // class V2fAttribute |
10 | | // class V2dAttribute |
11 | | // class V3iAttribute |
12 | | // class V3fAttribute |
13 | | // class V3dAttribute |
14 | | // |
15 | | //----------------------------------------------------------------------------- |
16 | | #include "ImfExport.h" |
17 | | #include <ImathExport.h> |
18 | | #include <ImathNamespace.h> |
19 | | |
20 | | IMATH_INTERNAL_NAMESPACE_HEADER_ENTER |
21 | | template <class V> class IMF_EXPORT_TEMPLATE_TYPE Vec2; |
22 | | template <class V> class IMF_EXPORT_TEMPLATE_TYPE Vec3; |
23 | | IMATH_INTERNAL_NAMESPACE_HEADER_EXIT |
24 | | |
25 | | #define COMPILING_IMF_VECTOR_ATTRIBUTE |
26 | | #include "ImfVecAttribute.h" |
27 | | |
28 | | #if defined(_MSC_VER) |
29 | | // suppress warning about non-exported base classes |
30 | | # pragma warning(disable : 4251) |
31 | | # pragma warning(disable : 4275) |
32 | | #endif |
33 | | |
34 | | OPENEXR_IMF_INTERNAL_NAMESPACE_SOURCE_ENTER |
35 | | |
36 | | using namespace OPENEXR_IMF_INTERNAL_NAMESPACE; |
37 | | |
38 | | template <> |
39 | | IMF_EXPORT const char* |
40 | | V2iAttribute::staticTypeName () |
41 | 1 | { |
42 | 1 | return "v2i"; |
43 | 1 | } |
44 | | |
45 | | template <> |
46 | | IMF_EXPORT void |
47 | | V2iAttribute::writeValueTo ( |
48 | | OPENEXR_IMF_INTERNAL_NAMESPACE::OStream& os, int version) const |
49 | 0 | { |
50 | 0 | Xdr::write<StreamIO> (os, _value.x); |
51 | 0 | Xdr::write<StreamIO> (os, _value.y); |
52 | 0 | } |
53 | | |
54 | | template <> |
55 | | IMF_EXPORT void |
56 | | V2iAttribute::readValueFrom ( |
57 | | OPENEXR_IMF_INTERNAL_NAMESPACE::IStream& is, int size, int version) |
58 | 0 | { |
59 | 0 | Xdr::read<StreamIO> (is, _value.x); |
60 | 0 | Xdr::read<StreamIO> (is, _value.y); |
61 | 0 | } |
62 | | |
63 | | template <> |
64 | | IMF_EXPORT const char* |
65 | | V2fAttribute::staticTypeName () |
66 | 46.8k | { |
67 | 46.8k | return "v2f"; |
68 | 46.8k | } |
69 | | |
70 | | template <> |
71 | | IMF_EXPORT void |
72 | | V2fAttribute::writeValueTo ( |
73 | | OPENEXR_IMF_INTERNAL_NAMESPACE::OStream& os, int version) const |
74 | 0 | { |
75 | 0 | Xdr::write<StreamIO> (os, _value.x); |
76 | 0 | Xdr::write<StreamIO> (os, _value.y); |
77 | 0 | } |
78 | | |
79 | | template <> |
80 | | IMF_EXPORT void |
81 | | V2fAttribute::readValueFrom ( |
82 | | OPENEXR_IMF_INTERNAL_NAMESPACE::IStream& is, int size, int version) |
83 | 0 | { |
84 | 0 | Xdr::read<StreamIO> (is, _value.x); |
85 | 0 | Xdr::read<StreamIO> (is, _value.y); |
86 | 0 | } |
87 | | |
88 | | template <> |
89 | | IMF_EXPORT const char* |
90 | | V2dAttribute::staticTypeName () |
91 | 1 | { |
92 | 1 | return "v2d"; |
93 | 1 | } |
94 | | |
95 | | template <> |
96 | | IMF_EXPORT void |
97 | | V2dAttribute::writeValueTo ( |
98 | | OPENEXR_IMF_INTERNAL_NAMESPACE::OStream& os, int version) const |
99 | 0 | { |
100 | 0 | Xdr::write<StreamIO> (os, _value.x); |
101 | 0 | Xdr::write<StreamIO> (os, _value.y); |
102 | 0 | } |
103 | | |
104 | | template <> |
105 | | IMF_EXPORT void |
106 | | V2dAttribute::readValueFrom ( |
107 | | OPENEXR_IMF_INTERNAL_NAMESPACE::IStream& is, int size, int version) |
108 | 0 | { |
109 | 0 | Xdr::read<StreamIO> (is, _value.x); |
110 | 0 | Xdr::read<StreamIO> (is, _value.y); |
111 | 0 | } |
112 | | |
113 | | template <> |
114 | | IMF_EXPORT const char* |
115 | | V3iAttribute::staticTypeName () |
116 | 1 | { |
117 | 1 | return "v3i"; |
118 | 1 | } |
119 | | |
120 | | template <> |
121 | | IMF_EXPORT void |
122 | | V3iAttribute::writeValueTo ( |
123 | | OPENEXR_IMF_INTERNAL_NAMESPACE::OStream& os, int version) const |
124 | 0 | { |
125 | 0 | Xdr::write<StreamIO> (os, _value.x); |
126 | 0 | Xdr::write<StreamIO> (os, _value.y); |
127 | 0 | Xdr::write<StreamIO> (os, _value.z); |
128 | 0 | } |
129 | | |
130 | | template <> |
131 | | IMF_EXPORT void |
132 | | V3iAttribute::readValueFrom ( |
133 | | OPENEXR_IMF_INTERNAL_NAMESPACE::IStream& is, int size, int version) |
134 | 0 | { |
135 | 0 | Xdr::read<StreamIO> (is, _value.x); |
136 | 0 | Xdr::read<StreamIO> (is, _value.y); |
137 | 0 | Xdr::read<StreamIO> (is, _value.z); |
138 | 0 | } |
139 | | |
140 | | template <> |
141 | | IMF_EXPORT const char* |
142 | | V3fAttribute::staticTypeName () |
143 | 1 | { |
144 | 1 | return "v3f"; |
145 | 1 | } |
146 | | |
147 | | template <> |
148 | | IMF_EXPORT void |
149 | | V3fAttribute::writeValueTo ( |
150 | | OPENEXR_IMF_INTERNAL_NAMESPACE::OStream& os, int version) const |
151 | 0 | { |
152 | 0 | Xdr::write<StreamIO> (os, _value.x); |
153 | 0 | Xdr::write<StreamIO> (os, _value.y); |
154 | 0 | Xdr::write<StreamIO> (os, _value.z); |
155 | 0 | } |
156 | | |
157 | | template <> |
158 | | IMF_EXPORT void |
159 | | V3fAttribute::readValueFrom ( |
160 | | OPENEXR_IMF_INTERNAL_NAMESPACE::IStream& is, int size, int version) |
161 | 0 | { |
162 | 0 | Xdr::read<StreamIO> (is, _value.x); |
163 | 0 | Xdr::read<StreamIO> (is, _value.y); |
164 | 0 | Xdr::read<StreamIO> (is, _value.z); |
165 | 0 | } |
166 | | |
167 | | template <> |
168 | | IMF_EXPORT const char* |
169 | | V3dAttribute::staticTypeName () |
170 | 2 | { |
171 | 2 | return "v3d"; |
172 | 2 | } |
173 | | |
174 | | template <> |
175 | | IMF_EXPORT void |
176 | | V3dAttribute::writeValueTo ( |
177 | | OPENEXR_IMF_INTERNAL_NAMESPACE::OStream& os, int version) const |
178 | 0 | { |
179 | 0 | Xdr::write<StreamIO> (os, _value.x); |
180 | 0 | Xdr::write<StreamIO> (os, _value.y); |
181 | 0 | Xdr::write<StreamIO> (os, _value.z); |
182 | 0 | } |
183 | | |
184 | | template <> |
185 | | IMF_EXPORT void |
186 | | V3dAttribute::readValueFrom ( |
187 | | OPENEXR_IMF_INTERNAL_NAMESPACE::IStream& is, int size, int version) |
188 | 0 | { |
189 | 0 | Xdr::read<StreamIO> (is, _value.x); |
190 | 0 | Xdr::read<StreamIO> (is, _value.y); |
191 | 0 | Xdr::read<StreamIO> (is, _value.z); |
192 | 0 | } |
193 | | |
194 | | template class IMF_EXPORT_TEMPLATE_INSTANCE |
195 | | TypedAttribute<IMATH_NAMESPACE::V2i>; |
196 | | template class IMF_EXPORT_TEMPLATE_INSTANCE |
197 | | TypedAttribute<IMATH_NAMESPACE::V2f>; |
198 | | template class IMF_EXPORT_TEMPLATE_INSTANCE |
199 | | TypedAttribute<IMATH_NAMESPACE::V2d>; |
200 | | template class IMF_EXPORT_TEMPLATE_INSTANCE |
201 | | TypedAttribute<IMATH_NAMESPACE::V3i>; |
202 | | template class IMF_EXPORT_TEMPLATE_INSTANCE |
203 | | TypedAttribute<IMATH_NAMESPACE::V3f>; |
204 | | template class IMF_EXPORT_TEMPLATE_INSTANCE |
205 | | TypedAttribute<IMATH_NAMESPACE::V3d>; |
206 | | |
207 | | OPENEXR_IMF_INTERNAL_NAMESPACE_SOURCE_EXIT |