File indexing completed on 2024-05-12 15:58:10
0001 /* 0002 * SPDX-FileCopyrightText: 2012 Dmitry Kazakov <dimula73@gmail.com> 0003 * SPDX-FileCopyrightText: 2022 L. E. Segovia <amy@amyspark.me> 0004 * 0005 * SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #include "kis_brush_mask_applicator_factories.h" 0009 0010 #include "kis_circle_mask_generator.h" 0011 #include "kis_curve_circle_mask_generator.h" 0012 #include "kis_curve_rect_mask_generator.h" 0013 #include "kis_gauss_circle_mask_generator.h" 0014 #include "kis_gauss_rect_mask_generator.h" 0015 #include "kis_rect_mask_generator.h" 0016 0017 #include "kis_brush_mask_scalar_applicator.h" 0018 0019 template<> 0020 template<> 0021 MaskApplicatorFactory<KisMaskGenerator>::ReturnType 0022 MaskApplicatorFactory<KisMaskGenerator>::create<xsimd::generic>(ParamType maskGenerator) 0023 { 0024 return new KisBrushMaskScalarApplicator<KisMaskGenerator, xsimd::generic>(maskGenerator); 0025 } 0026 0027 template<> 0028 template<> 0029 MaskApplicatorFactory<KisCircleMaskGenerator>::ReturnType 0030 MaskApplicatorFactory<KisCircleMaskGenerator>::create<xsimd::generic>(ParamType maskGenerator) 0031 { 0032 return new KisBrushMaskScalarApplicator<KisCircleMaskGenerator, xsimd::generic>(maskGenerator); 0033 } 0034 0035 template<> 0036 template<> 0037 MaskApplicatorFactory<KisGaussCircleMaskGenerator>::ReturnType 0038 MaskApplicatorFactory<KisGaussCircleMaskGenerator>::create<xsimd::generic>(ParamType maskGenerator) 0039 { 0040 return new KisBrushMaskScalarApplicator<KisGaussCircleMaskGenerator, xsimd::generic>(maskGenerator); 0041 } 0042 0043 template<> 0044 template<> 0045 MaskApplicatorFactory<KisCurveCircleMaskGenerator>::ReturnType 0046 MaskApplicatorFactory<KisCurveCircleMaskGenerator>::create<xsimd::generic>(ParamType maskGenerator) 0047 { 0048 return new KisBrushMaskScalarApplicator<KisCurveCircleMaskGenerator, xsimd::generic>(maskGenerator); 0049 } 0050 0051 template<> 0052 template<> 0053 MaskApplicatorFactory<KisRectangleMaskGenerator>::ReturnType 0054 MaskApplicatorFactory<KisRectangleMaskGenerator>::create<xsimd::generic>(ParamType maskGenerator) 0055 { 0056 return new KisBrushMaskScalarApplicator<KisRectangleMaskGenerator, xsimd::generic>(maskGenerator); 0057 } 0058 0059 template<> 0060 template<> 0061 MaskApplicatorFactory<KisGaussRectangleMaskGenerator>::ReturnType 0062 MaskApplicatorFactory<KisGaussRectangleMaskGenerator>::create<xsimd::generic>(ParamType maskGenerator) 0063 { 0064 return new KisBrushMaskScalarApplicator<KisGaussRectangleMaskGenerator, xsimd::generic>(maskGenerator); 0065 } 0066 0067 template<> 0068 template<> 0069 MaskApplicatorFactory<KisCurveRectangleMaskGenerator>::ReturnType 0070 MaskApplicatorFactory<KisCurveRectangleMaskGenerator>::create<xsimd::generic>(ParamType maskGenerator) 0071 { 0072 return new KisBrushMaskScalarApplicator<KisCurveRectangleMaskGenerator, xsimd::generic>(maskGenerator); 0073 }