Skip to content

Commit 8835f4a

Browse files
author
Grok Compression
committed
segment: use memset for faster layer clearing
1 parent 05a18ea commit 8835f4a

File tree

1 file changed

+6
-9
lines changed

1 file changed

+6
-9
lines changed

src/lib/core/canvas/codeblock/CodeblockDecompressImpl.h

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,8 @@ struct Segment
6868
totalPasses_ = 0;
6969
totalBytes_ = 0;
7070
maxPasses_ = 0;
71-
for(uint8_t i = 0; i < numLayers_; ++i)
72-
{
73-
calculatedPassesInLayer_[i] = 0;
74-
signalledBytesInLayer_[i] = 0;
75-
}
71+
memset(calculatedPassesInLayer_, 0, numLayers_ * sizeof(uint8_t));
72+
memset(signalledBytesInLayer_, 0, numLayers_ * sizeof(uint16_t));
7673
for(auto& b : data_chunks_)
7774
delete b;
7875
data_chunks_.clear();
@@ -119,17 +116,17 @@ struct Segment
119116
/**
120117
* @brief Number of layers for this code block
121118
*/
122-
uint16_t numLayers_;
119+
uint16_t numLayers_ = 0;
123120

124121
/**
125122
* @brief Running total of number of passes across multiple layers
126123
*/
127-
uint8_t totalPasses_;
124+
uint8_t totalPasses_ = 0;
128125
/**
129126
* @brief Maximum number of passes in this code block
130127
* This is determined by the code block style i.e. mode switch
131128
*/
132-
uint8_t maxPasses_;
129+
uint8_t maxPasses_ = 0;
133130
/**
134131
* @brief Number of passes contributed by layer, calculated by decompress codeblock
135132
* when parsing packet header
@@ -139,7 +136,7 @@ struct Segment
139136
/**
140137
* @brief Total number of bytes in segment
141138
*/
142-
uint32_t totalBytes_;
139+
uint32_t totalBytes_ = 0;
143140

144141
/**
145142
* @brief Number of bytes signalled by layer

0 commit comments

Comments
 (0)