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

# User Rev Content
1 schorsch 2.5 /* 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 greg 2.1
5 schorsch 2.4 #include <string.h>
6    
7 schorsch 2.5 #ifdef __cplusplus
8     extern "C" {
9     #endif
10    
11 schorsch 2.4 #define mx3_copy(a, b) memcpy(b, a, 3*3*sizeof(double))
12 greg 2.1
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 schorsch 2.4 #define mx3f_copy(a, b) memcpy(b, a, 3*3*sizeof(float))
24 greg 2.1
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 schorsch 2.4 #define mx3d_copy(a, b) memcpy(b, a, 3*3*sizeof(double))
36 greg 2.1
37 schorsch 2.5 #ifdef __cplusplus
38     }
39 greg 2.1 #endif
40 schorsch 2.5 #endif /* _RAD_MX3_H_ */