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

Side by Side Diff: chrome/renderer/media/data_source_impl.h

Issue 42635: Lots of files touched for a very simple change. Everywhere we used a const M... (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: '' Created 11 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « chrome/renderer/media/audio_renderer_impl.cc ('k') | chrome/renderer/media/data_source_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. Use of this 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. Use of this
2 // source code is governed by a BSD-style license that can be found in the 2 // source code is governed by a BSD-style license that can be found in the
3 // LICENSE file. 3 // LICENSE file.
4 // 4 //
5 // A Chrome specific data source for video stack pipeline. The actual resource 5 // A Chrome specific data source for video stack pipeline. The actual resource
6 // loading would happen in the browser process. This class is given a file 6 // loading would happen in the browser process. This class is given a file
7 // handle and will ask for progress of downloading from RenderView which 7 // handle and will ask for progress of downloading from RenderView which
8 // delegates requests to browser process through IPC. Asynchronous IO will be 8 // delegates requests to browser process through IPC. Asynchronous IO will be
9 // performed on the file handle. 9 // performed on the file handle.
10 // 10 //
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 // media::MediaFilter implementation. 129 // media::MediaFilter implementation.
130 virtual void Stop(); 130 virtual void Stop();
131 131
132 // Methods called from demuxer thread --------------------------------------- 132 // Methods called from demuxer thread ---------------------------------------
133 // media::DataSource implementation. 133 // media::DataSource implementation.
134 virtual size_t Read(uint8* data, size_t size); 134 virtual size_t Read(uint8* data, size_t size);
135 virtual bool GetPosition(int64* position_out); 135 virtual bool GetPosition(int64* position_out);
136 virtual bool SetPosition(int64 position); 136 virtual bool SetPosition(int64 position);
137 virtual bool GetSize(int64* size_out); 137 virtual bool GetSize(int64* size_out);
138 138
139 const media::MediaFormat* GetMediaFormat(); 139 const media::MediaFormat& media_format();
140 140
141 private: 141 private:
142 friend class media::FilterFactoryImpl1<DataSourceImpl, 142 friend class media::FilterFactoryImpl1<DataSourceImpl,
143 WebMediaPlayerDelegateImpl*>; 143 WebMediaPlayerDelegateImpl*>;
144 144
145 // Methods called from render thread ---------------------------------------- 145 // Methods called from render thread ----------------------------------------
146 explicit DataSourceImpl(WebMediaPlayerDelegateImpl* delegate); 146 explicit DataSourceImpl(WebMediaPlayerDelegateImpl* delegate);
147 virtual ~DataSourceImpl(); 147 virtual ~DataSourceImpl();
148 148
149 // Tasks to be posted on render thread. 149 // Tasks to be posted on render thread.
150 void OnInitialize(std::string uri); 150 void OnInitialize(std::string uri);
151 void OnCancel(); 151 void OnCancel();
152 152
153 // Methods called from IO thread -------------------------------------------- 153 // Methods called from IO thread --------------------------------------------
154 // Handlers for file reading. 154 // Handlers for file reading.
155 void OnCreateFileStream(base::PlatformFile file); 155 void OnCreateFileStream(base::PlatformFile file);
156 void OnReadFileStream(uint8* data, size_t size); 156 void OnReadFileStream(uint8* data, size_t size);
157 void OnCloseFileStream(); 157 void OnCloseFileStream();
158 void OnSeekFileStream(net::Whence whence, int64 position); 158 void OnSeekFileStream(net::Whence whence, int64 position);
159 void OnDidFileStreamRead(int size); 159 void OnDidFileStreamRead(int size);
160 160
161 media::MediaFormat media_format_; 161 media::MediaFormat media_format_;
162 162
163 // Pointer to the delegate which provides access to RenderView, this is set 163 // Pointer to the delegate which provides access to RenderView, this is set
164 // in construction and can be accessed in all threads safely. 164 // in construction and can be accessed in all threads safely.
165 WebMediaPlayerDelegateImpl* delegate_; 165 WebMediaPlayerDelegateImpl* delegate_;
166 166
167 // Message loop of render thread.» 167 // Message loop of render thread.
168 MessageLoop* render_loop_; 168 MessageLoop* render_loop_;
169 169
170 // A common lock for protecting members accessed by multiple threads. 170 // A common lock for protecting members accessed by multiple threads.
171 Lock lock_; 171 Lock lock_;
172 172
173 // A flag that indicates whether this object has been called to stop. 173 // A flag that indicates whether this object has been called to stop.
174 bool stopped_; 174 bool stopped_;
175 175
176 // URI to the resource being downloaded.» 176 // URI to the resource being downloaded.
177 std::string uri_; 177 std::string uri_;
178 178
179 // Members for keeping track of downloading progress. 179 // Members for keeping track of downloading progress.
180 base::WaitableEvent download_event_; 180 base::WaitableEvent download_event_;
181 int64 downloaded_bytes_; 181 int64 downloaded_bytes_;
182 int64 total_bytes_; 182 int64 total_bytes_;
183 bool total_bytes_known_; 183 bool total_bytes_known_;
184 184
185 // Members related to resource loading with RenderView. 185 // Members related to resource loading with RenderView.
186 webkit_glue::ResourceLoaderBridge* resource_loader_bridge_; 186 webkit_glue::ResourceLoaderBridge* resource_loader_bridge_;
187 base::WaitableEvent resource_release_event_; 187 base::WaitableEvent resource_release_event_;
188 188
189 // Members used for reading. 189 // Members used for reading.
190 base::WaitableEvent read_event_; 190 base::WaitableEvent read_event_;
191 net::CompletionCallbackImpl<DataSourceImpl> read_callback_; 191 net::CompletionCallbackImpl<DataSourceImpl> read_callback_;
192 scoped_ptr<net::FileStream> stream_; 192 scoped_ptr<net::FileStream> stream_;
193 size_t last_read_size_; 193 size_t last_read_size_;
194 int64 position_; 194 int64 position_;
195 MessageLoop* io_loop_; 195 MessageLoop* io_loop_;
196 196
197 // Events for other operations on stream_. 197 // Events for other operations on stream_.
198 base::WaitableEvent close_event_; 198 base::WaitableEvent close_event_;
199 base::WaitableEvent seek_event_; 199 base::WaitableEvent seek_event_;
200 200
201 DISALLOW_COPY_AND_ASSIGN(DataSourceImpl); 201 DISALLOW_COPY_AND_ASSIGN(DataSourceImpl);
202 }; 202 };
203 203
204 #endif // CHROME_RENDERER_MEDIA_DATA_SOURCE_IMPL_H_ 204 #endif // CHROME_RENDERER_MEDIA_DATA_SOURCE_IMPL_H_
OLDNEW
« no previous file with comments | « chrome/renderer/media/audio_renderer_impl.cc ('k') | chrome/renderer/media/data_source_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698