Panda3D
pta_LMatrix4.h
Go to the documentation of this file.
1 /**
2  * PANDA 3D SOFTWARE
3  * Copyright (c) Carnegie Mellon University. All rights reserved.
4  *
5  * All use of this software is subject to the terms of the revised BSD
6  * license. You should have received a copy of this license along
7  * with this source code in a file named "LICENSE."
8  *
9  * @file pta_LMatrix4.h
10  * @author drose
11  * @date 2010-02-27
12  */
13 
14 #ifndef PTA_LMATRIX4_H
15 #define PTA_LMATRIX4_H
16 
17 #include "pandabase.h"
18 #include "luse.h"
19 #include "pointerToArray.h"
20 
21 /**
22  * A pta of LMatrix4fs. This class is defined once here, and exported to
23  * PANDA.DLL; other packages that want to use a pta of this type (whether they
24  * need to export it or not) should include this header file, rather than
25  * defining the pta again.
26  *
27  * We actually wrap UnalignedLMatrix4f, in case we are building with SSE2 and
28  * LMatrix4f requires strict alignment.
29  */
30 
31 EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToBase<ReferenceCountedVector<UnalignedLMatrix4f> >)
32 EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToArrayBase<UnalignedLMatrix4f>)
33 EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToArray<UnalignedLMatrix4f>)
34 EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, ConstPointerToArray<UnalignedLMatrix4f>)
35 
36 typedef PointerToArray<UnalignedLMatrix4f> PTA_LMatrix4f;
37 typedef ConstPointerToArray<UnalignedLMatrix4f> CPTA_LMatrix4f;
38 
39 /**
40  * A pta of LMatrix4ds. This class is defined once here, and exported to
41  * PANDA.DLL; other packages that want to use a pta of this type (whether they
42  * need to export it or not) should include this header file, rather than
43  * defining the pta again.
44  *
45  * We actually wrap UnalignedLMatrix4d, in case we are building with SSE2 and
46  * LMatrix4d requires strict alignment.
47  */
48 
49 EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToBase<ReferenceCountedVector<UnalignedLMatrix4d> >)
50 EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToArrayBase<UnalignedLMatrix4d>)
51 EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToArray<UnalignedLMatrix4d>)
52 EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, ConstPointerToArray<UnalignedLMatrix4d>)
53 
54 typedef PointerToArray<UnalignedLMatrix4d> PTA_LMatrix4d;
55 typedef ConstPointerToArray<UnalignedLMatrix4d> CPTA_LMatrix4d;
56 
57 #ifndef STDFLOAT_DOUBLE
58 typedef PTA_LMatrix4f PTA_LMatrix4;
60 #else
61 typedef PTA_LMatrix4d PTA_LMatrix4;
63 #endif // STDFLOAT_DOUBLE
64 
65 // Bogus typedefs for interrogate and legacy Python code.
66 #ifdef CPPPARSER
67 typedef PTA_LMatrix4 PTAMat4;
68 typedef CPTA_LMatrix4 CPTAMat4;
69 typedef PTA_LMatrix4d PTAMat4d;
70 typedef CPTA_LMatrix4d CPTAMat4d;
71 #endif // CPPPARSER
72 
73 #endif
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is the base class for PointerTo and ConstPointerTo.
Definition: pointerToBase.h:29
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A special kind of PointerTo that stores an array of the indicated element type, instead of a single e...
EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToBase< ReferenceCountedVector< UnalignedLMatrix4f > >) EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL
A pta of LMatrix4fs.
This is the base class for PointerToArray and ConstPointerToArray.
This defines the object that is actually stored and reference-counted internally by a PointerToArray.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Similar to PointerToArray, except that its contents may not be modified.