World serialization done (not well-tested yet)
This commit is contained in:
@@ -24,4 +24,23 @@ SchedEntry Schedule::pop() {
|
||||
schedule_.erase(schedule_.begin());
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
void Schedule::serialize(StreamBuffer *sb) {
|
||||
sb->write_size(schedule_.size());
|
||||
for (const SchedEntry &entry : schedule_) {
|
||||
sb->write_int64(entry.clock_);
|
||||
sb->write_int64(entry.thread_id_);
|
||||
sb->write_int64(entry.place_id_);
|
||||
}
|
||||
}
|
||||
|
||||
void Schedule::deserialize(StreamBuffer *sb) {
|
||||
schedule_.clear();
|
||||
size_t nentry = sb->read_size();
|
||||
for (size_t i = 0; i < nentry; i++) {
|
||||
int64_t clock = sb->read_int64();
|
||||
int64_t thread_id = sb->read_int64();
|
||||
int64_t place_id = sb->read_int64();
|
||||
add(clock, thread_id, place_id);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user