OpenCoverage

qquickspriteengine.cpp

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/qtdeclarative/src/qtdeclarative/src/quick/items/qquickspriteengine.cpp
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3static const int NINF = -1000000;-
4QQuickStochasticEngine::QQuickStochasticEngine(QObject *parent) :-
5 QObject(parent), m_timeOffset(0), m_addAdvance(false)-
6{-
7-
8 setCount(1);-
9}
executed 102 times by 6 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
102
10-
11QQuickStochasticEngine::QQuickStochasticEngine(const QList<QQuickStochasticState *> &states, QObject *parent) :-
12 QObject(parent), m_states(states), m_timeOffset(0), m_addAdvance(false)-
13{-
14-
15 setCount(1);-
16}
never executed: end of block
0
17-
18QQuickStochasticEngine::~QQuickStochasticEngine()-
19{-
20}-
21-
22QQuickSpriteEngine::QQuickSpriteEngine(QObject *parent)-
23 : QQuickStochasticEngine(parent), m_startedImageAssembly(false), m_loaded(false)-
24{-
25}
executed 96 times by 5 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
96
26-
27QQuickSpriteEngine::QQuickSpriteEngine(const QList<QQuickSprite *> &sprites, QObject *parent)-
28 : QQuickSpriteEngine(parent)-
29{-
30 for (QQuickSprite* sprite : sprites)-
31 m_states << (QQuickStochasticState*)sprite;
executed 166 times by 5 tests: m_states << (QQuickStochasticState*)sprite;
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
166
32}
executed 96 times by 5 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
96
33-
34QQuickSpriteEngine::~QQuickSpriteEngine()-
35{-
36}-
37-
38-
39int QQuickSpriteEngine::maxFrames() const-
40{-
41 return
executed 312 times by 1 test: return m_maxFrames;
Executed by:
  • tst_qquickanimatedsprite
m_maxFrames;
executed 312 times by 1 test: return m_maxFrames;
Executed by:
  • tst_qquickanimatedsprite
312
42}-
43int QQuickSpriteEngine::pseudospriteProgress(int sprite, int state, int* rowDuration) const-
44{-
45 int myRowDuration = m_duration[sprite] * m_sprites[state]->m_framesPerRow / m_sprites[state]->m_frames;-
46 if (rowDuration
rowDurationDescription
TRUEevaluated 1168 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 2840 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
1168-2840
47 *
executed 1168 times by 1 test: *rowDuration = myRowDuration;
Executed by:
  • tst_qquickanimatedsprite
rowDuration = myRowDuration;
executed 1168 times by 1 test: *rowDuration = myRowDuration;
Executed by:
  • tst_qquickanimatedsprite
1168
48-
49 if (m_sprites[state]->reverse()
m_sprites[state]->reverse()Description
TRUEnever evaluated
FALSEevaluated 4008 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
0-4008
50 return
never executed: return (m_timeOffset - (m_startTimes[sprite] - (myRowDuration - (m_duration[sprite] % myRowDuration))) ) / myRowDuration;
(m_timeOffset - (m_startTimes[sprite] - (myRowDuration - (m_duration[sprite] % myRowDuration))) )
never executed: return (m_timeOffset - (m_startTimes[sprite] - (myRowDuration - (m_duration[sprite] % myRowDuration))) ) / myRowDuration;
0
51 / myRowDuration;
never executed: return (m_timeOffset - (m_startTimes[sprite] - (myRowDuration - (m_duration[sprite] % myRowDuration))) ) / myRowDuration;
0
52 else-
53 return
executed 4008 times by 1 test: return (m_timeOffset - m_startTimes[sprite]) / myRowDuration;
Executed by:
  • tst_qquickanimatedsprite
(m_timeOffset - m_startTimes[sprite]) / myRowDuration;
executed 4008 times by 1 test: return (m_timeOffset - m_startTimes[sprite]) / myRowDuration;
Executed by:
  • tst_qquickanimatedsprite
4008
54}-
55-
56int QQuickSpriteEngine::spriteState(int sprite) const-
57{-
58 if (!m_loaded
!m_loadedDescription
TRUEnever evaluated
FALSEevaluated 1200 times by 1 test
Evaluated by:
  • tst_qquickspritegoal
)
0-1200
59 return
never executed: return 0;
0;
never executed: return 0;
0
60 int state = m_things[sprite];-
61 if (!m_sprites[state]->m_generatedCount
!m_sprites[sta...generatedCountDescription
TRUEevaluated 1200 times by 1 test
Evaluated by:
  • tst_qquickspritegoal
FALSEnever evaluated
)
0-1200
62 return
executed 1200 times by 1 test: return state;
Executed by:
  • tst_qquickspritegoal
state;
executed 1200 times by 1 test: return state;
Executed by:
  • tst_qquickspritegoal
1200
63-
64 int extra;-
65 if (m_sprites[state]->frameSync()
m_sprites[state]->frameSync()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
66 extra = m_startTimes[sprite];
never executed: extra = m_startTimes[sprite];
0
67 else if (!m_duration[sprite]
!m_duration[sprite]Description
TRUEnever evaluated
FALSEnever evaluated
)
0
68 return
never executed: return state;
state;
never executed: return state;
0
69 else-
70 extra = pseudospriteProgress(sprite, state);
never executed: extra = pseudospriteProgress(sprite, state);
0
71 if (m_sprites[state]->reverse()
m_sprites[state]->reverse()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
72 extra = (m_sprites[state]->m_generatedCount - 1) - extra;
never executed: extra = (m_sprites[state]->m_generatedCount - 1) - extra;
0
73-
74 return
never executed: return state + extra;
state + extra;
never executed: return state + extra;
0
75}-
76-
77int QQuickSpriteEngine::spriteStart(int sprite) const-
78{-
79 if (!m_duration[sprite]
!m_duration[sprite]Description
TRUEevaluated 326 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 2893 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritegoal
  • tst_qquickspritesequence
|| !m_loaded
!m_loadedDescription
TRUEnever evaluated
FALSEevaluated 2893 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-2893
80 return
executed 326 times by 2 tests: return m_timeOffset;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
m_timeOffset;
executed 326 times by 2 tests: return m_timeOffset;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
326
81 int state = m_things[sprite];-
82 if (!m_sprites[state]->m_generatedCount
!m_sprites[sta...generatedCountDescription
TRUEevaluated 2313 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 580 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
580-2313
83 return
executed 2313 times by 3 tests: return m_startTimes[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_startTimes[sprite];
executed 2313 times by 3 tests: return m_startTimes[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritegoal
  • tst_qquickspritesequence
2313
84 int rowDuration;-
85 int extra = pseudospriteProgress(sprite, state, &rowDuration);-
86 if (m_sprites[state]->reverse()
m_sprites[state]->reverse()Description
TRUEnever evaluated
FALSEevaluated 580 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
0-580
87 return
never executed: return m_startTimes[sprite] + (extra ? (extra - 1)*rowDuration + (m_duration[sprite] % rowDuration) : 0);
m_startTimes[sprite] + (extra ? (extra - 1)*rowDuration + (m_duration[sprite] % rowDuration) : 0);
never executed: return m_startTimes[sprite] + (extra ? (extra - 1)*rowDuration + (m_duration[sprite] % rowDuration) : 0);
0
88 return
executed 580 times by 1 test: return m_startTimes[sprite] + extra*rowDuration;
Executed by:
  • tst_qquickanimatedsprite
m_startTimes[sprite] + extra*rowDuration;
executed 580 times by 1 test: return m_startTimes[sprite] + extra*rowDuration;
Executed by:
  • tst_qquickanimatedsprite
580
89}-
90-
91int QQuickSpriteEngine::spriteFrames(int sprite) const-
92{-
93 if (!m_loaded
!m_loadedDescription
TRUEnever evaluated
FALSEevaluated 6604 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-6604
94 return
never executed: return 1;
1;
never executed: return 1;
0
95 int state = m_things[sprite];-
96 if (!m_sprites[state]->m_generatedCount
!m_sprites[sta...generatedCountDescription
TRUEevaluated 4978 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 1626 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
)
1626-4978
97 return
executed 4978 times by 4 tests: return m_sprites[state]->frames();
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_sprites[state]->frames();
executed 4978 times by 4 tests: return m_sprites[state]->frames();
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
4978
98-
99 int extra;-
100 if (m_sprites[state]->frameSync()
m_sprites[state]->frameSync()Description
TRUEevaluated 490 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 1136 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
490-1136
101 extra = m_startTimes[sprite];
executed 490 times by 2 tests: extra = m_startTimes[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
490
102 else if (!m_duration[sprite]
!m_duration[sprite]Description
TRUEnever evaluated
FALSEevaluated 1136 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
0-1136
103 return
never executed: return m_sprites[state]->frames();
m_sprites[state]->frames();
never executed: return m_sprites[state]->frames();
0
104 else-
105 extra = pseudospriteProgress(sprite, state);
executed 1136 times by 1 test: extra = pseudospriteProgress(sprite, state);
Executed by:
  • tst_qquickanimatedsprite
1136
106 if (m_sprites[state]->reverse()
m_sprites[state]->reverse()Description
TRUEnever evaluated
FALSEevaluated 1626 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
)
0-1626
107 extra = (m_sprites[state]->m_generatedCount - 1) - extra;
never executed: extra = (m_sprites[state]->m_generatedCount - 1) - extra;
0
108-
109-
110 if (extra == m_sprites[state]->m_generatedCount - 1
extra == m_spr...ratedCount - 1Description
TRUEevaluated 326 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 1300 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
) {
326-1300
111 const int framesRemaining = m_sprites[state]->frames() % m_sprites[state]->m_framesPerRow;-
112 if (framesRemaining > 0
framesRemaining > 0Description
TRUEevaluated 326 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEnever evaluated
)
0-326
113 return
executed 326 times by 1 test: return framesRemaining;
Executed by:
  • tst_qquickanimatedsprite
framesRemaining;
executed 326 times by 1 test: return framesRemaining;
Executed by:
  • tst_qquickanimatedsprite
326
114 }
never executed: end of block
0
115 return
executed 1300 times by 2 tests: return m_sprites[state]->m_framesPerRow;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
m_sprites[state]->m_framesPerRow;
executed 1300 times by 2 tests: return m_sprites[state]->m_framesPerRow;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
1300
116}-
117-
118int QQuickSpriteEngine::spriteDuration(int sprite) const-
119{-
120 if (!m_duration[sprite]
!m_duration[sprite]Description
TRUEevaluated 326 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 9037 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
|| !m_loaded
!m_loadedDescription
TRUEevaluated 12 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 9025 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
12-9037
121 return
executed 338 times by 2 tests: return m_duration[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
m_duration[sprite];
executed 338 times by 2 tests: return m_duration[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
338
122 int state = m_things[sprite];-
123 if (!m_sprites[state]->m_generatedCount
!m_sprites[sta...generatedCountDescription
TRUEevaluated 8437 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 588 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
588-8437
124 return
executed 8437 times by 4 tests: return m_duration[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_duration[sprite];
executed 8437 times by 4 tests: return m_duration[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
8437
125 int rowDuration;-
126 int extra = pseudospriteProgress(sprite, state, &rowDuration);-
127 if (m_sprites[state]->reverse()
m_sprites[state]->reverse()Description
TRUEnever evaluated
FALSEevaluated 588 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
0-588
128 extra = (m_sprites[state]->m_generatedCount - 1) - extra;
never executed: extra = (m_sprites[state]->m_generatedCount - 1) - extra;
0
129-
130 if (extra == m_sprites[state]->m_generatedCount - 1
extra == m_spr...ratedCount - 1Description
TRUEevaluated 121 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 467 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
) {
121-467
131 const int durationRemaining = m_duration[sprite] % rowDuration;-
132 if (durationRemaining > 0
durationRemaining > 0Description
TRUEevaluated 121 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEnever evaluated
)
0-121
133 return
executed 121 times by 1 test: return durationRemaining;
Executed by:
  • tst_qquickanimatedsprite
durationRemaining;
executed 121 times by 1 test: return durationRemaining;
Executed by:
  • tst_qquickanimatedsprite
121
134 }
never executed: end of block
0
135 return
executed 467 times by 1 test: return rowDuration;
Executed by:
  • tst_qquickanimatedsprite
rowDuration;
executed 467 times by 1 test: return rowDuration;
Executed by:
  • tst_qquickanimatedsprite
467
136}-
137-
138int QQuickSpriteEngine::spriteY(int sprite) const-
139{-
140 if (!m_loaded
!m_loadedDescription
TRUEnever evaluated
FALSEevaluated 6352 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-6352
141 return
never executed: return 0;
0;
never executed: return 0;
0
142 int state = m_things[sprite];-
143 if (!m_sprites[state]->m_generatedCount
!m_sprites[sta...generatedCountDescription
TRUEevaluated 4954 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 1398 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
)
1398-4954
144 return
executed 4954 times by 4 tests: return m_sprites[state]->m_rowY;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_sprites[state]->m_rowY;
executed 4954 times by 4 tests: return m_sprites[state]->m_rowY;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
4954
145-
146 int extra;-
147 if (m_sprites[state]->frameSync()
m_sprites[state]->frameSync()Description
TRUEevaluated 262 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 1136 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
262-1136
148 extra = m_startTimes[sprite];
executed 262 times by 2 tests: extra = m_startTimes[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
262
149 else if (!m_duration[sprite]
!m_duration[sprite]Description
TRUEnever evaluated
FALSEevaluated 1136 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
0-1136
150 return
never executed: return m_sprites[state]->m_rowY;
m_sprites[state]->m_rowY;
never executed: return m_sprites[state]->m_rowY;
0
151 else-
152 extra = pseudospriteProgress(sprite, state);
executed 1136 times by 1 test: extra = pseudospriteProgress(sprite, state);
Executed by:
  • tst_qquickanimatedsprite
1136
153 if (m_sprites[state]->reverse()
m_sprites[state]->reverse()Description
TRUEnever evaluated
FALSEevaluated 1398 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
)
0-1398
154 extra = (m_sprites[state]->m_generatedCount - 1) - extra;
never executed: extra = (m_sprites[state]->m_generatedCount - 1) - extra;
0
155-
156-
157 return
executed 1398 times by 2 tests: return m_sprites[state]->m_rowY + m_sprites[state]->m_frameHeight * extra;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
m_sprites[state]->m_rowY + m_sprites[state]->m_frameHeight * extra;
executed 1398 times by 2 tests: return m_sprites[state]->m_rowY + m_sprites[state]->m_frameHeight * extra;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
1398
158}-
159-
160int QQuickSpriteEngine::spriteX(int sprite) const-
161{-
162 if (!m_loaded
!m_loadedDescription
TRUEnever evaluated
FALSEevaluated 5729 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-5729
163 return
never executed: return 0;
0;
never executed: return 0;
0
164 int state = m_things[sprite];-
165 if (!m_sprites[state]->m_generatedCount
!m_sprites[sta...generatedCountDescription
TRUEevaluated 4899 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 830 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
)
830-4899
166 return
executed 4899 times by 4 tests: return m_sprites[state]->m_rowStartX;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_sprites[state]->m_rowStartX;
executed 4899 times by 4 tests: return m_sprites[state]->m_rowStartX;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
4899
167-
168 int extra;-
169 if (m_sprites[state]->frameSync()
m_sprites[state]->frameSync()Description
TRUEevaluated 262 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 568 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
262-568
170 extra = m_startTimes[sprite];
executed 262 times by 2 tests: extra = m_startTimes[sprite];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
262
171 else if (!m_duration[sprite]
!m_duration[sprite]Description
TRUEnever evaluated
FALSEevaluated 568 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
0-568
172 return
never executed: return m_sprites[state]->m_rowStartX;
m_sprites[state]->m_rowStartX;
never executed: return m_sprites[state]->m_rowStartX;
0
173 else-
174 extra = pseudospriteProgress(sprite, state);
executed 568 times by 1 test: extra = pseudospriteProgress(sprite, state);
Executed by:
  • tst_qquickanimatedsprite
568
175 if (m_sprites[state]->reverse()
m_sprites[state]->reverse()Description
TRUEnever evaluated
FALSEevaluated 830 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
)
0-830
176 extra = (m_sprites[state]->m_generatedCount - 1) - extra;
never executed: extra = (m_sprites[state]->m_generatedCount - 1) - extra;
0
177-
178 if (extra
extraDescription
TRUEevaluated 486 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 344 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
)
344-486
179 return
executed 486 times by 1 test: return 0;
Executed by:
  • tst_qquickanimatedsprite
0;
executed 486 times by 1 test: return 0;
Executed by:
  • tst_qquickanimatedsprite
486
180 return
executed 344 times by 2 tests: return m_sprites[state]->m_rowStartX;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
m_sprites[state]->m_rowStartX;
executed 344 times by 2 tests: return m_sprites[state]->m_rowStartX;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
344
181}-
182-
183QQuickSprite* QQuickSpriteEngine::sprite(int sprite) const-
184{-
185 return
executed 137521 times by 4 tests: return m_sprites[m_things[sprite]];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_sprites[m_things[sprite]];
executed 137521 times by 4 tests: return m_sprites[m_things[sprite]];
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
137521
186}-
187-
188int QQuickSpriteEngine::spriteWidth(int sprite) const-
189{-
190 int state = m_things[sprite];-
191 return
executed 6634 times by 4 tests: return m_sprites[state]->m_frameWidth;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_sprites[state]->m_frameWidth;
executed 6634 times by 4 tests: return m_sprites[state]->m_frameWidth;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
6634
192}-
193-
194int QQuickSpriteEngine::spriteHeight(int sprite) const-
195{-
196 int state = m_things[sprite];-
197 return
executed 5699 times by 4 tests: return m_sprites[state]->m_frameHeight;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_sprites[state]->m_frameHeight;
executed 5699 times by 4 tests: return m_sprites[state]->m_frameHeight;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
5699
198}-
199-
200int QQuickSpriteEngine::spriteCount() const-
201{-
202 return
never executed: return m_imageStateCount;
m_imageStateCount;
never executed: return m_imageStateCount;
0
203}-
204-
205void QQuickStochasticEngine::setGoal(int state, int sprite, bool jump)-
206{-
207 if (sprite >= m_things.count()
sprite >= m_things.count()Description
TRUEnever evaluated
FALSEevaluated 1206 times by 2 tests
Evaluated by:
  • tst_qquickspritegoal
  • tst_qquickspritesequence
|| state >= m_states.count()
state >= m_states.count()Description
TRUEnever evaluated
FALSEevaluated 1206 times by 2 tests
Evaluated by:
  • tst_qquickspritegoal
  • tst_qquickspritesequence
0-1206
208 || sprite < 0
sprite < 0Description
TRUEnever evaluated
FALSEevaluated 1206 times by 2 tests
Evaluated by:
  • tst_qquickspritegoal
  • tst_qquickspritesequence
|| state < 0
state < 0Description
TRUEnever evaluated
FALSEevaluated 1206 times by 2 tests
Evaluated by:
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-1206
209 return;
never executed: return;
0
210 if (!jump
!jumpDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_qquickspritesequence
FALSEevaluated 1202 times by 2 tests
Evaluated by:
  • tst_qquickspritegoal
  • tst_qquickspritesequence
){
4-1202
211 m_goals[sprite] = state;-
212 return;
executed 4 times by 1 test: return;
Executed by:
  • tst_qquickspritesequence
4
213 }-
214-
215 if (m_things.at(sprite) == state
m_things.at(sprite) == stateDescription
TRUEnever evaluated
FALSEevaluated 1202 times by 2 tests
Evaluated by:
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-1202
216 return;
never executed: return;
0
217 m_things[sprite] = state;-
218 m_duration[sprite] = m_states.at(state)->variedDuration();-
219 m_goals[sprite] = -1;-
220 restart(sprite);-
221 stateChanged(sprite);-
222 m_states.at(state)->entered();-
223 return;
executed 1202 times by 2 tests: return;
Executed by:
  • tst_qquickspritegoal
  • tst_qquickspritesequence
1202
224}-
225-
226QQuickPixmap::Status QQuickSpriteEngine::status() const-
227{-
228 if (!m_startedImageAssembly
!m_startedImageAssemblyDescription
TRUEevaluated 40 times by 5 tests
Evaluated by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 128 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
40-128
229 return
executed 40 times by 5 tests: return QQuickPixmap::Null;
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
QQuickPixmap::Null;
executed 40 times by 5 tests: return QQuickPixmap::Null;
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
40
230 int null, loading, ready;-
231 null = loading = ready = 0;-
232 for (QQuickSprite* s : m_sprites) {-
233 switch (s->m_pix.status()) {-
234-
235 case
never executed: case QQuickPixmap::Null :
QQuickPixmap::Null :
never executed: case QQuickPixmap::Null :
null++; break;
never executed: break;
0
236 case
never executed: case QQuickPixmap::Loading :
QQuickPixmap::Loading :
never executed: case QQuickPixmap::Loading :
loading++; break;
never executed: break;
0
237 case
never executed: case QQuickPixmap::Error :
QQuickPixmap::Error :
never executed: case QQuickPixmap::Error :
return
never executed: return QQuickPixmap::Error;
QQuickPixmap::Error;
never executed: return QQuickPixmap::Error;
0
238 case
executed 144 times by 4 tests: case QQuickPixmap::Ready :
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
QQuickPixmap::Ready :
executed 144 times by 4 tests: case QQuickPixmap::Ready :
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
ready++; break;
executed 144 times by 4 tests: break;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
144
239 }-
240 }
executed 144 times by 4 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
144
241 if (null
nullDescription
TRUEnever evaluated
FALSEevaluated 128 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-128
242 return
never executed: return QQuickPixmap::Null;
QQuickPixmap::Null;
never executed: return QQuickPixmap::Null;
0
243 if (loading
loadingDescription
TRUEnever evaluated
FALSEevaluated 128 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-128
244 return
never executed: return QQuickPixmap::Loading;
QQuickPixmap::Loading;
never executed: return QQuickPixmap::Loading;
0
245 if (ready
readyDescription
TRUEevaluated 128 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEnever evaluated
)
0-128
246 return
executed 128 times by 4 tests: return QQuickPixmap::Ready;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
QQuickPixmap::Ready;
executed 128 times by 4 tests: return QQuickPixmap::Ready;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
128
247 return
never executed: return QQuickPixmap::Null;
QQuickPixmap::Null;
never executed: return QQuickPixmap::Null;
0
248}-
249-
250void QQuickSpriteEngine::startAssemblingImage()-
251{-
252 if (m_startedImageAssembly
m_startedImageAssemblyDescription
TRUEnever evaluated
FALSEevaluated 44 times by 5 tests
Evaluated by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-44
253 return;
never executed: return;
0
254 m_loaded = false;-
255 m_errorsPrinted = false;-
256-
257-
258-
259 QList<QQuickStochasticState*> removals;-
260-
261 for (QQuickStochasticState* s : qAsConst(m_states)) {-
262 QQuickSprite* sprite = qobject_cast<QQuickSprite*>(s);-
263 if (sprite
spriteDescription
TRUEevaluated 50 times by 5 tests
Evaluated by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEnever evaluated
) {
0-50
264 m_sprites << sprite;-
265 }
executed 50 times by 5 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
else {
50
266 removals << s;-
267 QMessageLogger(__FILE__, 368, __PRETTY_FUNCTION__).debug() << "Error: Non-sprite in QQuickSpriteEngine";-
268 }
never executed: end of block
0
269 }-
270 for (QQuickStochasticState* s : qAsConst(removals))-
271 m_states.removeAll(s);
never executed: m_states.removeAll(s);
0
272 m_startedImageAssembly = true;-
273}
executed 44 times by 5 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
44
274-
275QImage QQuickSpriteEngine::assembledImage(int maxSize)-
276{-
277 QQuickPixmap::Status stat = status();-
278 if (!m_errorsPrinted
!m_errorsPrintedDescription
TRUEevaluated 44 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEnever evaluated
&& stat == QQuickPixmap::Error
stat == QQuickPixmap::ErrorDescription
TRUEnever evaluated
FALSEevaluated 44 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
) {
0-44
279 for (QQuickSprite* s : qAsConst(m_sprites))-
280 if (s->m_pix.isError()
s->m_pix.isError()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
281 qmlWarning(s) << s->m_pix.error();
never executed: qmlWarning(s) << s->m_pix.error();
0
282 m_errorsPrinted = true;-
283 }
never executed: end of block
0
284-
285 if (stat != QQuickPixmap::Ready
stat != QQuickPixmap::ReadyDescription
TRUEnever evaluated
FALSEevaluated 44 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-44
286 return
never executed: return QImage();
QImage();
never executed: return QImage();
0
287-
288 int h = 0;-
289 int w = 0;-
290 m_maxFrames = 0;-
291 m_imageStateCount = 0;-
292 qreal pixelRatio = 1.0;-
293-
294 for (QQuickSprite* state : qAsConst(m_sprites)) {-
295 if (state->frames() > m_maxFrames
state->frames() > m_maxFramesDescription
TRUEevaluated 46 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 4 times by 2 tests
Evaluated by:
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
4-46
296 m_maxFrames = state->frames();
executed 46 times by 4 tests: m_maxFrames = state->frames();
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
46
297-
298 QImage img = state->m_pix.image();-
299-
300 {-
301 const QSize frameSize(state->m_frameWidth, state->m_frameHeight);-
302 if (!(img.size() - frameSize).isValid()
!(img.size() -...ize).isValid()Description
TRUEevaluated 10 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 40 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
) {
10-40
303 qmlWarning(state).nospace() << "SpriteEngine: Invalid frame size " << frameSize << "."-
304 " It's bigger than image size " << img.size() << ".";-
305 return
executed 10 times by 1 test: return QImage();
Executed by:
  • tst_qquickanimatedsprite
QImage();
executed 10 times by 1 test: return QImage();
Executed by:
  • tst_qquickanimatedsprite
10
306 }-
307 }-
308-
309-
310 if (!state->m_frameWidth
!state->m_frameWidthDescription
TRUEevaluated 34 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 6 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
6-34
311 state->m_frameWidth = img.width() / state->frames();
executed 34 times by 4 tests: state->m_frameWidth = img.width() / state->frames();
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
34
312-
313 if (!state->m_frameHeight
!state->m_frameHeightDescription
TRUEevaluated 34 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 6 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
)
6-34
314 state->m_frameHeight = img.height();
executed 34 times by 4 tests: state->m_frameHeight = img.height();
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
34
315-
316 pixelRatio = qMax(pixelRatio, state->devicePixelRatio());-
317-
318 if (state->frames() * state->frameWidth() > maxSize
state->frames(...th() > maxSizeDescription
TRUEevaluated 6 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 34 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
){
6-34
319 struct helper{-
320 static int divRoundUp(int a, int b){return
executed 6 times by 2 tests: return (a+b-1)/b;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
(a+b-1)/b;
executed 6 times by 2 tests: return (a+b-1)/b;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
}
6
321 };-
322 int rowsNeeded = helper::divRoundUp(state->frames(), (maxSize / state->frameWidth()));-
323 if (h + rowsNeeded * state->frameHeight() > maxSize
h + rowsNeeded...ht() > maxSizeDescription
TRUEnever evaluated
FALSEevaluated 6 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
){
0-6
324 if (rowsNeeded * state->frameHeight() > maxSize
rowsNeeded * s...ht() > maxSizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
325 qmlWarning(state) << "SpriteEngine: Animation too large to fit in one texture:" << state->source().toLocalFile();
never executed: qmlWarning(state) << "SpriteEngine: Animation too large to fit in one texture:" << state->source().toLocalFile();
0
326 else-
327 qmlWarning(state) << "SpriteEngine: Animations too large to fit in one texture, pushed over the edge by:" << state->source().toLocalFile();
never executed: qmlWarning(state) << "SpriteEngine: Animations too large to fit in one texture, pushed over the edge by:" << state->source().toLocalFile();
0
328 qmlWarning(state) << "SpriteEngine: Your texture max size today is " << maxSize;-
329 return
never executed: return QImage();
QImage();
never executed: return QImage();
0
330 }-
331 state->m_generatedCount = rowsNeeded;-
332 h += state->frameHeight() * rowsNeeded;-
333 w = qMax(w, ((int)(maxSize / state->frameWidth())) * state->frameWidth());-
334 m_imageStateCount += rowsNeeded;-
335 }
executed 6 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
else{
6
336 h += state->frameHeight();-
337 w = qMax(w, state->frameWidth() * state->frames());-
338 m_imageStateCount++;-
339 }
executed 34 times by 4 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
34
340 }-
341-
342 if (h > maxSize
h > maxSizeDescription
TRUEnever evaluated
FALSEevaluated 34 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
){
0-34
343 QMessageLogger(__FILE__, 444, __PRETTY_FUNCTION__).warning() << "SpriteEngine: Too many animations to fit in one texture...";-
344 QMessageLogger(__FILE__, 445, __PRETTY_FUNCTION__).warning() << "SpriteEngine: Your texture max size today is " << maxSize;-
345 return
never executed: return QImage();
QImage();
never executed: return QImage();
0
346 }-
347-
348-
349 QImage image(w * pixelRatio, h * pixelRatio, QImage::Format_ARGB32_Premultiplied);-
350 image.setDevicePixelRatio(pixelRatio);-
351 image.fill(0);-
352 QPainter p(&image);-
353 int y = 0;-
354 for (QQuickSprite* state : qAsConst(m_sprites)) {-
355 QImage img(state->m_pix.image());-
356 const int frameWidth = state->m_frameWidth;-
357 const int frameHeight = state->m_frameHeight;-
358 const int imgHeight = img.height() / img.devicePixelRatioF();-
359 const int imgWidth = img.width() / img.devicePixelRatioF();-
360 if (imgHeight == frameHeight
imgHeight == frameHeightDescription
TRUEevaluated 36 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
&& imgWidth < maxSize
imgWidth < maxSizeDescription
TRUEevaluated 34 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickspritesequence
){
2-36
361 p.drawImage(QRect(0, y, state->m_frames * frameWidth, frameHeight),-
362 img,-
363 QRect(state->m_frameX * img.devicePixelRatioF(), 0, state->m_frames * frameWidth * img.devicePixelRatioF(), frameHeight * img.devicePixelRatioF()));-
364 state->m_rowStartX = 0;-
365 state->m_rowY = y;-
366 y += frameHeight;-
367 }
executed 34 times by 4 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
else {
34
368 state->m_framesPerRow = w/frameWidth;-
369 state->m_rowY = y;-
370 int x = 0;-
371 int curX = state->m_frameX;-
372 int curY = state->m_frameY;-
373 int framesLeft = state->frames();-
374 while (framesLeft > 0
framesLeft > 0Description
TRUEevaluated 224 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 6 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
){
6-224
375 if (w - x + curX <= imgWidth
w - x + curX <= imgWidthDescription
TRUEevaluated 72 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 152 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
){
72-152
376 int copied = w - x;-
377 framesLeft -= copied/frameWidth;-
378 p.drawImage(QRect(x, y, copied, frameHeight),-
379 img,-
380 QRect(curX * img.devicePixelRatioF(), curY * img.devicePixelRatioF(), copied * img.devicePixelRatioF(), frameHeight * img.devicePixelRatioF()));-
381 y += frameHeight;-
382 curX += copied;-
383 x = 0;-
384 if (curX == imgWidth
curX == imgWidthDescription
TRUEevaluated 10 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 62 times by 1 test
Evaluated by:
  • tst_qquickspritesequence
){
10-62
385 curX = 0;-
386 curY += frameHeight;-
387 }
executed 10 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
10
388 }
executed 72 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
else{
72
389 int copied = imgWidth - curX;-
390 framesLeft -= copied/frameWidth;-
391 p.drawImage(QRect(x, y, copied, frameHeight),-
392 img,-
393 QRect(curX * img.devicePixelRatioF(), curY * img.devicePixelRatioF(), copied * img.devicePixelRatioF(), frameHeight * img.devicePixelRatioF()));-
394 curY += frameHeight;-
395 x += copied;-
396 curX = 0;-
397 }
executed 152 times by 1 test: end of block
Executed by:
  • tst_qquickanimatedsprite
152
398 }-
399 if (x
xDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickspritesequence
)
2-4
400 y += frameHeight;
executed 4 times by 1 test: y += frameHeight;
Executed by:
  • tst_qquickanimatedsprite
4
401 }
executed 6 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
6
402 }-
403 m_loaded = true;-
404 m_startedImageAssembly = false;-
405 return
executed 34 times by 4 tests: return image;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
image;
executed 34 times by 4 tests: return image;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
34
406}-
407-
408-
409void QQuickStochasticEngine::setCount(int c)-
410{-
411 m_things.resize(c);-
412 m_goals.resize(c);-
413 m_duration.resize(c);-
414 m_startTimes.resize(c);-
415}
executed 127 times by 6 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
127
416-
417void QQuickStochasticEngine::start(int index, int state)-
418{-
419 if (index >= m_things.count()
index >= m_things.count()Description
TRUEnever evaluated
FALSEevaluated 5184 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-5184
420 return;
never executed: return;
0
421 m_things[index] = state;-
422 m_duration[index] = m_states.at(state)->variedDuration();-
423 if (m_states.at(state)->randomStart()
m_states.at(st...>randomStart()Description
TRUEnever evaluated
FALSEevaluated 5184 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-5184
424 m_startTimes[index] = NINF;
never executed: m_startTimes[index] = NINF;
0
425 else-
426 m_startTimes[index] = 0;
executed 5184 times by 5 tests: m_startTimes[index] = 0;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
5184
427 m_goals[index] = -1;-
428 m_addAdvance = false;-
429 restart(index);-
430 m_addAdvance = true;-
431}
executed 5184 times by 5 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
5184
432-
433void QQuickStochasticEngine::stop(int index)-
434{-
435 if (index >= m_things.count()
index >= m_things.count()Description
TRUEnever evaluated
FALSEevaluated 380 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
)
0-380
436 return;
never executed: return;
0
437-
438 for (int i=0; i<m_stateUpdates.count()
i<m_stateUpdates.count()Description
TRUEevaluated 5024 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
FALSEevaluated 380 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
; i++)
380-5024
439 m_stateUpdates[i].second.removeAll(index);
executed 5024 times by 1 test: m_stateUpdates[i].second.removeAll(index);
Executed by:
  • tst_qquickparticlegroup
5024
440}
executed 380 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
380
441-
442void QQuickStochasticEngine::restart(int index)-
443{-
444 bool randomStart = (m_startTimes.at(index) == NINF);-
445 m_startTimes[index] = m_timeOffset;-
446 if (m_addAdvance
m_addAdvanceDescription
TRUEevaluated 18349 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
FALSEevaluated 2771 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
)
2771-18349
447 m_startTimes[index] += m_advanceTime.elapsed();
executed 18349 times by 1 test: m_startTimes[index] += m_advanceTime.elapsed();
Executed by:
  • tst_qquickparticlegroup
18349
448 if (randomStart
randomStartDescription
TRUEnever evaluated
FALSEevaluated 21120 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
)
0-21120
449 m_startTimes[index] -= QRandomGenerator::global()->bounded(m_duration.at(index));
never executed: m_startTimes[index] -= QRandomGenerator::global()->bounded(m_duration.at(index));
0
450 int time = m_duration.at(index) + m_startTimes.at(index);-
451 for (int i=0; i<m_stateUpdates.count()
i<m_stateUpdates.count()Description
TRUEevaluated 345041 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
FALSEevaluated 21120 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
; i++)
21120-345041
452 m_stateUpdates[i].second.removeAll(index);
executed 345041 times by 1 test: m_stateUpdates[i].second.removeAll(index);
Executed by:
  • tst_qquickparticlegroup
345041
453 if (m_duration.at(index) >= 0
m_duration.at(index) >= 0Description
TRUEevaluated 21120 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
FALSEnever evaluated
)
0-21120
454 addToUpdateList(time, index);
executed 21120 times by 1 test: addToUpdateList(time, index);
Executed by:
  • tst_qquickparticlegroup
21120
455}
executed 21120 times by 1 test: end of block
Executed by:
  • tst_qquickparticlegroup
21120
456-
457void QQuickSpriteEngine::restart(int index)-
458{-
459 bool randomStart = (m_startTimes.at(index) == NINF);-
460 if (m_loaded
m_loadedDescription
TRUEevaluated 3722 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 12 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
&& m_sprites.at(m_things.at(index))->frameSync()
m_sprites.at(m...)->frameSync()Description
TRUEevaluated 38 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 3684 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
) {
12-3722
461 m_startTimes[index] = 0;-
462 if (randomStart
randomStartDescription
TRUEnever evaluated
FALSEevaluated 38 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
&& m_sprites.at(m_things.at(index))->m_generatedCount
m_sprites.at(m...generatedCountDescription
TRUEnever evaluated
FALSEnever evaluated
)
0-38
463 m_startTimes[index] += QRandomGenerator::global()->bounded(m_sprites.at(m_things.at(index))->m_generatedCount);
never executed: m_startTimes[index] += QRandomGenerator::global()->bounded(m_sprites.at(m_things.at(index))->m_generatedCount);
0
464 }
executed 38 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
else {
38
465 m_startTimes[index] = m_timeOffset;-
466 if (m_addAdvance
m_addAdvanceDescription
TRUEevaluated 1200 times by 1 test
Evaluated by:
  • tst_qquickspritegoal
FALSEevaluated 2496 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
1200-2496
467 m_startTimes[index] += m_advanceTime.elapsed();
executed 1200 times by 1 test: m_startTimes[index] += m_advanceTime.elapsed();
Executed by:
  • tst_qquickspritegoal
1200
468 if (randomStart
randomStartDescription
TRUEnever evaluated
FALSEevaluated 3696 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
0-3696
469 m_startTimes[index] -= QRandomGenerator::global()->bounded(m_duration.at(index));
never executed: m_startTimes[index] -= QRandomGenerator::global()->bounded(m_duration.at(index));
0
470 int time = spriteDuration(index) + m_startTimes.at(index);-
471 if (randomStart
randomStartDescription
TRUEnever evaluated
FALSEevaluated 3696 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
) {
0-3696
472 int curTime = m_timeOffset + (m_addAdvance
m_addAdvanceDescription
TRUEnever evaluated
FALSEnever evaluated
? m_advanceTime.elapsed() : 0);
0
473 while (time < curTime
time < curTimeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
474 time += spriteDuration(index);
never executed: time += spriteDuration(index);
0
475 }
never executed: end of block
0
476-
477 for (int i=0; i<m_stateUpdates.count()
i<m_stateUpdates.count()Description
TRUEevaluated 130735 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 3696 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
; i++)
3696-130735
478 m_stateUpdates[i].second.removeAll(index);
executed 130735 times by 4 tests: m_stateUpdates[i].second.removeAll(index);
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
130735
479 addToUpdateList(time, index);-
480 }
executed 3696 times by 4 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickspritegoal
  • tst_qquickspritesequence
3696
481}-
482-
483void QQuickStochasticEngine::advance(int idx)-
484{-
485 if (idx >= m_things.count()
idx >= m_things.count()Description
TRUEnever evaluated
FALSEevaluated 18432 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
)
0-18432
486 return;
never executed: return;
0
487 int nextIdx = nextState(m_things.at(idx), idx);-
488 m_things[idx] = nextIdx;-
489 m_duration[idx] = m_states.at(nextIdx)->variedDuration();-
490 restart(idx);-
491 m_states.at(nextIdx)->entered();-
492 stateChanged(idx);-
493}
executed 18432 times by 1 test: end of block
Executed by:
  • tst_qquickparticlegroup
18432
494-
495void QQuickSpriteEngine::advance(int idx)-
496{-
497 if (!m_loaded
!m_loadedDescription
TRUEnever evaluated
FALSEevaluated 60 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
) {
0-60
498 QMessageLogger(__FILE__, 608, __PRETTY_FUNCTION__).warning() << QLatin1String("QQuickSpriteEngine: Trying to advance sprites before sprites finish loading. Ignoring directive");-
499 return;
never executed: return;
0
500 }-
501-
502 if (idx >= m_things.count()
idx >= m_things.count()Description
TRUEnever evaluated
FALSEevaluated 60 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
)
0-60
503 return;
never executed: return;
0
504 if (m_duration.at(idx) == 0
m_duration.at(idx) == 0Description
TRUEevaluated 32 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEevaluated 28 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
) {
28-32
505 if (m_sprites.at(m_things.at(idx))->frameSync()
m_sprites.at(m...)->frameSync()Description
TRUEevaluated 32 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
FALSEnever evaluated
) {
0-32
506-
507 m_startTimes[idx]++;-
508 if (m_startTimes.at(idx) < m_sprites.at(m_things.at(idx))->m_generatedCount
m_startTimes.a...generatedCountDescription
TRUEevaluated 12 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 20 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
) {
12-20
509-
510 stateChanged(idx);-
511 return;
executed 12 times by 1 test: return;
Executed by:
  • tst_qquickanimatedsprite
12
512 }-
513 }
executed 20 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
20
514-
515 }
executed 20 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
else if (m_startTimes.at(idx) + m_duration.at(idx)
m_startTimes.a...lapsed() : 0))Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 16 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
12-20
516 > int(m_timeOffset + (m_addAdvance ? m_advanceTime.elapsed() : 0))
m_startTimes.a...lapsed() : 0))Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • tst_qquickanimatedsprite
FALSEevaluated 16 times by 2 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
) {
12-16
517-
518 stateChanged(idx);-
519 addToUpdateList(spriteStart(idx) + spriteDuration(idx) + (m_addAdvance ? m_advanceTime.elapsed() : 0), idx);-
520 return;
executed 12 times by 1 test: return;
Executed by:
  • tst_qquickanimatedsprite
12
521 }-
522 int nextIdx = nextState(m_things.at(idx), idx);-
523 m_things[idx] = nextIdx;-
524 m_duration[idx] = m_states.at(nextIdx)->variedDuration();-
525 restart(idx);-
526 m_states.at(nextIdx)->entered();-
527 stateChanged(idx);-
528}
executed 36 times by 2 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickspritesequence
36
529-
530int QQuickStochasticEngine::nextState(int curState, int curThing)-
531{-
532 int nextIdx = -1;-
533 int goalPath = goalSeek(curState, curThing);-
534 if (goalPath == -1
goalPath == -1Description
TRUEevaluated 18468 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEnever evaluated
){
0-18468
535 qreal r = QRandomGenerator::global()->generateDouble();-
536 qreal total = 0.0;-
537 for (QVariantMap::const_iterator iter=m_states.at(curState)->m_to.constBegin();-
538 iter!=m_states.at(curState)->m_to.constEnd()
iter!=m_states..._to.constEnd()Description
TRUEevaluated 1330 times by 2 tests
Evaluated by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEevaluated 18468 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
; ++iter)
1330-18468
539 total += (*iter).toReal();
executed 1330 times by 2 tests: total += (*iter).toReal();
Executed by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
1330
540 r*=total;-
541 for (QVariantMap::const_iterator iter= m_states.at(curState)->m_to.constBegin();-
542 iter!=m_states.at(curState)->m_to.constEnd()
iter!=m_states..._to.constEnd()Description
TRUEevaluated 1330 times by 2 tests
Evaluated by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEevaluated 17138 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
; ++iter){
1330-17138
543 if (r < (*iter).toReal()
r < (*iter).toReal()Description
TRUEevaluated 1330 times by 2 tests
Evaluated by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEnever evaluated
){
0-1330
544 bool superBreak = false;-
545 for (int i=0; i<m_states.count()
i<m_states.count()Description
TRUEevaluated 1332 times by 2 tests
Evaluated by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEnever evaluated
; i++){
0-1332
546 if (m_states.at(i)->name() == iter.key()
m_states.at(i)... == iter.key()Description
TRUEevaluated 1330 times by 2 tests
Evaluated by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickspritesequence
){
2-1330
547 nextIdx = i;-
548 superBreak = true;-
549 break;
executed 1330 times by 2 tests: break;
Executed by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
1330
550 }-
551 }
executed 2 times by 1 test: end of block
Executed by:
  • tst_qquickspritesequence
2
552 if (superBreak
superBreakDescription
TRUEevaluated 1330 times by 2 tests
Evaluated by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEnever evaluated
)
0-1330
553 break;
executed 1330 times by 2 tests: break;
Executed by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
1330
554 }
never executed: end of block
0
555 r -= (*iter).toReal();-
556 }
never executed: end of block
0
557 }
executed 18468 times by 3 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
else{
18468
558 nextIdx = goalPath;-
559 }
never executed: end of block
0
560 if (nextIdx == -1
nextIdx == -1Description
TRUEevaluated 17138 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEevaluated 1330 times by 2 tests
Evaluated by:
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
)
1330-17138
561 nextIdx = curState;
executed 17138 times by 3 tests: nextIdx = curState;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
17138
562 return
executed 18468 times by 3 tests: return nextIdx;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
nextIdx;
executed 18468 times by 3 tests: return nextIdx;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
18468
563}-
564-
565uint QQuickStochasticEngine::updateSprites(uint time)-
566{-
567-
568 m_timeOffset = time;-
569 m_addAdvance = false;-
570 int i = 0;-
571 for (; i < m_stateUpdates.count()
i < m_stateUpdates.count()Description
TRUEevaluated 2660 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 357 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
&& time >= m_stateUpdates.at(i).first
time >= m_stat...es.at(i).firstDescription
TRUEevaluated 638 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEevaluated 2022 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
; ++i) {
357-2660
572 const auto copy = m_stateUpdates.at(i).second;-
573 for (int idx : copy)-
574 advance(idx);
executed 18460 times by 3 tests: advance(idx);
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
18460
575 }
executed 638 times by 3 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
638
576-
577 m_stateUpdates.remove(0, i);-
578 m_advanceTime.start();-
579 m_addAdvance = true;-
580 if (m_stateUpdates.isEmpty()
m_stateUpdates.isEmpty()Description
TRUEevaluated 357 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 2022 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
)
357-2022
581 return
executed 357 times by 5 tests: return uint(-1);
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
uint(-1);
executed 357 times by 5 tests: return uint(-1);
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
357
582 return
executed 2022 times by 5 tests: return m_stateUpdates.constFirst().first;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
m_stateUpdates.constFirst().first;
executed 2022 times by 5 tests: return m_stateUpdates.constFirst().first;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
2022
583}-
584-
585int QQuickStochasticEngine::goalSeek(int curIdx, int spriteIdx, int dist)-
586{-
587 QString goalName;-
588 if (m_goals.at(spriteIdx) != -1
m_goals.at(spriteIdx) != -1Description
TRUEnever evaluated
FALSEevaluated 18468 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
)
0-18468
589 goalName = m_states.at(m_goals.at(spriteIdx))->name();
never executed: goalName = m_states.at(m_goals.at(spriteIdx))->name();
0
590 else-
591 goalName = m_globalGoal;
executed 18468 times by 3 tests: goalName = m_globalGoal;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
18468
592 if (goalName.isEmpty()
goalName.isEmpty()Description
TRUEevaluated 18468 times by 3 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
FALSEnever evaluated
)
0-18468
593 return
executed 18468 times by 3 tests: return -1;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
-1;
executed 18468 times by 3 tests: return -1;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickparticlegroup
  • tst_qquickspritesequence
18468
594-
595-
596 for (int i=0; i<m_states.count()
i<m_states.count()Description
TRUEnever evaluated
FALSEnever evaluated
; i++)
0
597 if (m_states.at(curIdx)->name() == goalName
m_states.at(cu...() == goalNameDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
598 return
never executed: return curIdx;
curIdx;
never executed: return curIdx;
0
599 if (dist < 0
dist < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
600 dist = m_states.count();
never executed: dist = m_states.count();
0
601 QQuickStochasticState* curState = m_states.at(curIdx);-
602 for (QVariantMap::const_iterator iter = curState->m_to.constBegin();-
603 iter!=curState->m_to.constEnd()
iter!=curState..._to.constEnd()Description
TRUEnever evaluated
FALSEnever evaluated
; ++iter){
0
604 if (iter.key() == goalName
iter.key() == goalNameDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
605 for (int i=0; i<m_states.count()
i<m_states.count()Description
TRUEnever evaluated
FALSEnever evaluated
; i++)
0
606 if (m_states.at(i)->name() == goalName
m_states.at(i)...() == goalNameDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
607 return
never executed: return i;
i;
never executed: return i;
0
608 }
never executed: end of block
0
609 QSet<int> options;-
610 for (int i=1; i<dist
i<distDescription
TRUEnever evaluated
FALSEnever evaluated
; i++){
0
611 for (QVariantMap::const_iterator iter = curState->m_to.constBegin();-
612 iter!=curState->m_to.constEnd()
iter!=curState..._to.constEnd()Description
TRUEnever evaluated
FALSEnever evaluated
; ++iter){
0
613 int option = -1;-
614 for (int j=0; j<m_states.count()
j<m_states.count()Description
TRUEnever evaluated
FALSEnever evaluated
; j++)
0
615 if (m_states.at(j)->name() == iter.key()
m_states.at(j)... == iter.key()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
616 if (goalSeek(j, spriteIdx, i) != -1
goalSeek(j, sp...eIdx, i) != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
617 option = j;
never executed: option = j;
0
618 if (option != -1
option != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
619 options << option;
never executed: options << option;
0
620 }
never executed: end of block
0
621 if (!options.isEmpty()
!options.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
){
0
622 if (options.count()==1
options.count()==1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
623 return
never executed: return *(options.begin());
*(options.begin());
never executed: return *(options.begin());
0
624 int option = -1;-
625 qreal r = QRandomGenerator::global()->generateDouble();-
626 qreal total = 0;-
627 for (QSet<int>::const_iterator iter=options.constBegin();-
628 iter!=options.constEnd()
iter!=options.constEnd()Description
TRUEnever evaluated
FALSEnever evaluated
; ++iter)
0
629 total += curState->m_to.value(m_states.at((*iter))->name()).toReal();
never executed: total += curState->m_to.value(m_states.at((*iter))->name()).toReal();
0
630 r *= total;-
631 for (QVariantMap::const_iterator iter = curState->m_to.constBegin();-
632 iter!=curState->m_to.constEnd()
iter!=curState..._to.constEnd()Description
TRUEnever evaluated
FALSEnever evaluated
; ++iter){
0
633 bool superContinue = true;-
634 for (int j=0; j<m_states.count()
j<m_states.count()Description
TRUEnever evaluated
FALSEnever evaluated
; j++)
0
635 if (m_states.at(j)->name() == iter.key()
m_states.at(j)... == iter.key()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
636 if (options.contains(j)
options.contains(j)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
637 superContinue = false;
never executed: superContinue = false;
0
638 if (superContinue
superContinueDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
639 continue;
never executed: continue;
0
640 if (r < (*iter).toReal()
r < (*iter).toReal()Description
TRUEnever evaluated
FALSEnever evaluated
){
0
641 bool superBreak = false;-
642 for (int j=0; j<m_states.count()
j<m_states.count()Description
TRUEnever evaluated
FALSEnever evaluated
; j++){
0
643 if (m_states.at(j)->name() == iter.key()
m_states.at(j)... == iter.key()Description
TRUEnever evaluated
FALSEnever evaluated
){
0
644 option = j;-
645 superBreak = true;-
646 break;
never executed: break;
0
647 }-
648 }
never executed: end of block
0
649 if (superBreak
superBreakDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
650 break;
never executed: break;
0
651 }
never executed: end of block
0
652 r-=(*iter).toReal();-
653 }
never executed: end of block
0
654 return
never executed: return option;
option;
never executed: return option;
0
655 }-
656 }
never executed: end of block
0
657 return
never executed: return -1;
-1;
never executed: return -1;
0
658}-
659-
660void QQuickStochasticEngine::addToUpdateList(uint t, int idx)-
661{-
662 for (int i=0; i<m_stateUpdates.count()
i<m_stateUpdates.count()Description
TRUEevaluated 447545 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
FALSEevaluated 770 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
; i++){
770-447545
663 if (m_stateUpdates.at(i).first == t
m_stateUpdates...(i).first == tDescription
TRUEevaluated 23896 times by 4 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
FALSEevaluated 423649 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
){
23896-423649
664 m_stateUpdates[i].second << idx;-
665 return;
executed 23896 times by 4 tests: return;
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
23896
666 } else if (m_stateUpdates.at(i).first > t
m_stateUpdates.at(i).first > tDescription
TRUEevaluated 162 times by 1 test
Evaluated by:
  • tst_qquickparticlegroup
FALSEevaluated 423487 times by 5 tests
Evaluated by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
) {
162-423487
667 QVector<int> tmpList;-
668 tmpList << idx;-
669 m_stateUpdates.insert(i, qMakePair(t, tmpList));-
670 return;
executed 162 times by 1 test: return;
Executed by:
  • tst_qquickparticlegroup
162
671 }-
672 }
executed 423487 times by 5 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
423487
673 QVector<int> tmpList;-
674 tmpList << idx;-
675 m_stateUpdates << qMakePair(t, tmpList);-
676}
executed 770 times by 5 tests: end of block
Executed by:
  • tst_qquickanimatedsprite
  • tst_qquickimageparticle
  • tst_qquickparticlegroup
  • tst_qquickspritegoal
  • tst_qquickspritesequence
770
677-
678-
679-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.0