File indexing completed on 2024-12-22 04:10:17

0001 /*
0002  *  SPDX-FileCopyrightText: 2007 Sven Langkamp <sven.langkamp@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #ifndef KIS_ITERATOR_BENCHMARK_H
0008 #define KIS_ITERATOR_BENCHMARK_H
0009 
0010 #include <simpletest.h>
0011 
0012 class KoColorSpace;
0013 
0014 class KisIteratorBenchmark : public QObject
0015 {
0016     Q_OBJECT
0017 
0018 private:
0019     void allCsApplicator(void (KisIteratorBenchmark::* funcPtr)(const KoColorSpace*cs));
0020 
0021     void vLineIterNG(const KoColorSpace * cs);
0022     template <bool useXY>
0023     void sequentialIter(const KoColorSpace * colorSpace);
0024     void hLineIterNG(const KoColorSpace * cs);
0025     void randomAccessor(const KoColorSpace * cs);
0026 
0027 
0028 private Q_SLOTS:
0029 
0030     void runBenchmark();
0031 };
0032 
0033 #endif
0034