| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 MEDIA_BASE_COMPOSITE_FILTER_H_ | 5 #ifndef MEDIA_BASE_COMPOSITE_FILTER_H_ |
| 6 #define MEDIA_BASE_COMPOSITE_FILTER_H_ | 6 #define MEDIA_BASE_COMPOSITE_FILTER_H_ |
| 7 | 7 |
| 8 #include "base/threading/thread.h" | 8 #include "base/threading/thread.h" |
| 9 #include "media/base/filter_host.h" | 9 #include "media/base/filter_host.h" |
| 10 #include "media/base/filters.h" | 10 #include "media/base/filters.h" |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 110 | 110 |
| 111 // Helper function for handling errors during call sequences. | 111 // Helper function for handling errors during call sequences. |
| 112 void HandleError(PipelineError error); | 112 void HandleError(PipelineError error); |
| 113 | 113 |
| 114 // Creates a callback that can be called from any thread, but is guaranteed | 114 // Creates a callback that can be called from any thread, but is guaranteed |
| 115 // to call the specified method on the thread associated with this filter. | 115 // to call the specified method on the thread associated with this filter. |
| 116 FilterCallback* NewThreadSafeCallback(void (CompositeFilter::*method)()); | 116 FilterCallback* NewThreadSafeCallback(void (CompositeFilter::*method)()); |
| 117 | 117 |
| 118 // Helper function used by NewThreadSafeCallback() to make sure the | 118 // Helper function used by NewThreadSafeCallback() to make sure the |
| 119 // method gets called on the right thread. | 119 // method gets called on the right thread. |
| 120 void OnCallback(MessageLoop* message_loop, | 120 static void OnCallback(MessageLoop* message_loop, |
| 121 void (CompositeFilter::*method)()); | 121 CancelableTask* task); |
| 122 | 122 |
| 123 // Helper function that indicates whether SetError() calls can be forwarded | 123 // Helper function that indicates whether SetError() calls can be forwarded |
| 124 // to the host of this filter. | 124 // to the host of this filter. |
| 125 bool CanForwardError(); | 125 bool CanForwardError(); |
| 126 | 126 |
| 127 // Vector of threads owned by the composite and used by filters in |filters_|. | 127 // Vector of threads owned by the composite and used by filters in |filters_|. |
| 128 typedef std::vector<base::Thread*> FilterThreadVector; | 128 typedef std::vector<base::Thread*> FilterThreadVector; |
| 129 FilterThreadVector filter_threads_; | 129 FilterThreadVector filter_threads_; |
| 130 | 130 |
| 131 // Vector of the filters added to the composite. | 131 // Vector of the filters added to the composite. |
| (...skipping 18 matching lines...) Expand all Loading... |
| 150 // Message loop passed into the constructor. | 150 // Message loop passed into the constructor. |
| 151 MessageLoop* message_loop_; | 151 MessageLoop* message_loop_; |
| 152 | 152 |
| 153 // FilterHost implementation passed to Filters owned by this | 153 // FilterHost implementation passed to Filters owned by this |
| 154 // object. | 154 // object. |
| 155 scoped_ptr<FilterHostImpl> host_impl_; | 155 scoped_ptr<FilterHostImpl> host_impl_; |
| 156 | 156 |
| 157 // Error passed in the last SetError() call. | 157 // Error passed in the last SetError() call. |
| 158 PipelineError error_; | 158 PipelineError error_; |
| 159 | 159 |
| 160 scoped_ptr<ScopedRunnableMethodFactory<CompositeFilter> > runnable_factory_; |
| 161 |
| 160 DISALLOW_COPY_AND_ASSIGN(CompositeFilter); | 162 DISALLOW_COPY_AND_ASSIGN(CompositeFilter); |
| 161 }; | 163 }; |
| 162 | 164 |
| 163 } // namespace media | 165 } // namespace media |
| 164 | 166 |
| 165 #endif // MEDIA_BASE_COMPOSITE_FILTER_H_ | 167 #endif // MEDIA_BASE_COMPOSITE_FILTER_H_ |
| OLD | NEW |