summaryrefslogtreecommitdiff
path: root/vcs-svn/sliding_window.h
blob: 189c32d84c3c654c0a16bfe71284b24029724019 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#ifndef SLIDING_WINDOW_H
#define SLIDING_WINDOW_H

#include "strbuf.h"

struct sliding_view {
	struct line_buffer *file;
	off_t off;
	size_t width;
	off_t max_off;	/* -1 means unlimited */
	struct strbuf buf;
};

#define SLIDING_VIEW_INIT(input, len)	{ (input), 0, 0, (len), STRBUF_INIT }

extern int move_window(struct sliding_view *view, off_t off, size_t width);

#endif