wgtmac commented on code in PR #200:
URL: https://github.com/apache/iceberg-cpp/pull/200#discussion_r2315587583
##########
src/iceberg/table_scan.h:
##########
@@ -185,4 +169,40 @@ class ICEBERG_EXPORT DataTableScan : public TableScan {
Result<std::vector<std::shared_ptr<FileScanTask>>> PlanFiles() const
override;
};
+/// \brief Task representing a data file and its corresponding delete files.
+class ICEBERG_EXPORT FileScanTask : public ScanTask {
+ public:
+ explicit FileScanTask(std::shared_ptr<DataFile> data_file);
+
+ /// \brief The data file that should be read by this scan task.
+ const std::shared_ptr<DataFile>& data_file() const;
+
+ /// \brief The total size in bytes of the file split to be read.
+ int64_t size_bytes() const override;
+
+ /// \brief The number of files that should be read by this scan task.
+ int32_t files_count() const override;
+
+ /// \brief The number of rows that should be read by this scan task.
+ int64_t estimated_row_count() const override;
+
+ /**
+ * \brief Creates and returns an ArrowArrayReader to read the data for this
task.
Review Comment:
This is not resolved.
##########
src/iceberg/table_scan.h:
##########
@@ -185,4 +169,40 @@ class ICEBERG_EXPORT DataTableScan : public TableScan {
Result<std::vector<std::shared_ptr<FileScanTask>>> PlanFiles() const
override;
};
+/// \brief Task representing a data file and its corresponding delete files.
+class ICEBERG_EXPORT FileScanTask : public ScanTask {
+ public:
+ explicit FileScanTask(std::shared_ptr<DataFile> data_file);
+
+ /// \brief The data file that should be read by this scan task.
+ const std::shared_ptr<DataFile>& data_file() const;
+
+ /// \brief The total size in bytes of the file split to be read.
+ int64_t size_bytes() const override;
+
+ /// \brief The number of files that should be read by this scan task.
+ int32_t files_count() const override;
+
+ /// \brief The number of rows that should be read by this scan task.
+ int64_t estimated_row_count() const override;
+
+ /**
+ * \brief Creates and returns an ArrowArrayReader to read the data for this
task.
+ *
+ * This acts as a factory to instantiate a file-format-specific reader
(e.g., Parquet)
+ * based on the metadata in this task and the provided context.
+ *
+ * \param context The table scan context, used to configure the reader
(e.g., with the
+ * projected schema).
+ * \param io The FileIO instance for accessing the file data.
+ * \return A Result containing a unique pointer to the reader, or an error
on failure.
+ */
+ Result<std::unique_ptr<ArrowArrayReader>> ToArrowArrayReader(
Review Comment:
This is not resolved.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]