ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/px/mx3.h
Revision: 2.5
Committed: Mon Jul 14 22:24:00 2003 UTC (20 years, 9 months ago) by schorsch
Content type: text/plain
Branch: MAIN
Changes since 2.4: +10 -3 lines
Log Message:
Instrumented headers against multiple inclusion and for use from C++.
Moved includes in headers out of "C" scope.

File Contents

# Content
1 /* RCSid: $Id: mx3.h,v 2.4 2003/06/30 14:59:12 schorsch Exp $ */
2 #ifndef _RAD_MX3_H_
3 #define _RAD_MX3_H_
4
5 #include <string.h>
6
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10
11 #define mx3_copy(a, b) memcpy(b, a, 3*3*sizeof(double))
12
13 /* FLOAT VERSIONS */
14 float mx3f_adjoint(/* a, b */);
15 void mx3f_mul(/* a, b, c */);
16 void mx3f_print(/* str, a */);
17 void mx3f_translate_mat(/* tx, ty, a */);
18 void mx3f_translate(/* a, tx, ty */);
19 void mx3f_scale_mat(/* sx, sy, a */);
20 void mx3f_scale(/* a, sx, sy */);
21 void mx3f_transform(/* p, a, q */);
22 float mx3f_transform_div(/* p, a, q */);
23 #define mx3f_copy(a, b) memcpy(b, a, 3*3*sizeof(float))
24
25 /* DOUBLE VERSIONS */
26 double mx3d_adjoint(/* a, b */);
27 void mx3d_mul(/* a, b, c */);
28 void mx3d_print(/* str, a */);
29 void mx3d_translate_mat(/* tx, ty, a */);
30 void mx3d_translate(/* a, tx, ty */);
31 void mx3d_scale_mat(/* sx, sy, a */);
32 void mx3d_scale(/* a, sx, sy */);
33 void mx3d_transform(/* p, a, q */);
34 double mx3d_transform_div(/* p, a, q */);
35 #define mx3d_copy(a, b) memcpy(b, a, 3*3*sizeof(double))
36
37 #ifdef __cplusplus
38 }
39 #endif
40 #endif /* _RAD_MX3_H_ */