X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;ds=inline;f=pv%2Fdata%2Flogicsegment.cpp;h=aee09bd70b1808df035b3f4cf49099e8caa1ceb5;hb=5ccfc97e20bbea19b9bc37905dd4cf63ee1f6303;hp=30e4e67dcecced37fa8267b489c9364363e1223a;hpb=4c60462b00cc329e61daedd1c2e66724077bd412;p=pulseview.git
diff --git a/pv/data/logicsegment.cpp b/pv/data/logicsegment.cpp
index 30e4e67..aee09bd 100644
--- a/pv/data/logicsegment.cpp
+++ b/pv/data/logicsegment.cpp
@@ -14,8 +14,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ * along with this program; if not, see .
*/
#include
@@ -47,7 +46,7 @@ const float LogicSegment::LogMipMapScaleFactor = logf(MipMapScaleFactor);
const uint64_t LogicSegment::MipMapDataUnit = 64*1024; // bytes
LogicSegment::LogicSegment(shared_ptr logic, uint64_t samplerate,
- const uint64_t expected_num_samples) :
+ const uint64_t expected_num_samples) :
Segment(samplerate, logic->unit_size()),
last_append_sample_(0)
{
@@ -71,7 +70,7 @@ uint64_t LogicSegment::unpack_sample(const uint8_t *ptr) const
return *(uint64_t*)ptr;
#else
uint64_t value = 0;
- switch(unit_size_) {
+ switch (unit_size_) {
default:
value |= ((uint64_t)ptr[7]) << 56;
/* FALLTHRU */
@@ -108,7 +107,7 @@ void LogicSegment::pack_sample(uint8_t *ptr, uint64_t value)
#ifdef HAVE_UNALIGNED_LITTLE_ENDIAN_ACCESS
*(uint64_t*)ptr = value;
#else
- switch(unit_size_) {
+ switch (unit_size_) {
default:
ptr[7] = value >> 56;
/* FALLTHRU */
@@ -173,8 +172,7 @@ void LogicSegment::reallocate_mipmap_level(MipMapLevel &m)
{
const uint64_t new_data_length = ((m.length + MipMapDataUnit - 1) /
MipMapDataUnit) * MipMapDataUnit;
- if (new_data_length > m.data_length)
- {
+ if (new_data_length > m.data_length) {
m.data_length = new_data_length;
// Padding is added to allow for the uint64_t write word
@@ -208,14 +206,12 @@ void LogicSegment::append_payload_to_mipmap()
const uint8_t *const end_src_ptr = (uint8_t*)data_.data() +
m0.length * unit_size_ * MipMapScaleFactor;
for (src_ptr = (uint8_t*)data_.data() +
- prev_length * unit_size_ * MipMapScaleFactor;
- src_ptr < end_src_ptr;)
- {
+ prev_length * unit_size_ * MipMapScaleFactor;
+ src_ptr < end_src_ptr;) {
// Accumulate transitions which have occurred in this sample
accumulator = 0;
diff_counter = MipMapScaleFactor;
- while (diff_counter-- > 0)
- {
+ while (diff_counter-- > 0) {
const uint64_t sample = unpack_sample(src_ptr);
accumulator |= last_append_sample_ ^ sample;
last_append_sample_ = sample;
@@ -227,8 +223,7 @@ void LogicSegment::append_payload_to_mipmap()
}
// Compute higher level mipmaps
- for (unsigned int level = 1; level < ScaleStepCount; level++)
- {
+ for (unsigned int level = 1; level < ScaleStepCount; level++) {
MipMapLevel &m = mip_map_[level];
const MipMapLevel &ml = mip_map_[level-1];
@@ -248,14 +243,12 @@ void LogicSegment::append_payload_to_mipmap()
const uint8_t *const end_dest_ptr =
(uint8_t*)m.data + unit_size_ * m.length;
for (dest_ptr = (uint8_t*)m.data +
- unit_size_ * prev_length;
- dest_ptr < end_dest_ptr;
- dest_ptr += unit_size_)
- {
+ unit_size_ * prev_length;
+ dest_ptr < end_dest_ptr;
+ dest_ptr += unit_size_) {
accumulator = 0;
diff_counter = MipMapScaleFactor;
- while (diff_counter-- > 0)
- {
+ while (diff_counter-- > 0) {
accumulator |= unpack_sample(src_ptr);
src_ptr += unit_size_;
}
@@ -299,8 +292,7 @@ void LogicSegment::get_subsampled_edges(
last_sample = (get_sample(start) & sig_mask) != 0;
edges.push_back(pair(index++, last_sample));
- while (index + block_length <= end)
- {
+ while (index + block_length <= end) {
//----- Continue to search -----//
level = min_level;
@@ -308,17 +300,15 @@ void LogicSegment::get_subsampled_edges(
// at the minimum level.
fast_forward = (mip_map_[level].data != nullptr);
- if (min_length < MipMapScaleFactor)
- {
+ if (min_length < MipMapScaleFactor) {
// Search individual samples up to the beginning of
// the next first level mip map block
const uint64_t final_index = min(end,
pow2_ceil(index, MipMapScalePower));
for (; index < final_index &&
- (index & ~(~0 << MipMapScalePower)) != 0;
- index++)
- {
+ (index & ~((uint64_t)(~0) << MipMapScalePower)) != 0;
+ index++) {
const bool sample =
(get_sample(index) & sig_mask) != 0;
@@ -328,9 +318,7 @@ void LogicSegment::get_subsampled_edges(
break;
}
}
- }
- else
- {
+ } else {
// If resolution is less than a mip map block,
// round up to the beginning of the mip-map block
// for this level of detail
@@ -369,7 +357,7 @@ void LogicSegment::get_subsampled_edges(
sig_mask))
break;
- if ((offset & ~(~0 << MipMapScalePower)) == 0) {
+ if ((offset & ~((uint64_t)(~0) << MipMapScalePower)) == 0) {
// If we are now at the beginning of a
// higher level mip-map block ascend one
// level
@@ -399,7 +387,7 @@ void LogicSegment::get_subsampled_edges(
// Check if we reached the last block at this
// level, or if there was a change in this block
if (offset >= mip_map_[level].length ||
- (get_subsample(level, offset) &
+ (get_subsample(level, offset) &
sig_mask)) {
// Zoom in unless we reached the minimum
// zoom