// // SPDX-License-Identifier: BSD-3-Clause // Copyright (c) Contributors to the OpenEXR Project. // #ifndef INCLUDED_IMF_MATRIX_ATTRIBUTE_H #define INCLUDED_IMF_MATRIX_ATTRIBUTE_H //----------------------------------------------------------------------------- // // class M33fAttribute // class M33dAttribute // class M44fAttribute // class M44dAttribute // //----------------------------------------------------------------------------- #include "ImfExport.h" #include "ImfNamespace.h" #include "ImfAttribute.h" #include <ImathMatrix.h> #if defined(_MSC_VER) // suppress warning about non-exported base classes # pragma warning(push) # pragma warning(disable : 4251) # pragma warning(disable : 4275) #endif OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER typedef TypedAttribute<IMATH_NAMESPACE::M33f> M33fAttribute; typedef TypedAttribute<IMATH_NAMESPACE::M33d> M33dAttribute; typedef TypedAttribute<IMATH_NAMESPACE::M44f> M44fAttribute; typedef TypedAttribute<IMATH_NAMESPACE::M44d> M44dAttribute; #ifndef COMPILING_IMF_MATRIX_ATTRIBUTE extern template class IMF_EXPORT_EXTERN_TEMPLATE TypedAttribute<IMATH_NAMESPACE::M33f>; extern template class IMF_EXPORT_EXTERN_TEMPLATE TypedAttribute<IMATH_NAMESPACE::M33d>; extern template class IMF_EXPORT_EXTERN_TEMPLATE TypedAttribute<IMATH_NAMESPACE::M44f>; extern template class IMF_EXPORT_EXTERN_TEMPLATE TypedAttribute<IMATH_NAMESPACE::M44d>; #endif OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_EXIT #if defined(_MSC_VER) # pragma warning(pop) #endif #endif