-
-
Notifications
You must be signed in to change notification settings - Fork 336
/
VolumeRoster.h
52 lines (39 loc) · 1.11 KB
/
VolumeRoster.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/*
* Copyright 2002-2010, Haiku, Inc. All Rights Reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef _VOLUME_ROSTER_H
#define _VOLUME_ROSTER_H
#include <Application.h>
#include <SupportDefs.h>
#include <Volume.h>
class BVolume;
class BMessenger;
class BVolumeRoster {
public:
BVolumeRoster();
virtual ~BVolumeRoster();
status_t GetNextVolume(BVolume* volume);
void Rewind();
status_t GetBootVolume(BVolume* volume);
status_t StartWatching(
BMessenger messenger = be_app_messenger);
void StopWatching();
BMessenger Messenger() const;
private:
virtual void _SeveredVRoster1();
virtual void _SeveredVRoster2();
private:
int32 fCookie;
// The iteration cookie for next_dev()
// Initialized to 0
BMessenger* fTarget;
// BMessenger referring to the target to
// which the watching notification
// messages are sent. The object is
// allocated and owned by the roster,
// or NULL if not watching.
uint32 _reserved[3];
// FBC
};
#endif // _VOLUME_ROSTER_H