Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: third_party/WebKit/public/platform/Platform.h

Issue 2859553002: Revert of [blink] Unique pointers in Platform.h (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 class WebCanvasCaptureHandler; 86 class WebCanvasCaptureHandler;
87 class WebClipboard; 87 class WebClipboard;
88 class WebCompositorSupport; 88 class WebCompositorSupport;
89 class WebCookieJar; 89 class WebCookieJar;
90 class WebCrypto; 90 class WebCrypto;
91 class WebDatabaseObserver; 91 class WebDatabaseObserver;
92 class WebPlatformEventListener; 92 class WebPlatformEventListener;
93 class WebFallbackThemeEngine; 93 class WebFallbackThemeEngine;
94 class WebFileSystem; 94 class WebFileSystem;
95 class WebFileUtilities; 95 class WebFileUtilities;
96 class WebFlingAnimator;
96 class WebGestureCurve; 97 class WebGestureCurve;
97 class WebGraphicsContext3DProvider; 98 class WebGraphicsContext3DProvider;
98 class WebIDBFactory; 99 class WebIDBFactory;
99 class WebImageCaptureFrameGrabber; 100 class WebImageCaptureFrameGrabber;
100 class WebMIDIAccessor; 101 class WebMIDIAccessor;
101 class WebMIDIAccessorClient; 102 class WebMIDIAccessorClient;
102 class WebMediaCapabilitiesClient; 103 class WebMediaCapabilitiesClient;
103 class WebMediaPlayer; 104 class WebMediaPlayer;
104 class WebMediaRecorderHandler; 105 class WebMediaRecorderHandler;
105 class WebMediaStream; 106 class WebMediaStream;
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
161 162
162 // May return null if sandbox support is not necessary 163 // May return null if sandbox support is not necessary
163 virtual WebSandboxSupport* GetSandboxSupport() { return nullptr; } 164 virtual WebSandboxSupport* GetSandboxSupport() { return nullptr; }
164 165
165 // May return null on some platforms. 166 // May return null on some platforms.
166 virtual WebThemeEngine* ThemeEngine() { return nullptr; } 167 virtual WebThemeEngine* ThemeEngine() { return nullptr; }
167 168
168 virtual WebFallbackThemeEngine* FallbackThemeEngine() { return nullptr; } 169 virtual WebFallbackThemeEngine* FallbackThemeEngine() { return nullptr; }
169 170
170 // May return null. 171 // May return null.
171 virtual std::unique_ptr<WebSpeechSynthesizer> CreateSpeechSynthesizer( 172 virtual WebSpeechSynthesizer* CreateSpeechSynthesizer(
172 WebSpeechSynthesizerClient*) { 173 WebSpeechSynthesizerClient*) {
173 return nullptr; 174 return nullptr;
174 } 175 }
175 176
176 // Audio -------------------------------------------------------------- 177 // Audio --------------------------------------------------------------
177 178
178 virtual double AudioHardwareSampleRate() { return 0; } 179 virtual double AudioHardwareSampleRate() { return 0; }
179 virtual size_t AudioHardwareBufferSize() { return 0; } 180 virtual size_t AudioHardwareBufferSize() { return 0; }
180 virtual unsigned AudioHardwareOutputChannels() { return 0; } 181 virtual unsigned AudioHardwareOutputChannels() { return 0; }
181 182
182 // Creates a device for audio I/O. 183 // Creates a device for audio I/O.
183 // Pass in (numberOfInputChannels > 0) if live/local audio input is desired. 184 // Pass in (numberOfInputChannels > 0) if live/local audio input is desired.
184 virtual std::unique_ptr<WebAudioDevice> CreateAudioDevice( 185 virtual WebAudioDevice* CreateAudioDevice(
185 unsigned number_of_input_channels, 186 unsigned number_of_input_channels,
186 unsigned number_of_channels, 187 unsigned number_of_channels,
187 const WebAudioLatencyHint& latency_hint, 188 const WebAudioLatencyHint& latency_hint,
188 WebAudioDevice::RenderCallback*, 189 WebAudioDevice::RenderCallback*,
189 const WebString& device_id, 190 const WebString& device_id,
190 const WebSecurityOrigin&) { 191 const WebSecurityOrigin&) {
191 return nullptr; 192 return nullptr;
192 } 193 }
193 194
194 // MIDI ---------------------------------------------------------------- 195 // MIDI ----------------------------------------------------------------
195 196
196 // Creates a platform dependent WebMIDIAccessor. MIDIAccessor under platform 197 // Creates a platform dependent WebMIDIAccessor. MIDIAccessor under platform
197 // creates and owns it. 198 // creates and owns it.
198 virtual std::unique_ptr<WebMIDIAccessor> CreateMIDIAccessor( 199 virtual WebMIDIAccessor* CreateMIDIAccessor(WebMIDIAccessorClient*) {
199 WebMIDIAccessorClient*); 200 return nullptr;
201 }
200 202
201 // Blob ---------------------------------------------------------------- 203 // Blob ----------------------------------------------------------------
202 204
203 // Must return non-null. 205 // Must return non-null.
204 virtual WebBlobRegistry* GetBlobRegistry() { return nullptr; } 206 virtual WebBlobRegistry* GetBlobRegistry() { return nullptr; }
205 207
206 // Database ------------------------------------------------------------ 208 // Database ------------------------------------------------------------
207 209
208 // Opens a database file; dirHandle should be 0 if the caller does not need 210 // Opens a database file; dirHandle should be 0 if the caller does not need
209 // a handle to the directory containing this file 211 // a handle to the directory containing this file
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 244
243 // Return a filename-friendly identifier for an origin. 245 // Return a filename-friendly identifier for an origin.
244 virtual WebString DatabaseCreateOriginIdentifier( 246 virtual WebString DatabaseCreateOriginIdentifier(
245 const WebSecurityOrigin& origin) { 247 const WebSecurityOrigin& origin) {
246 return WebString(); 248 return WebString();
247 } 249 }
248 250
249 // DOM Storage -------------------------------------------------- 251 // DOM Storage --------------------------------------------------
250 252
251 // Return a LocalStorage namespace 253 // Return a LocalStorage namespace
252 virtual std::unique_ptr<WebStorageNamespace> CreateLocalStorageNamespace(); 254 virtual WebStorageNamespace* CreateLocalStorageNamespace() { return nullptr; }
253 255
254 // FileSystem ---------------------------------------------------------- 256 // FileSystem ----------------------------------------------------------
255 257
256 // Must return non-null. 258 // Must return non-null.
257 virtual WebFileSystem* FileSystem() { return nullptr; } 259 virtual WebFileSystem* FileSystem() { return nullptr; }
258 260
259 // Return a filename-friendly identifier for an origin. 261 // Return a filename-friendly identifier for an origin.
260 virtual WebString FileSystemCreateOriginIdentifier( 262 virtual WebString FileSystemCreateOriginIdentifier(
261 const WebSecurityOrigin& origin) { 263 const WebSecurityOrigin& origin) {
262 return WebString(); 264 return WebString();
263 } 265 }
264 266
265 // IDN conversion ------------------------------------------------------ 267 // IDN conversion ------------------------------------------------------
266 268
267 virtual WebString ConvertIDNToUnicode(const WebString& host) { return host; } 269 virtual WebString ConvertIDNToUnicode(const WebString& host) { return host; }
268 270
269 // IndexedDB ---------------------------------------------------------- 271 // IndexedDB ----------------------------------------------------------
270 272
271 // Must return non-null. 273 // Must return non-null.
272 virtual WebIDBFactory* IdbFactory() { return nullptr; } 274 virtual WebIDBFactory* IdbFactory() { return nullptr; }
273 275
274 // Cache Storage ---------------------------------------------------------- 276 // Cache Storage ----------------------------------------------------------
275 277
276 virtual std::unique_ptr<WebServiceWorkerCacheStorage> CreateCacheStorage( 278 // The caller is responsible for deleting the returned object.
277 const WebSecurityOrigin&); 279 virtual WebServiceWorkerCacheStorage* CacheStorage(const WebSecurityOrigin&) {
280 return nullptr;
281 }
278 282
279 // Gamepad ------------------------------------------------------------- 283 // Gamepad -------------------------------------------------------------
280 284
281 virtual void SampleGamepads(device::Gamepads& into) {} 285 virtual void SampleGamepads(device::Gamepads& into) {}
282 286
283 // History ------------------------------------------------------------- 287 // History -------------------------------------------------------------
284 288
285 // Returns the hash for the given canonicalized URL for use in visited 289 // Returns the hash for the given canonicalized URL for use in visited
286 // link coloring. 290 // link coloring.
287 virtual unsigned long long VisitedLinkHash(const char* canonical_url, 291 virtual unsigned long long VisitedLinkHash(const char* canonical_url,
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
383 } 387 }
384 virtual WebString QueryLocalizedString(WebLocalizedString::Name, 388 virtual WebString QueryLocalizedString(WebLocalizedString::Name,
385 const WebString& parameter1, 389 const WebString& parameter1,
386 const WebString& parameter2) { 390 const WebString& parameter2) {
387 return WebString(); 391 return WebString();
388 } 392 }
389 393
390 // Threads ------------------------------------------------------- 394 // Threads -------------------------------------------------------
391 395
392 // Creates an embedder-defined thread. 396 // Creates an embedder-defined thread.
393 virtual std::unique_ptr<WebThread> CreateThread(const char* name); 397 virtual WebThread* CreateThread(const char* name) { return nullptr; }
394 398
395 // Returns an interface to the current thread. This is owned by the 399 // Returns an interface to the current thread. This is owned by the
396 // embedder. 400 // embedder.
397 virtual WebThread* CurrentThread() { return nullptr; } 401 virtual WebThread* CurrentThread() { return nullptr; }
398 402
399 // Returns a blame context for attributing top-level work which does not 403 // Returns a blame context for attributing top-level work which does not
400 // belong to a particular frame scope. 404 // belong to a particular frame scope.
401 virtual BlameContext* GetTopLevelBlameContext() { return nullptr; } 405 virtual BlameContext* GetTopLevelBlameContext() { return nullptr; }
402 406
403 // Resources ----------------------------------------------------------- 407 // Resources -----------------------------------------------------------
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
485 WebString vendor_info; 489 WebString vendor_info;
486 WebString renderer_info; 490 WebString renderer_info;
487 WebString driver_version; 491 WebString driver_version;
488 WebString error_message; 492 WebString error_message;
489 }; 493 };
490 // Returns a newly allocated and initialized offscreen context provider, 494 // Returns a newly allocated and initialized offscreen context provider,
491 // backed by an independent context. Returns null if the context cannot be 495 // backed by an independent context. Returns null if the context cannot be
492 // created or initialized. 496 // created or initialized.
493 // Passing an existing provider to shareContext will create the new context 497 // Passing an existing provider to shareContext will create the new context
494 // in the same share group as the one passed. 498 // in the same share group as the one passed.
495 virtual std::unique_ptr<WebGraphicsContext3DProvider> 499 virtual WebGraphicsContext3DProvider*
496 CreateOffscreenGraphicsContext3DProvider( 500 CreateOffscreenGraphicsContext3DProvider(
497 const ContextAttributes&, 501 const ContextAttributes&,
498 const WebURL& top_document_url, 502 const WebURL& top_document_url,
499 WebGraphicsContext3DProvider* share_context, 503 WebGraphicsContext3DProvider* share_context,
500 GraphicsInfo*); 504 GraphicsInfo*) {
505 return nullptr;
506 }
501 507
502 // Returns a newly allocated and initialized offscreen context provider, 508 // Returns a newly allocated and initialized offscreen context provider,
503 // backed by the process-wide shared main thread context. Returns null if 509 // backed by the process-wide shared main thread context. Returns null if
504 // the context cannot be created or initialized. 510 // the context cannot be created or initialized.
505 virtual std::unique_ptr<WebGraphicsContext3DProvider> 511 virtual WebGraphicsContext3DProvider*
506 CreateSharedOffscreenGraphicsContext3DProvider(); 512 CreateSharedOffscreenGraphicsContext3DProvider() {
513 return nullptr;
514 }
507 515
508 virtual gpu::GpuMemoryBufferManager* GetGpuMemoryBufferManager() { 516 virtual gpu::GpuMemoryBufferManager* GetGpuMemoryBufferManager() {
509 return nullptr; 517 return nullptr;
510 } 518 }
511 519
512 virtual std::unique_ptr<cc::SharedBitmap> AllocateSharedBitmap( 520 virtual std::unique_ptr<cc::SharedBitmap> AllocateSharedBitmap(
513 const WebSize& size) { 521 const WebSize& size) {
514 return nullptr; 522 return nullptr;
515 } 523 }
516 524
517 virtual bool IsThreadedCompositingEnabled() { return false; } 525 virtual bool IsThreadedCompositingEnabled() { return false; }
518 virtual bool IsThreadedAnimationEnabled() { return true; } 526 virtual bool IsThreadedAnimationEnabled() { return true; }
519 527
520 virtual WebCompositorSupport* CompositorSupport() { return nullptr; } 528 virtual WebCompositorSupport* CompositorSupport() { return nullptr; }
521 529
530 virtual WebFlingAnimator* CreateFlingAnimator() { return nullptr; }
531
522 // Creates a new fling animation curve instance for device |deviceSource| 532 // Creates a new fling animation curve instance for device |deviceSource|
523 // with |velocity| and already scrolled |cumulativeScroll| pixels. 533 // with |velocity| and already scrolled |cumulativeScroll| pixels.
524 virtual std::unique_ptr<WebGestureCurve> CreateFlingAnimationCurve( 534 virtual WebGestureCurve* CreateFlingAnimationCurve(
525 WebGestureDevice device_source, 535 WebGestureDevice device_source,
526 const WebFloatPoint& velocity, 536 const WebFloatPoint& velocity,
527 const WebSize& cumulative_scroll); 537 const WebSize& cumulative_scroll) {
538 return nullptr;
539 }
528 540
529 // Whether the command line flag: --disable-gpu-compositing or --disable-gpu 541 // Whether the command line flag: --disable-gpu-compositing or --disable-gpu
530 // exists or not 542 // exists or not
531 // NOTE: This function should not be called from core/ and modules/, but 543 // NOTE: This function should not be called from core/ and modules/, but
532 // called by platform/graphics/ is fine. 544 // called by platform/graphics/ is fine.
533 virtual bool IsGPUCompositingEnabled() { return true; } 545 virtual bool IsGPUCompositingEnabled() { return true; }
534 546
535 // WebRTC ---------------------------------------------------------- 547 // WebRTC ----------------------------------------------------------
536 548
537 // Creates a WebRTCPeerConnectionHandler for RTCPeerConnection. 549 // Creates a WebRTCPeerConnectionHandler for RTCPeerConnection.
538 // May return null if WebRTC functionality is not avaliable or if it's out of 550 // May return null if WebRTC functionality is not avaliable or if it's out of
539 // resources. 551 // resources.
540 virtual std::unique_ptr<WebRTCPeerConnectionHandler> 552 virtual WebRTCPeerConnectionHandler* CreateRTCPeerConnectionHandler(
541 CreateRTCPeerConnectionHandler(WebRTCPeerConnectionHandlerClient*); 553 WebRTCPeerConnectionHandlerClient*) {
554 return nullptr;
555 }
542 556
543 // Creates a WebMediaRecorderHandler to record MediaStreams. 557 // Creates a WebMediaRecorderHandler to record MediaStreams.
544 // May return null if the functionality is not available or out of resources. 558 // May return null if the functionality is not available or out of resources.
545 virtual std::unique_ptr<WebMediaRecorderHandler> CreateMediaRecorderHandler(); 559 virtual WebMediaRecorderHandler* CreateMediaRecorderHandler() {
560 return nullptr;
561 }
546 562
547 // May return null if WebRTC functionality is not available or out of 563 // May return null if WebRTC functionality is not available or out of
548 // resources. 564 // resources.
549 virtual std::unique_ptr<WebRTCCertificateGenerator> 565 virtual WebRTCCertificateGenerator* CreateRTCCertificateGenerator() {
550 CreateRTCCertificateGenerator(); 566 return nullptr;
567 }
551 568
552 // May return null if WebRTC functionality is not available or out of 569 // May return null if WebRTC functionality is not available or out of
553 // resources. 570 // resources.
554 virtual std::unique_ptr<WebMediaStreamCenter> CreateMediaStreamCenter( 571 virtual WebMediaStreamCenter* CreateMediaStreamCenter(
555 WebMediaStreamCenterClient*); 572 WebMediaStreamCenterClient*) {
573 return nullptr;
574 }
556 575
557 // Creates a WebCanvasCaptureHandler to capture Canvas output. 576 // Creates a WebCanvasCaptureHandler to capture Canvas output.
558 virtual std::unique_ptr<WebCanvasCaptureHandler> 577 virtual WebCanvasCaptureHandler*
559 CreateCanvasCaptureHandler(const WebSize&, double, WebMediaStreamTrack*); 578 CreateCanvasCaptureHandler(const WebSize&, double, WebMediaStreamTrack*) {
579 return nullptr;
580 }
560 581
561 // Fills in the WebMediaStream to capture from the WebMediaPlayer identified 582 // Fills in the WebMediaStream to capture from the WebMediaPlayer identified
562 // by the second parameter. 583 // by the second parameter.
563 virtual void CreateHTMLVideoElementCapturer(WebMediaStream*, 584 virtual void CreateHTMLVideoElementCapturer(WebMediaStream*,
564 WebMediaPlayer*) {} 585 WebMediaPlayer*) {}
565 virtual void CreateHTMLAudioElementCapturer(WebMediaStream*, 586 virtual void CreateHTMLAudioElementCapturer(WebMediaStream*,
566 WebMediaPlayer*) {} 587 WebMediaPlayer*) {}
567 588
568 // Creates a WebImageCaptureFrameGrabber to take a snapshot of a Video Tracks. 589 // Creates a WebImageCaptureFrameGrabber to take a snapshot of a Video Tracks.
569 // May return null if the functionality is not available. 590 // May return null if the functionality is not available.
570 virtual std::unique_ptr<WebImageCaptureFrameGrabber> 591 virtual WebImageCaptureFrameGrabber* CreateImageCaptureFrameGrabber() {
571 CreateImageCaptureFrameGrabber(); 592 return nullptr;
593 }
572 594
573 // WebWorker ---------------------------------------------------------- 595 // WebWorker ----------------------------------------------------------
574 596
575 virtual void DidStartWorkerThread() {} 597 virtual void DidStartWorkerThread() {}
576 virtual void WillStopWorkerThread() {} 598 virtual void WillStopWorkerThread() {}
577 virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {} 599 virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {}
578 virtual bool AllowScriptExtensionForServiceWorker(const WebURL& script_url) { 600 virtual bool AllowScriptExtensionForServiceWorker(const WebURL& script_url) {
579 return false; 601 return false;
580 } 602 }
581 603
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
668 // Requests purging memory. The platform may or may not purge memory, 690 // Requests purging memory. The platform may or may not purge memory,
669 // depending on memory pressure. 691 // depending on memory pressure.
670 virtual void RequestPurgeMemory() {} 692 virtual void RequestPurgeMemory() {}
671 693
672 // Feature Policy ----------------------------------------------------- 694 // Feature Policy -----------------------------------------------------
673 695
674 // Create a new feature policy object for a document, given its parent 696 // Create a new feature policy object for a document, given its parent
675 // document's policy (may be nullptr), its container policy (may be empty), 697 // document's policy (may be nullptr), its container policy (may be empty),
676 // the header policy with which it was delivered (may be empty), and the 698 // the header policy with which it was delivered (may be empty), and the
677 // document's origin. 699 // document's origin.
678 virtual std::unique_ptr<WebFeaturePolicy> CreateFeaturePolicy( 700 virtual WebFeaturePolicy* CreateFeaturePolicy(
679 const WebFeaturePolicy* parent_policy, 701 const WebFeaturePolicy* parent_policy,
680 const WebParsedFeaturePolicy& container_policy, 702 const WebParsedFeaturePolicy& container_policy,
681 const WebParsedFeaturePolicy& policy_header, 703 const WebParsedFeaturePolicy& policy_header,
682 const WebSecurityOrigin&); 704 const WebSecurityOrigin&) {
705 return nullptr;
706 }
683 707
684 // Create a new feature policy for a document whose origin has changed, given 708 // Create a new feature policy for a document whose origin has changed, given
685 // the previous policy object and the new origin. 709 // the previous policy object and the new origin.
686 virtual std::unique_ptr<WebFeaturePolicy> DuplicateFeaturePolicyWithOrigin( 710 virtual WebFeaturePolicy* DuplicateFeaturePolicyWithOrigin(
687 const WebFeaturePolicy&, 711 const WebFeaturePolicy&,
688 const WebSecurityOrigin&); 712 const WebSecurityOrigin&) {
713 return nullptr;
714 }
689 715
690 protected: 716 protected:
691 Platform(); 717 Platform();
692 virtual ~Platform() {} 718 virtual ~Platform() {}
693 719
694 WebThread* main_thread_; 720 WebThread* main_thread_;
695 }; 721 };
696 722
697 } // namespace blink 723 } // namespace blink
698 724
699 #endif 725 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/public/BUILD.gn ('k') | third_party/WebKit/public/platform/WebFlingAnimator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698