#ifndef ASH_SESSION_STATE_OBSERVER_H_
#define ASH_SESSION_STATE_OBSERVER_H_
#include <string>
#include "ash/ash_export.h"
#include "base/basictypes.h"
namespace ash {
class ASH_EXPORT SessionStateObserver {
public:
virtual void ActiveUserChanged(const std::string& user_id) {}
virtual void UserAddedToSession(const std::string& user_id) {}
protected:
virtual ~SessionStateObserver() {}
};
class ASH_EXPORT ScopedSessionStateObserver {
public:
explicit ScopedSessionStateObserver(ash::SessionStateObserver* observer);
virtual ~ScopedSessionStateObserver();
private:
ash::SessionStateObserver* observer_;
DISALLOW_COPY_AND_ASSIGN(ScopedSessionStateObserver);
};
}
#endif