/* returns false if checksum matched and true if failed */ void RecordSetInBase::checksum() const { int const cs(check_size(check_type_)); if (cs > 0) /* checksum records */ { Hash check; check.append (head_ + begin_, size_ - begin_); /* records */ check.append (head_, begin_ - cs); /* header */ assert(cs <= MAX_CHECKSUM_SIZE); byte_t result[MAX_CHECKSUM_SIZE]; check.gather<sizeof(result)>(result); const byte_t* const stored_checksum(head_ + begin_ - cs); if (gu_unlikely(memcmp (result, stored_checksum, cs))) { gu_throw_error(EINVAL) << "RecordSet checksum does not match:" << "\ncomputed: " << gu::Hexdump(result, cs) << "\nfound: " << gu::Hexdump(stored_checksum, cs); } } }
void append(Hash& hash) { hash.append(VERSION); // Knobs that change the SyLens algo hash.append(distorter.compute_hash()); hash.append(uv_attrib_name); ModifyGeo::append(hash); // the super called he wants his pointers back }
void append_transform_to(Hash& hash) { xform.append(hash); knob("xform")->append(hash, NULL); hash.append(flip_); hash.append(flop_); hash.append(wrap_); }
/* virtual */ void ABCReadGeo::append(Hash& hash) { p_tableKnobI = knob("Obj_list")->tableKnob(); Op::append(hash); hash.append(outputContext().frame()); hash.append(m_filename); hash.append(interpolate); if (p_tableKnobI) { for (unsigned i = 0; i < active_objs.size(); i++) { hash.append(active_objs[i]); hash.append(bbox_objs[i]); } } }
/* virtual */ void append(Hash& hash) { hash.append(VERSION); hash.append(distorter.compute_hash()); Material::append(hash); }
// The hash value must change or Nuke will think the picture is the // same. If you can't determine some id for the picture, you should // use the current time or something. void append(Hash& hash) { hash.append(position); }
void append(Hash& hash) { hash.append(thisFrame); }
void append(Hash& hash) { hash.append(_use_scanline_engine); hash.append(_reverse_scanlines); }
void append(Hash& hash) { hash.append(hash_counter); }
void append(Hash& h) { h.append(__DATE__); h.append(__TIME__); }
// Hashing for caches. We append our version to the cache hash, so that when you update // the plugin all the caches will be flushed automatically void append(Hash& hash) { hash.append(VERSION); hash.append(distorter.compute_hash()); Iop::append(hash); // the super called he wants his pointers back }
void append(Hash& hash) { hash.append(VERSION); hash.append(uv_attrib_name); append_transform_to(hash); ModifyGeo::append(hash); // the super called he wants his pointers back }
void append(Hash& hash) { hash.append(outputContext().frame()); }
// Hashing for caches. We append our version to the cache hash, so that when you update // the plugin all the caches will(should?) be flushed automatically void JT_TileRoll::append(Hash& hash) { hash.append(__DATE__); hash.append(__TIME__); Iop::append(hash); // the super called he wants his pointers back }
void append(Hash& hash) { hash.append(rand()); }
// The hash value must change or Nuke will think the picture is the // same. If you can't determine some id for the picture, you should // use the current time or something. void append(Hash& hash) { hash.append(m_lastUpdate); }