Code

vcs-svn: learn to maintain a sliding view of a file
[git.git] / vcs-svn / sliding_window.h
diff --git a/vcs-svn/sliding_window.h b/vcs-svn/sliding_window.h
new file mode 100644 (file)
index 0000000..ed0bfdd
--- /dev/null
@@ -0,0 +1,17 @@
+#ifndef SLIDING_WINDOW_H_
+#define SLIDING_WINDOW_H_
+
+#include "strbuf.h"
+
+struct sliding_view {
+       struct line_buffer *file;
+       off_t off;
+       size_t width;
+       struct strbuf buf;
+};
+
+#define SLIDING_VIEW_INIT(input)       { (input), 0, 0, STRBUF_INIT }
+
+extern int move_window(struct sliding_view *view, off_t off, size_t width);
+
+#endif