xref: /haiku/headers/private/app/LaunchRoster.h (revision 560119c9a46601b0051520c3c77be5a0e8dd874a)
1 /*
2  * Copyright 2015 Haiku, Inc. All rights reserved.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef _LAUNCH_ROSTER_H
6 #define _LAUNCH_ROSTER_H
7 
8 
9 #include <Messenger.h>
10 
11 
12 class BLaunchRoster {
13 public:
14 								BLaunchRoster();
15 								~BLaunchRoster();
16 
17 			status_t			InitCheck() const;
18 
19 			status_t			GetData(BMessage& data);
20 			status_t			GetData(const char* signature, BMessage& data);
21 			port_id				GetPort(const char* name = NULL);
22 			port_id				GetPort(const char* signature,
23 									const char* name);
24 
25 			status_t			Target(const char* name, BMessage& data,
26 									const char* baseName = NULL);
27 
28 			status_t			StartSession(const char* login);
29 
30 	class Private;
31 
32 private:
33 	friend class Private;
34 
35 			void				_InitMessenger();
36 
37 private:
38 			BMessenger			fMessenger;
39 			uint32				_reserved[5];
40 };
41 
42 // global BLaunchRoster instance
43 extern const BLaunchRoster* be_launch_roster;
44 
45 
46 #endif	// _LAUNCH_ROSTER_H
47