Krita Source Code Documentation
Loading...
Searching...
No Matches
KoColorSpacesBenchmark Class Reference

#include <KoColorSpacesBenchmark.h>

+ Inheritance diagram for KoColorSpacesBenchmark:

Private Slots

void benchmarkAlpha ()
 
void benchmarkAlpha2 ()
 
void benchmarkAlpha2_data ()
 
void benchmarkAlpha_data ()
 
void benchmarkSetAlpha ()
 
void benchmarkSetAlpha2 ()
 
void benchmarkSetAlpha2_data ()
 
void benchmarkSetAlpha2IndividualCall ()
 
void benchmarkSetAlpha2IndividualCall_data ()
 
void benchmarkSetAlpha_data ()
 
void benchmarkSetAlphaIndividualCall ()
 
void benchmarkSetAlphaIndividualCall_data ()
 

Private Member Functions

void createRowsColumns ()
 

Detailed Description

Definition at line 12 of file KoColorSpacesBenchmark.h.

Member Function Documentation

◆ benchmarkAlpha

void KoColorSpacesBenchmark::benchmarkAlpha ( )
privateslot

Definition at line 42 of file KoColorSpacesBenchmark.cpp.

43{
45 QBENCHMARK {
46 quint8* data_it = data;
47 for (int i = 0; i < NB_PIXELS; ++i) {
48 colorSpace->opacityU8(data_it);
49 data_it += pixelSize;
50 }
51 }
53}
#define START_BENCHMARK
#define NB_PIXELS
#define END_BENCHMARK

References END_BENCHMARK, NB_PIXELS, and START_BENCHMARK.

◆ benchmarkAlpha2

void KoColorSpacesBenchmark::benchmarkAlpha2 ( )
privateslot

Definition at line 60 of file KoColorSpacesBenchmark.cpp.

61{
63 QBENCHMARK {
64 quint8* data_it = data;
65 for (int i = 0; i < NB_PIXELS; ++i) {
66 colorSpace->opacityF(data_it);
67 data_it += pixelSize;
68 }
69 }
71}

References END_BENCHMARK, NB_PIXELS, and START_BENCHMARK.

◆ benchmarkAlpha2_data

void KoColorSpacesBenchmark::benchmarkAlpha2_data ( )
privateslot

Definition at line 55 of file KoColorSpacesBenchmark.cpp.

References createRowsColumns().

◆ benchmarkAlpha_data

void KoColorSpacesBenchmark::benchmarkAlpha_data ( )
privateslot

Definition at line 37 of file KoColorSpacesBenchmark.cpp.

38{
40}

References createRowsColumns().

◆ benchmarkSetAlpha

void KoColorSpacesBenchmark::benchmarkSetAlpha ( )
privateslot

Definition at line 78 of file KoColorSpacesBenchmark.cpp.

79{
81 QBENCHMARK {
82 colorSpace->setOpacity(data, OPACITY_OPAQUE_U8, NB_PIXELS);
83 }
85}
const quint8 OPACITY_OPAQUE_U8

References END_BENCHMARK, NB_PIXELS, OPACITY_OPAQUE_U8, and START_BENCHMARK.

◆ benchmarkSetAlpha2

void KoColorSpacesBenchmark::benchmarkSetAlpha2 ( )
privateslot

Definition at line 92 of file KoColorSpacesBenchmark.cpp.

93{
95 QBENCHMARK {
96 colorSpace->setOpacity(data, OPACITY_OPAQUE_F, NB_PIXELS);
97 }
99}
const qreal OPACITY_OPAQUE_F

References END_BENCHMARK, NB_PIXELS, OPACITY_OPAQUE_F, and START_BENCHMARK.

◆ benchmarkSetAlpha2_data

void KoColorSpacesBenchmark::benchmarkSetAlpha2_data ( )
privateslot

Definition at line 87 of file KoColorSpacesBenchmark.cpp.

88{
90}

References createRowsColumns().

◆ benchmarkSetAlpha2IndividualCall

void KoColorSpacesBenchmark::benchmarkSetAlpha2IndividualCall ( )
privateslot

Definition at line 124 of file KoColorSpacesBenchmark.cpp.

125{
127 QBENCHMARK {
128 quint8* data_it = data;
129 for (int i = 0; i < NB_PIXELS; ++i) {
130 colorSpace->setOpacity(data_it, OPACITY_OPAQUE_F, 1);
131 data_it += pixelSize;
132 }
133 }
135}

References END_BENCHMARK, NB_PIXELS, OPACITY_OPAQUE_F, and START_BENCHMARK.

◆ benchmarkSetAlpha2IndividualCall_data

void KoColorSpacesBenchmark::benchmarkSetAlpha2IndividualCall_data ( )
privateslot

Definition at line 119 of file KoColorSpacesBenchmark.cpp.

120{
122}

References createRowsColumns().

◆ benchmarkSetAlpha_data

void KoColorSpacesBenchmark::benchmarkSetAlpha_data ( )
privateslot

Definition at line 73 of file KoColorSpacesBenchmark.cpp.

74{
76}

References createRowsColumns().

◆ benchmarkSetAlphaIndividualCall

void KoColorSpacesBenchmark::benchmarkSetAlphaIndividualCall ( )
privateslot

Definition at line 106 of file KoColorSpacesBenchmark.cpp.

107{
109 QBENCHMARK {
110 quint8* data_it = data;
111 for (int i = 0; i < NB_PIXELS; ++i) {
112 colorSpace->setOpacity(data_it, OPACITY_OPAQUE_U8, 1);
113 data_it += pixelSize;
114 }
115 }
117}

References END_BENCHMARK, NB_PIXELS, OPACITY_OPAQUE_U8, and START_BENCHMARK.

◆ benchmarkSetAlphaIndividualCall_data

void KoColorSpacesBenchmark::benchmarkSetAlphaIndividualCall_data ( )
privateslot

Definition at line 101 of file KoColorSpacesBenchmark.cpp.

102{
104}

References createRowsColumns().

◆ createRowsColumns()

void KoColorSpacesBenchmark::createRowsColumns ( )
private

Definition at line 15 of file KoColorSpacesBenchmark.cpp.

16{
17 QTest::addColumn<QString>("modelID");
18 QTest::addColumn<QString>("depthID");
20 Q_FOREACH (const KoColorSpace* colorSpace, colorSpaces) {
21 QTest::newRow(colorSpace->name().toLatin1().data()) << colorSpace->colorModelId().id() << colorSpace->colorDepthId().id();
22 }
23}
virtual KoID colorModelId() const =0
virtual KoID colorDepthId() const =0
QString id() const
Definition KoID.cpp:63
@ OnlyDefaultProfile
Only add the default profile.
QList< const KoColorSpace * > allColorSpaces(ColorSpaceListVisibility visibility, ColorSpaceListProfilesSelection pSelection)
static KoColorSpaceRegistry * instance()
@ AllColorSpaces
All color space even those not visible to the user.

References KoColorSpaceRegistry::AllColorSpaces, KoColorSpaceRegistry::allColorSpaces(), KoColorSpace::colorDepthId(), KoColorSpace::colorModelId(), KoID::id(), KoColorSpaceRegistry::instance(), KoColorSpace::name, and KoColorSpaceRegistry::OnlyDefaultProfile.


The documentation for this class was generated from the following files: