xref: /haiku/src/system/boot/loader/file_systems/bfs/Link.h (revision 1e36cfc2721ef13a187c6f7354dc9cbc485e89d3)
1 /*
2 ** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
3 ** Distributed under the terms of the OpenBeOS License.
4 */
5 #ifndef LINK_H
6 #define LINK_H
7 
8 
9 #include <boot/vfs.h>
10 
11 #include "File.h"
12 
13 
14 namespace BFS {
15 
16 class Link : public File {
17 	public:
18 		Link(Volume &volume, block_run run);
19 		Link(Volume &volume, off_t id);
20 		Link(const Stream &stream);
21 
22 		status_t InitCheck();
23 		status_t ReadLink(char *buffer, size_t bufferSize);
24 
25 		virtual ssize_t ReadAt(void *cookie, off_t pos, void *buffer, size_t bufferSize);
26 		virtual ssize_t WriteAt(void *cookie, off_t pos, const void *buffer, size_t bufferSize);
27 
28 		virtual int32 Type() const;
29 };
30 
31 }	// namespace BFS
32 
33 #endif	/* FILE_H */
34