// Filename: pta_LMatrix4.h // Created by: drose (27Feb10) // //////////////////////////////////////////////////////////////////// // // PANDA 3D SOFTWARE // Copyright (c) Carnegie Mellon University. All rights reserved. // // All use of this software is subject to the terms of the revised BSD // license. You should have received a copy of this license along // with this source code in a file named "LICENSE." // //////////////////////////////////////////////////////////////////// #ifndef PTA_LMATRIX4_H #define PTA_LMATRIX4_H #include "pandabase.h" #include "luse.h" #include "pointerToArray.h" //////////////////////////////////////////////////////////////////// // Class : PTA_LMatrix4f // Description : A pta of LMatrix4fs. This class is defined once here, // and exported to PANDA.DLL; other packages that want // to use a pta of this type (whether they need to // export it or not) should include this header file, // rather than defining the pta again. // // We actually wrap UnalignedLMatrix4f, in case we are // building with SSE2 and LMatrix4f requires strict // alignment. //////////////////////////////////////////////////////////////////// EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToBase >) EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToArrayBase) EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToArray) EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, ConstPointerToArray) typedef PointerToArray PTA_LMatrix4f; typedef ConstPointerToArray CPTA_LMatrix4f; //////////////////////////////////////////////////////////////////// // Class : PTA_LMatrix4d // Description : A pta of LMatrix4ds. This class is defined once here, // and exported to PANDA.DLL; other packages that want // to use a pta of this type (whether they need to // export it or not) should include this header file, // rather than defining the pta again. // // We actually wrap UnalignedLMatrix4d, in case we are // building with SSE2 and LMatrix4d requires strict // alignment. //////////////////////////////////////////////////////////////////// EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToBase >) EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToArrayBase) EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, PointerToArray) EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_MATHUTIL, EXPTP_PANDA_MATHUTIL, ConstPointerToArray) typedef PointerToArray PTA_LMatrix4d; typedef ConstPointerToArray CPTA_LMatrix4d; #ifndef STDFLOAT_DOUBLE typedef PTA_LMatrix4f PTA_LMatrix4; typedef CPTA_LMatrix4f CPTA_LMatrix4; #else typedef PTA_LMatrix4d PTA_LMatrix4; typedef CPTA_LMatrix4d CPTA_LMatrix4; #endif // STDFLOAT_DOUBLE // Bogus typedefs for interrogate and legacy Python code. #ifdef CPPPARSER typedef PTA_LMatrix4 PTAMat4; typedef CPTA_LMatrix4 CPTAMat4; typedef PTA_LMatrix4d PTAMat4d; typedef CPTA_LMatrix4d CPTAMat4d; #endif // CPPPARSER // Tell GCC that we'll take care of the instantiation explicitly here. #ifdef __GNUC__ #pragma interface #endif #endif