16 #include "scanner/api/sink.h" 18 #include "storehouse/storage_backend.h" 19 #include "scanner/engine/video_index_entry.h" 20 #include "scanner/engine/table_meta_cache.h" 21 #include "scanner/util/thread_pool.h" 23 #include <glog/logging.h> 35 void new_stream(
const std::vector<u8>& args)
override;
37 void write(
const BatchedElements& input_columns)
override;
39 void new_task(i32 table_id, i32 task_id,
40 std::vector<ColumnType> column_types);
44 void provide_column_info(
45 const std::vector<bool>& compressed,
46 const std::vector<FrameInfo>& frame_info);
50 ThreadPool thread_pool_;
52 std::unique_ptr<storehouse::StorageBackend> storage_;
54 std::vector<std::unique_ptr<storehouse::WriteFile>> output_;
55 std::vector<std::unique_ptr<storehouse::WriteFile>> output_metadata_;
56 std::vector<VideoMetadata> video_metadata_;
58 std::vector<ColumnType> column_types_;
59 std::vector<bool> compressed_;
60 std::vector<FrameInfo> frame_info_;
64 bool needs_configure_;
67 i64 current_work_item_;
69 i64 total_work_items_;
void write(const BatchedElements &input_columns) override
Runs the Sink to write elements.
Definition: column_sink.cpp:71
Interface for reading data in a computation graph.
Definition: sink.h:42
Definition: column_sink.h:29
void new_stream(const std::vector< u8 > &args) override
Called when the Sink is about to process a new stream.
Definition: column_sink.cpp:67
Definition: database.cpp:36
void finished()
When this function returns, the data for all previous 'write' calls MUST BE durably written...
Definition: column_sink.cpp:239
Parameters provided at instantiation of Sink node.
Definition: sink.h:28