#ifndef REMOTING_HOST_DESKTOP_SESSION_H_
#define REMOTING_HOST_DESKTOP_SESSION_H_
#include "base/compiler_specific.h"
#include "base/memory/raw_ptr.h"
namespace remoting {
class DaemonProcess;
class ScreenResolution;
class DesktopSession {
public:
DesktopSession(const DesktopSession&) = delete;
DesktopSession& operator=(const DesktopSession&) = delete;
virtual ~DesktopSession();
virtual void SetScreenResolution(const ScreenResolution& resolution) = 0;
int id() const { return id_; }
protected:
DesktopSession(DaemonProcess* daemon_process, int id);
DaemonProcess* daemon_process() const { return daemon_process_; }
private:
const raw_ptr<DaemonProcess> daemon_process_;
const int id_;
};
}
#endif