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

Side by Side Diff: content/renderer/media/buffered_resource_loader.h

Issue 63253002: Rename WebKit namespace to blink (part 3) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_RENDERER_MEDIA_BUFFERED_RESOURCE_LOADER_H_ 5 #ifndef CONTENT_RENDERER_MEDIA_BUFFERED_RESOURCE_LOADER_H_
6 #define CONTENT_RENDERER_MEDIA_BUFFERED_RESOURCE_LOADER_H_ 6 #define CONTENT_RENDERER_MEDIA_BUFFERED_RESOURCE_LOADER_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 18 matching lines...) Expand all
29 const int64 kPositionNotSpecified = -1; 29 const int64 kPositionNotSpecified = -1;
30 30
31 const char kHttpScheme[] = "http"; 31 const char kHttpScheme[] = "http";
32 const char kHttpsScheme[] = "https"; 32 const char kHttpsScheme[] = "https";
33 33
34 // BufferedResourceLoader is single threaded and must be accessed on the 34 // BufferedResourceLoader is single threaded and must be accessed on the
35 // render thread. It wraps a WebURLLoader and does in-memory buffering, 35 // render thread. It wraps a WebURLLoader and does in-memory buffering,
36 // pausing resource loading when the in-memory buffer is full and resuming 36 // pausing resource loading when the in-memory buffer is full and resuming
37 // resource loading when there is available capacity. 37 // resource loading when there is available capacity.
38 class CONTENT_EXPORT BufferedResourceLoader 38 class CONTENT_EXPORT BufferedResourceLoader
39 : NON_EXPORTED_BASE(public WebKit::WebURLLoaderClient) { 39 : NON_EXPORTED_BASE(public blink::WebURLLoaderClient) {
40 public: 40 public:
41 // kNeverDefer - Aggresively buffer; never defer loading while paused. 41 // kNeverDefer - Aggresively buffer; never defer loading while paused.
42 // kReadThenDefer - Request only enough data to fulfill read requests. 42 // kReadThenDefer - Request only enough data to fulfill read requests.
43 // kCapacityDefer - Try to keep amount of buffered data at capacity. 43 // kCapacityDefer - Try to keep amount of buffered data at capacity.
44 enum DeferStrategy { 44 enum DeferStrategy {
45 kNeverDefer, 45 kNeverDefer,
46 kReadThenDefer, 46 kReadThenDefer,
47 kCapacityDefer, 47 kCapacityDefer,
48 }; 48 };
49 49
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
99 // Start the resource loading with the specified URL and range. 99 // Start the resource loading with the specified URL and range.
100 // 100 //
101 // |loading_cb| is executed when the loading state has changed. 101 // |loading_cb| is executed when the loading state has changed.
102 // |progress_cb| is executed when additional data has arrived. 102 // |progress_cb| is executed when additional data has arrived.
103 typedef base::Callback<void(Status)> StartCB; 103 typedef base::Callback<void(Status)> StartCB;
104 typedef base::Callback<void(LoadingState)> LoadingStateChangedCB; 104 typedef base::Callback<void(LoadingState)> LoadingStateChangedCB;
105 typedef base::Callback<void(int64)> ProgressCB; 105 typedef base::Callback<void(int64)> ProgressCB;
106 void Start(const StartCB& start_cb, 106 void Start(const StartCB& start_cb,
107 const LoadingStateChangedCB& loading_cb, 107 const LoadingStateChangedCB& loading_cb,
108 const ProgressCB& progress_cb, 108 const ProgressCB& progress_cb,
109 WebKit::WebFrame* frame); 109 blink::WebFrame* frame);
110 110
111 // Stops everything associated with this loader, including active URL loads 111 // Stops everything associated with this loader, including active URL loads
112 // and pending callbacks. 112 // and pending callbacks.
113 // 113 //
114 // It is safe to delete a BufferedResourceLoader after calling Stop(). 114 // It is safe to delete a BufferedResourceLoader after calling Stop().
115 void Stop(); 115 void Stop();
116 116
117 // Copies |read_size| bytes from |position| into |buffer|, executing |read_cb| 117 // Copies |read_size| bytes from |position| into |buffer|, executing |read_cb|
118 // when the operation has completed. 118 // when the operation has completed.
119 // 119 //
(...skipping 11 matching lines...) Expand all
131 // unknown. 131 // unknown.
132 int64 content_length(); 132 int64 content_length();
133 133
134 // Gets the original size of the file requested. If this value is 134 // Gets the original size of the file requested. If this value is
135 // |kPositionNotSpecified|, then the size is unknown. 135 // |kPositionNotSpecified|, then the size is unknown.
136 int64 instance_size(); 136 int64 instance_size();
137 137
138 // Returns true if the server supports byte range requests. 138 // Returns true if the server supports byte range requests.
139 bool range_supported(); 139 bool range_supported();
140 140
141 // WebKit::WebURLLoaderClient implementation. 141 // blink::WebURLLoaderClient implementation.
142 virtual void willSendRequest( 142 virtual void willSendRequest(
143 WebKit::WebURLLoader* loader, 143 blink::WebURLLoader* loader,
144 WebKit::WebURLRequest& newRequest, 144 blink::WebURLRequest& newRequest,
145 const WebKit::WebURLResponse& redirectResponse); 145 const blink::WebURLResponse& redirectResponse);
146 virtual void didSendData( 146 virtual void didSendData(
147 WebKit::WebURLLoader* loader, 147 blink::WebURLLoader* loader,
148 unsigned long long bytesSent, 148 unsigned long long bytesSent,
149 unsigned long long totalBytesToBeSent); 149 unsigned long long totalBytesToBeSent);
150 virtual void didReceiveResponse( 150 virtual void didReceiveResponse(
151 WebKit::WebURLLoader* loader, 151 blink::WebURLLoader* loader,
152 const WebKit::WebURLResponse& response); 152 const blink::WebURLResponse& response);
153 virtual void didDownloadData( 153 virtual void didDownloadData(
154 WebKit::WebURLLoader* loader, 154 blink::WebURLLoader* loader,
155 int data_length, 155 int data_length,
156 int encoded_data_length); 156 int encoded_data_length);
157 virtual void didReceiveData( 157 virtual void didReceiveData(
158 WebKit::WebURLLoader* loader, 158 blink::WebURLLoader* loader,
159 const char* data, 159 const char* data,
160 int data_length, 160 int data_length,
161 int encoded_data_length); 161 int encoded_data_length);
162 virtual void didReceiveCachedMetadata( 162 virtual void didReceiveCachedMetadata(
163 WebKit::WebURLLoader* loader, 163 blink::WebURLLoader* loader,
164 const char* data, int dataLength); 164 const char* data, int dataLength);
165 virtual void didFinishLoading( 165 virtual void didFinishLoading(
166 WebKit::WebURLLoader* loader, 166 blink::WebURLLoader* loader,
167 double finishTime); 167 double finishTime);
168 virtual void didFail( 168 virtual void didFail(
169 WebKit::WebURLLoader* loader, 169 blink::WebURLLoader* loader,
170 const WebKit::WebURLError&); 170 const blink::WebURLError&);
171 171
172 // Returns true if the media resource has a single origin, false otherwise. 172 // Returns true if the media resource has a single origin, false otherwise.
173 // Only valid to call after Start() has completed. 173 // Only valid to call after Start() has completed.
174 bool HasSingleOrigin() const; 174 bool HasSingleOrigin() const;
175 175
176 // Returns true if the media resource passed a CORS access control check. 176 // Returns true if the media resource passed a CORS access control check.
177 // Only valid to call after Start() has completed. 177 // Only valid to call after Start() has completed.
178 bool DidPassCORSAccessCheck() const; 178 bool DidPassCORSAccessCheck() const;
179 179
180 // Sets the defer strategy to the given value unless it seems unwise. 180 // Sets the defer strategy to the given value unless it seems unwise.
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 bool CanFulfillRead() const; 228 bool CanFulfillRead() const;
229 229
230 // Returns true if the current read request will be fulfilled in the future. 230 // Returns true if the current read request will be fulfilled in the future.
231 bool WillFulfillRead() const; 231 bool WillFulfillRead() const;
232 232
233 // Method that does the actual read and calls the |read_cb_|, assuming the 233 // Method that does the actual read and calls the |read_cb_|, assuming the
234 // request range is in |buffer_|. 234 // request range is in |buffer_|.
235 void ReadInternal(); 235 void ReadInternal();
236 236
237 // If we have made a range request, verify the response from the server. 237 // If we have made a range request, verify the response from the server.
238 bool VerifyPartialResponse(const WebKit::WebURLResponse& response); 238 bool VerifyPartialResponse(const blink::WebURLResponse& response);
239 239
240 // Returns the value for a range request header using parameters 240 // Returns the value for a range request header using parameters
241 // |first_byte_position| and |last_byte_position|. Negative numbers other 241 // |first_byte_position| and |last_byte_position|. Negative numbers other
242 // than |kPositionNotSpecified| are not allowed for |first_byte_position| and 242 // than |kPositionNotSpecified| are not allowed for |first_byte_position| and
243 // |last_byte_position|. |first_byte_position| should always be less than or 243 // |last_byte_position|. |first_byte_position| should always be less than or
244 // equal to |last_byte_position| if they are both not |kPositionNotSpecified|. 244 // equal to |last_byte_position| if they are both not |kPositionNotSpecified|.
245 // Empty string is returned on invalid parameters. 245 // Empty string is returned on invalid parameters.
246 std::string GenerateHeaders(int64 first_byte_position, 246 std::string GenerateHeaders(int64 first_byte_position,
247 int64 last_byte_position); 247 int64 last_byte_position);
248 248
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
309 int64 read_position_; 309 int64 read_position_;
310 int read_size_; 310 int read_size_;
311 uint8* read_buffer_; 311 uint8* read_buffer_;
312 312
313 // Offsets of the requested first byte and last byte in |buffer_|. They are 313 // Offsets of the requested first byte and last byte in |buffer_|. They are
314 // written by Read(). 314 // written by Read().
315 int first_offset_; 315 int first_offset_;
316 int last_offset_; 316 int last_offset_;
317 317
318 // Injected WebURLLoader instance for testing purposes. 318 // Injected WebURLLoader instance for testing purposes.
319 scoped_ptr<WebKit::WebURLLoader> test_loader_; 319 scoped_ptr<blink::WebURLLoader> test_loader_;
320 320
321 // Bitrate of the media. Set to 0 if unknown. 321 // Bitrate of the media. Set to 0 if unknown.
322 int bitrate_; 322 int bitrate_;
323 323
324 // Playback rate of the media. 324 // Playback rate of the media.
325 float playback_rate_; 325 float playback_rate_;
326 326
327 scoped_refptr<media::MediaLog> media_log_; 327 scoped_refptr<media::MediaLog> media_log_;
328 328
329 DISALLOW_COPY_AND_ASSIGN(BufferedResourceLoader); 329 DISALLOW_COPY_AND_ASSIGN(BufferedResourceLoader);
330 }; 330 };
331 331
332 } // namespace content 332 } // namespace content
333 333
334 #endif // CONTENT_RENDERER_MEDIA_BUFFERED_RESOURCE_LOADER_H_ 334 #endif // CONTENT_RENDERER_MEDIA_BUFFERED_RESOURCE_LOADER_H_
OLDNEW
« no previous file with comments | « content/renderer/media/buffered_data_source_unittest.cc ('k') | content/renderer/media/buffered_resource_loader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698