1/*
2 * Copyright 2002-2012, Axel Dörfler, axeld@pinc-software.de.
3 * Distributed under the terms of the MIT License.
4 *
5 * Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
6 * Distributed under the terms of the NewOS License.
7 */
8#ifndef _DEVFS_H
9#define _DEVFS_H
10
11
12#include <Drivers.h>
13
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19status_t devfs_unpublish_file_device(const char* path);
20status_t devfs_publish_file_device(const char* path, const char* filePath);
21
22status_t devfs_unpublish_partition(const char* path);
23status_t devfs_publish_partition(const char* name, const partition_info* info);
24status_t devfs_rename_partition(const char* devicePath, const char* oldName,
25	const char* newName);
26
27status_t devfs_unpublish_device(const char* path, bool disconnect);
28status_t devfs_publish_device(const char* path, device_hooks* calls);
29status_t devfs_publish_directory(const char* path);
30status_t devfs_rescan_driver(const char* driverName);
31
32void devfs_compute_geometry_size(device_geometry* geometry, uint64 blockCount,
33	uint32 blockSize);
34
35#ifdef __cplusplus
36}
37#endif
38
39#endif /* _DEVFS_H */
40