summaryrefslogtreecommitdiff
path: root/apps/plugins/text_viewer/tv_text_reader.h
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/text_viewer/tv_text_reader.h')
-rw-r--r--apps/plugins/text_viewer/tv_text_reader.h101
1 files changed, 101 insertions, 0 deletions
diff --git a/apps/plugins/text_viewer/tv_text_reader.h b/apps/plugins/text_viewer/tv_text_reader.h
new file mode 100644
index 0000000000..e8c712c76f
--- /dev/null
+++ b/apps/plugins/text_viewer/tv_text_reader.h
@@ -0,0 +1,101 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2002 Gilles Roux
11 * 2003 Garrett Derner
12 * 2010 Yoshihisa Uchida
13 *
14 * This program is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU General Public License
16 * as published by the Free Software Foundation; either version 2
17 * of the License, or (at your option) any later version.
18 *
19 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
20 * KIND, either express or implied.
21 *
22 ****************************************************************************/
23#ifndef PLUGIN_TEXT_VIEWER_TEXT_READER_H
24#define PLUGIN_TEXT_VIEWER_TEXT_READER_H
25
26/*
27 * initialize the text reader module
28 *
29 * [In] buf
30 * the start pointer of the buffer
31 *
32 * [In] size
33 * enabled buffer size
34 *
35 * [Out] used_size
36 * the size of the buffer which the pager uses
37 *
38 * return
39 * true initialize success
40 * false initialize failure
41 */
42bool tv_init_text_reader(unsigned char *buf, size_t bufsize, size_t *used_size);
43
44/* finalize the text reader module */
45void tv_finalize_text_reader(void);
46
47/*
48 * set the read conditions
49 *
50 * [In] blocks
51 * block count
52 *
53 * [In] width
54 * block width
55 */
56void tv_set_read_conditions(int blocks, int width);
57
58/*
59 * return the total text size
60 *
61 * return
62 * the total text size
63 */
64off_t tv_get_total_text_size(void);
65
66/*
67 * get the text of the next line
68 *
69 * [Out] buf
70 * the pointer of the pointer which store the text
71 *
72 * return
73 * true next line exists
74 * false next line does not exist
75 */
76bool tv_get_next_line(const unsigned char **buf);
77
78/*
79 * start to read lines
80 *
81 * [In] block
82 * the index of block to read text
83 *
84 * [In] is_multi
85 * true read 2 blocks
86 * false read 1 block
87 */
88void tv_read_start(int block, bool is_multi);
89
90/*
91 * end to read lines
92 *
93 * return
94 * read text size
95 */
96int tv_read_end(void);
97
98/* seek to the head of the file */
99void tv_seek_top(void);
100
101#endif