* Revamped BPathMonitor API as suggested by Ingo - we could rename it to BNodeMonitor

and add wrappers for watch_node() as well, though.
* Implemented more or less all what is needed for the path monitoring to work.
* Added a test application: works fine under Haiku, but somewhat flaky under BeOS,
  dunno why yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21066 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2007-05-08 00:30:59 +00:00
parent 7f61f501cf
commit d00539e3ba
4 changed files with 752 additions and 221 deletions
+7 -11
View File
@@ -17,22 +17,18 @@
namespace BPrivate {
class PathHandler;
class BPathMonitor {
public:
BPathMonitor();
BPathMonitor(const char* path, uint32 flags, BMessenger target);
~BPathMonitor();
static status_t StartWatching(const char* path, uint32 flags, BMessenger target);
status_t InitCheck() const;
status_t SetTo(const char* path, uint32 flags, BMessenger target);
status_t SetTarget(BMessenger target);
void Unset();
static status_t StopWatching(const char* path, BMessenger target);
static status_t StopWatching(BMessenger target);
private:
PathHandler* fHandler;
status_t fStatus;
BPathMonitor();
~BPathMonitor();
static status_t _InitIfNeeded();
};
} // namespace BPrivate