summaryrefslogtreecommitdiffstats
path: root/src/python/sheet_rows.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/python/sheet_rows.hpp')
-rw-r--r--src/python/sheet_rows.hpp54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/python/sheet_rows.hpp b/src/python/sheet_rows.hpp
new file mode 100644
index 0000000..e750098
--- /dev/null
+++ b/src/python/sheet_rows.hpp
@@ -0,0 +1,54 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#ifndef INCLUDED_ORCUS_PYTHON_SHEET_ROWS_HPP
+#define INCLUDED_ORCUS_PYTHON_SHEET_ROWS_HPP
+
+#include <Python.h>
+#include <ixion/address.hpp>
+#include <ixion/model_iterator.hpp>
+
+namespace ixion {
+
+class formula_name_resolver;
+
+}
+
+namespace orcus {
+
+namespace spreadsheet {
+
+class sheet;
+class document;
+
+}
+
+namespace python {
+
+/** non-python part. */
+struct sheet_rows_data
+{
+ const spreadsheet::document* m_doc;
+ const spreadsheet::sheet* m_sheet;
+ ixion::abs_range_t m_range;
+ ixion::model_iterator m_range_iterator;
+
+ ixion::row_t m_current_row;
+
+ sheet_rows_data();
+ ~sheet_rows_data();
+};
+
+PyTypeObject* get_sheet_rows_type();
+
+void store_sheet_rows_data(PyObject* self, const spreadsheet::document* orcus_doc, const spreadsheet::sheet* orcus_sheet);
+
+}}
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */