yamr_table_writer.h 773 B

1234567891011121314151617181920212223242526272829303132
  1. #pragma once
  2. #include <yt/cpp/mapreduce/interface/io.h>
  3. namespace NYT {
  4. class IProxyOutput;
  5. ////////////////////////////////////////////////////////////////////////////////
  6. class TYaMRTableWriter
  7. : public IYaMRWriterImpl
  8. {
  9. public:
  10. explicit TYaMRTableWriter(THolder<IProxyOutput> output);
  11. ~TYaMRTableWriter() override;
  12. void AddRow(const TYaMRRow& row, size_t tableIndex) override;
  13. void AddRow(TYaMRRow&& row, size_t tableIndex) override;
  14. size_t GetBufferMemoryUsage() const override;
  15. size_t GetTableCount() const override;
  16. void FinishTable(size_t) override;
  17. void Abort() override;
  18. private:
  19. THolder<IProxyOutput> Output_;
  20. };
  21. ////////////////////////////////////////////////////////////////////////////////
  22. } // namespace NYT