inline bool LoadNext(DataBatch &val) { if (base_->Next()) { val.CopyFromDense(base_->Value()); return true; } else { return false; } }
void NodeVisitor::visitChildren_via_iter(AbstractNode& node) { IIterator* i = node.createIterator(); for (i->First(); !i->IsDone(); i->Next()) { i->CurrentItem()->accept(*this); } delete i; }
inline bool Init(){ base_->Init(); utils::Assert( base_->Next(), "ThreadBufferIterator: input can not be empty" ); oshape_ = base_->Value().data.shape; batch_size_ = base_->Value().batch_size; base_->BeforeFirst(); return true; }
inline bool Init() { base_->Init(); utils::Assert(base_->Next(), "ThreadBufferIterator: input can not be empty"); oshape_ = base_->Value().data.shape_; batch_size_ = base_->Value().batch_size; label_width_ = base_->Value().label.size(1); for (size_t i = 0; i < base_->Value().extra_data.size(); ++i){ extra_shape_.push_back(base_->Value().extra_data[i].shape_); } base_->BeforeFirst(); return true; }