haiku/headers/private/app/LaunchRoster.h
Axel Dörfler ac0a462fba launch_daemon: Basic user session implementation.
* Instead of launching Tracker/Deskbar directly, we now launch the
  Login application.
* This will now start a new session for the selected user (the password
  is currently ignored).
* When a user session is started, the launch_daemon forks, and the
  child then restarts the LaunchDaemon application in user mode.
* It then registers itself with its parent, in order to resolve user
  dependent services.
* Added a user launch file that will cause Tracker, and Deskbar to
  start in the new session.
2015-07-22 20:41:37 +02:00

45 lines
860 B
C++

/*
* Copyright 2015 Haiku, Inc. All rights reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef _LAUNCH_ROSTER_H
#define _LAUNCH_ROSTER_H
#include <Messenger.h>
class BLaunchRoster {
public:
BLaunchRoster();
~BLaunchRoster();
status_t InitCheck() const;
status_t GetData(BMessage& data);
status_t GetData(const char* signature, BMessage& data);
port_id GetPort(const char* name = NULL);
port_id GetPort(const char* signature,
const char* name);
status_t StartSession(const char* login,
const char* password);
class Private;
private:
friend class Private;
void _InitMessenger();
private:
BMessenger fMessenger;
uint32 _reserved[5];
};
// global BLaunchRoster instance
extern const BLaunchRoster* be_launch_roster;
#endif // _LAUNCH_ROSTER_H