Jonathan Nieder | 9d2f5dd | 2011-01-02 21:54:58 -0600 | [diff] [blame] | 1 | #ifndef SLIDING_WINDOW_H_ |
| 2 | #define SLIDING_WINDOW_H_ |
| 3 | |
| 4 | #include "strbuf.h" |
| 5 | |
| 6 | struct sliding_view { |
| 7 | struct line_buffer *file; |
| 8 | off_t off; |
| 9 | size_t width; |
Jonathan Nieder | fbdd4f6 | 2011-05-27 04:07:44 -0500 | [diff] [blame] | 10 | off_t max_off; /* -1 means unlimited */ |
Jonathan Nieder | 9d2f5dd | 2011-01-02 21:54:58 -0600 | [diff] [blame] | 11 | struct strbuf buf; |
| 12 | }; |
| 13 | |
Jonathan Nieder | fbdd4f6 | 2011-05-27 04:07:44 -0500 | [diff] [blame] | 14 | #define SLIDING_VIEW_INIT(input, len) { (input), 0, 0, (len), STRBUF_INIT } |
Jonathan Nieder | 9d2f5dd | 2011-01-02 21:54:58 -0600 | [diff] [blame] | 15 | |
| 16 | extern int move_window(struct sliding_view *view, off_t off, size_t width); |
| 17 | |
| 18 | #endif |