source: trunk/kStuff/include/k/kRdr.h@ 3546

Last change on this file since 3546 was 3546, checked in by bird, 18 years ago

use .cpp. some string fixes.

  • Property svn:keywords set to Id
File size: 2.3 KB
Line 
1/* $Id: kRdr.h 3546 2007-08-25 17:28:50Z bird $ */
2/** @file
3 * kRdr - The File Provider.
4 */
5
6/*
7 * Copyright (c) 2006-2007 knut st. osmundsen <bird-src-spam@anduin.net>
8 *
9 * This file is part of kStuff.
10 *
11 * kStuff is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License as published
13 * by the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * kStuff is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * along with kStuff; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 *
25 */
26
27#ifndef ___kRdr_h___
28#define ___kRdr_h___
29
30#include <k/kDefs.h>
31#include <k/kTypes.h>
32
33/** @defgroup grp_kRdr kRdr - The File Provider
34 * @{ */
35
36/** Pointer to a file provider instance. */
37typedef struct KRDR *PKRDR;
38/** Pointer to a file provider instance pointer. */
39typedef struct KRDR **PPKRDR;
40
41#ifdef __cplusplus
42extern "C" {
43#endif
44
45int kRdrOpen(PPKRDR ppRdr, const char *pszFilename);
46int kRdrOpenBuffered(PPKRDR ppRdr, const char *pszFilename);
47int kRdrClose( PKRDR pRdr);
48int kRdrRead( PKRDR pRdr, void *pvBuf, KSIZE cb, KFOFF off);
49int kRdrAllMap( PKRDR pRdr, const void **ppvBits);
50int kRdrAllUnmap(PKRDR pRdr, const void *pvBits);
51KFOFF kRdrSize( PKRDR pRdr);
52KFOFF kRdrTell( PKRDR pRdr);
53const char *kRdrName(PKRDR pRdr);
54KIPTR kRdrNativeFH(PKRDR pRdr);
55KSIZE kRdrPageSize(PKRDR pRdr);
56#ifndef ___k_kLdr___
57int kRdrMap( PKRDR pRdr, void **ppvBase, KU32 cSegments, PCKLDRSEG paSegments, KBOOL fFixed);
58int kRdrRefresh( PKRDR pRdr, void *pvBase, KU32 cSegments, PCKLDRSEG paSegments);
59int kRdrProtect( PKRDR pRdr, void *pvBase, KU32 cSegments, PCKLDRSEG paSegments, KBOOL fUnprotectOrProtect);
60int kRdrUnmap( PKRDR pRdr, void *pvBase, KU32 cSegments, PCKLDRSEG paSegments);
61#endif /* !___k_kLdr___ */
62void kRdrDone( PKRDR pRdr);
63
64#ifdef __cplusplus
65}
66#endif
67
68/** @} */
69
70#endif
71
Note: See TracBrowser for help on using the repository browser.