VTK  9.3.0
zSpaceTypes.h
Go to the documentation of this file.
1 //
3 // Copyright (C) 2007-2015 zSpace, Inc. All Rights Reserved.
4 //
5 // File: zSpaceTypes.h
6 // Content: Shared zSpace types.
7 // SVN Info: $Id$
8 //
10 
11 #ifndef __ZSPACE_TYPES_H__
12 #define __ZSPACE_TYPES_H__
13 
14 
17 
18 
20 // Basic Types
22 
23 #if (defined(_MSC_VER) && (_MSC_VER >= 1300))
24 
25 typedef signed __int8 ZSInt8;
26 typedef signed __int16 ZSInt16;
27 typedef signed __int32 ZSInt32;
28 typedef signed __int64 ZSInt64;
29 
30 typedef unsigned __int8 ZSUInt8;
31 typedef unsigned __int16 ZSUInt16;
32 typedef unsigned __int32 ZSUInt32;
33 typedef unsigned __int64 ZSUInt64;
34 
35 #else
36 
37 // From ISO/IEC 988:1999 spec
38 // 7.18.1.1 Exact-width integer types
39 typedef signed char ZSInt8;
40 typedef short ZSInt16;
41 typedef int ZSInt32;
42 typedef long long ZSInt64;
43 
44 typedef unsigned char ZSUInt8;
45 typedef unsigned short ZSUInt16;
46 typedef unsigned int ZSUInt32;
47 typedef unsigned long long ZSUInt64;
48 
49 #endif
50 
51 typedef ZSInt8 ZSBool;
52 typedef float ZSFloat;
53 typedef double ZSDouble;
54 
55 
57 // Compound Types
59 
60 // Ensure 8 byte packing.
61 #pragma pack( push, 8 )
62 
64 typedef union ZSVector3
65 {
66  ZSFloat f[3];
67  struct
68  {
72  };
74 
75 
79 typedef union ZSMatrix4
80 {
81  ZSFloat f[16];
82  struct
83  {
88  };
90 
91 #pragma pack( pop )
92 
93 
95 
96 
97 #endif // __ZSPACE_TYPES_H__
union ZSVector3 ZSVector3
Union representing a vector of 3 floats.
float ZSFloat
Definition: zSpaceTypes.h:52
signed char ZSInt8
Definition: zSpaceTypes.h:39
ZSInt8 ZSBool
Definition: zSpaceTypes.h:51
long long ZSInt64
Definition: zSpaceTypes.h:42
unsigned int ZSUInt32
Definition: zSpaceTypes.h:46
double ZSDouble
Definition: zSpaceTypes.h:53
unsigned short ZSUInt16
Definition: zSpaceTypes.h:45
unsigned long long ZSUInt64
Definition: zSpaceTypes.h:47
unsigned char ZSUInt8
Definition: zSpaceTypes.h:44
short ZSInt16
Definition: zSpaceTypes.h:40
union ZSMatrix4 ZSMatrix4
Union representing 4x4 matrix (right-handed OpenGL column-major format). / This structure is used by ...
int ZSInt32
Definition: zSpaceTypes.h:41
Union representing 4x4 matrix (right-handed OpenGL column-major format). / This structure is used by ...
Definition: zSpaceTypes.h:80
ZSFloat m11
Definition: zSpaceTypes.h:85
ZSFloat m30
Definition: zSpaceTypes.h:84
ZSFloat m00
Definition: zSpaceTypes.h:84
ZSFloat m20
Definition: zSpaceTypes.h:84
ZSFloat m32
Definition: zSpaceTypes.h:86
ZSFloat m02
Definition: zSpaceTypes.h:86
ZSFloat m12
Definition: zSpaceTypes.h:86
ZSFloat m13
Definition: zSpaceTypes.h:87
ZSFloat m10
Definition: zSpaceTypes.h:84
ZSFloat m22
Definition: zSpaceTypes.h:86
ZSFloat m31
Definition: zSpaceTypes.h:85
ZSFloat f[16]
Definition: zSpaceTypes.h:81
ZSFloat m33
Definition: zSpaceTypes.h:87
ZSFloat m23
Definition: zSpaceTypes.h:87
ZSFloat m03
Definition: zSpaceTypes.h:87
ZSFloat m21
Definition: zSpaceTypes.h:85
ZSFloat m01
Definition: zSpaceTypes.h:85
Union representing a vector of 3 floats.
Definition: zSpaceTypes.h:65
ZSFloat y
Definition: zSpaceTypes.h:70
ZSFloat z
Definition: zSpaceTypes.h:71
ZSFloat x
Definition: zSpaceTypes.h:69
ZSFloat f[3]
Definition: zSpaceTypes.h:66