diff options
Diffstat (limited to 'Source/WebCore/Modules/mediastream/UserMediaController.h')
-rw-r--r-- | Source/WebCore/Modules/mediastream/UserMediaController.h | 40 |
1 files changed, 24 insertions, 16 deletions
diff --git a/Source/WebCore/Modules/mediastream/UserMediaController.h b/Source/WebCore/Modules/mediastream/UserMediaController.h index 4d15c981e..707fd8e40 100644 --- a/Source/WebCore/Modules/mediastream/UserMediaController.h +++ b/Source/WebCore/Modules/mediastream/UserMediaController.h @@ -1,5 +1,6 @@ /* * Copyright (C) 2012 Google Inc. All rights reserved. + * Copyright (C) 2016 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -22,49 +23,56 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef UserMediaController_h -#define UserMediaController_h +#pragma once #if ENABLE(MEDIA_STREAM) #include "Page.h" #include "UserMediaClient.h" #include "UserMediaRequest.h" -#include <wtf/PassOwnPtr.h> namespace WebCore { class UserMediaController : public Supplement<Page> { public: + explicit UserMediaController(UserMediaClient*); ~UserMediaController(); UserMediaClient* client() const { return m_client; } - void requestPermission(PassRefPtr<UserMediaRequest>); - void cancelRequest(UserMediaRequest*); - static PassOwnPtr<UserMediaController> create(UserMediaClient*); - static const char* supplementName(); - static UserMediaController* from(Page* page) { return static_cast<UserMediaController*>(Supplement<Page>::from(page, supplementName())); } + void requestUserMediaAccess(UserMediaRequest&); + void cancelUserMediaAccessRequest(UserMediaRequest&); -protected: - explicit UserMediaController(UserMediaClient*); + void enumerateMediaDevices(MediaDevicesEnumerationRequest&); + void cancelMediaDevicesEnumerationRequest(MediaDevicesEnumerationRequest&); + + WEBCORE_EXPORT static const char* supplementName(); + static UserMediaController* from(Page* page) { return static_cast<UserMediaController*>(Supplement<Page>::from(page, supplementName())); } private: UserMediaClient* m_client; }; -inline void UserMediaController::requestPermission(PassRefPtr<UserMediaRequest> request) +inline void UserMediaController::requestUserMediaAccess(UserMediaRequest& request) +{ + m_client->requestUserMediaAccess(request); +} + +inline void UserMediaController::cancelUserMediaAccessRequest(UserMediaRequest& request) +{ + m_client->cancelUserMediaAccessRequest(request); +} + +inline void UserMediaController::enumerateMediaDevices(MediaDevicesEnumerationRequest& request) { - m_client->requestPermission(request); + m_client->enumerateMediaDevices(request); } -inline void UserMediaController::cancelRequest(UserMediaRequest* request) +inline void UserMediaController::cancelMediaDevicesEnumerationRequest(MediaDevicesEnumerationRequest& request) { - m_client->cancelRequest(request); + m_client->cancelMediaDevicesEnumerationRequest(request); } } // namespace WebCore #endif // ENABLE(MEDIA_STREAM) - -#endif // UserMediaController_h |