| 143 | } |
| 144 | |
| 145 | uint64_t Ev4Block::Read(std::streambuf& buffer) { |
| 146 | uint64_t bytes = ReadHeader4(buffer); |
| 147 | bytes += ReadNumber(buffer, type_); |
| 148 | bytes += ReadNumber(buffer, sync_type_); |
| 149 | bytes += ReadNumber(buffer, range_type_); |
| 150 | bytes += ReadNumber(buffer, cause_); |
| 151 | bytes += ReadNumber(buffer, flags_); |
| 152 | std::vector<uint8_t> reserved; |
| 153 | bytes += ReadByte(buffer, reserved, 3); |
| 154 | bytes += ReadNumber(buffer, length_m_); |
| 155 | bytes += ReadNumber(buffer, length_n_); |
| 156 | bytes += ReadNumber(buffer, creator_index_); |
| 157 | bytes += ReadNumber(buffer, sync_base_value_); |
| 158 | bytes += ReadNumber(buffer, sync_factor_); |
| 159 | |
| 160 | name_ = ReadTx4(buffer, kIndexName); |
| 161 | const size_t group_index = 5 + length_m_ + length_n_; |
| 162 | if (group_index < link_list_.size()) { |
| 163 | group_name_ = ReadTx4(buffer, group_index); |
| 164 | } |
| 165 | |
| 166 | ReadMdComment(buffer, kIndexMd); |
| 167 | return bytes; |
| 168 | } |
| 169 | |
| 170 | uint64_t Ev4Block::Write(std::streambuf& buffer) { |
| 171 | const bool update = |