Program Listing for File batch.h¶
↰ Return to documentation for file (src/data/batch.h
)
#pragma once
#include <vector>
#include "common/definitions.h"
namespace marian {
namespace data {
class Batch {
public:
virtual size_t size() const = 0;
virtual size_t words(int /*which*/ = 0) const { return 0; };
virtual size_t width() const { return 0; };
virtual size_t sizeTrg() const { return 0; };
virtual size_t wordsTrg() const { return 0; };
virtual size_t widthTrg() const { return 0; };
virtual void debug(bool /*printIndices*/ = false) {};
virtual std::vector<Ptr<Batch>> split(size_t n, size_t sizeLimit = SIZE_MAX) = 0;
const std::vector<size_t>& getSentenceIds() const { return sentenceIds_; }
void setSentenceIds(const std::vector<size_t>& ids) { sentenceIds_ = ids; }
virtual void setGuidedAlignment(std::vector<WordAlignment>&&) = 0;
virtual void setDataWeights(const std::vector<float>&) = 0;
virtual ~Batch() {};
protected:
std::vector<size_t> sentenceIds_;
};
} // namespace data
} // namespace marian