Chromium Code Reviews| Index: media/audio/audio_input_ipc.h |
| diff --git a/media/audio/audio_input_ipc.h b/media/audio/audio_input_ipc.h |
| index eb4e72dfae0b31145e1fbd869b7553f92f97a23f..aaa4a870e39e2cbe8f6c53fcdc21b3b2283b061d 100644 |
| --- a/media/audio/audio_input_ipc.h |
| +++ b/media/audio/audio_input_ipc.h |
| @@ -48,55 +48,47 @@ class MEDIA_EXPORT AudioInputIPCDelegate { |
| // Called when the AudioInputIPC object is going away and/or when the |
| // IPC channel has been closed and no more IPC requests can be made. |
| - // Implementations must clear any references to the AudioInputIPC object |
| - // at this point. |
| + // Implementations should delete their owned AudioInputIPC instance |
| + // immediately. |
| virtual void OnIPCClosed() = 0; |
| protected: |
| virtual ~AudioInputIPCDelegate(); |
| }; |
| -// Provides IPC functionality for an AudioInputDevice. The implementation |
| -// should asynchronously deliver the messages to an AudioInputController object |
| -// (or create one in the case of CreateStream()), that may live in a separate |
| -// process. |
| +// Provides IPC functionality for an AudioInputIPCDelegate (e.g., and |
| +// AudioInputDevice. The implementation should asynchronously deliver the |
| +// messages to an AudioInputController object (or create one in the case of |
| +// CreateStream()), that may live in a separate process. |
| class MEDIA_EXPORT AudioInputIPC { |
| public: |
| - // Registers an AudioInputIPCDelegate and returns a |stream_id| that |
| - // must be used with all other IPC functions in this interface. |
| - virtual int AddDelegate(AudioInputIPCDelegate* delegate) = 0; |
| - |
| - // Unregisters a delegate that was previously registered via a call to |
| - // AddDelegate(). The audio stream should be in a closed state prior to |
| - // calling this function. |
| - virtual void RemoveDelegate(int stream_id) = 0; |
| + virtual ~AudioInputIPC(); |
| // Sends a request to create an AudioInputController object in the peer |
| - // process, identify it by |stream_id| and configure it to use the specified |
| - // audio |params|. Once the stream has been created, the implementation must |
| - // generate a notification to the AudioInputIPCDelegate and call |
| - // OnStreamCreated(). |
| - virtual void CreateStream(int stream_id, const AudioParameters& params, |
| - const std::string& device_id, bool automatic_gain_control) = 0; |
| + // process and configures it to use the specified audio |params|. Once the |
| + // stream has been created, the implementation will notify |delegate| by |
| + // calling OnStreamCreated(). |
| + virtual void CreateStream(AudioInputIPCDelegate* delegate, |
| + const AudioParameters& params, |
| + const std::string& device_id, |
|
palmer
2013/03/05 21:09:32
Same, no string.
DaleCurtis
2013/03/05 23:29:54
I think this is a change for a separate CL if it e
miu
2013/03/06 22:36:52
Definitely falls within the scope of http://crbug.
|
| + bool automatic_gain_control) = 0; |
| // Starts the device on the server side. Once the device has started, |
| // or failed to start, a callback to |
| - // AudioInputIPCDelegate::OnDeviceReady() must be made. |
| - virtual void StartDevice(int stream_id, int session_id) = 0; |
| + // AudioInputIPCDelegate::OnDeviceReady() will be made. |
| + // |
| + // TODO(miu): Merge StartDevice into CreateStream (http://crbug.com/179597). |
| + virtual void StartDevice(AudioInputIPCDelegate* delegate, int session_id) = 0; |
| // Corresponds to a call to AudioInputController::Record() on the server side. |
| - virtual void RecordStream(int stream_id) = 0; |
| + virtual void RecordStream() = 0; |
| // Sets the volume of the audio stream. |
| - virtual void SetVolume(int stream_id, double volume) = 0; |
| - |
| - // Closes the audio stream and deletes the matching AudioInputController |
| - // instance. Prior to deleting the AudioInputController object, a call to |
| - // AudioInputController::Close must be made. |
| - virtual void CloseStream(int stream_id) = 0; |
| + virtual void SetVolume(double volume) = 0; |
| - protected: |
| - virtual ~AudioInputIPC(); |
| + // Closes the audio stream which should shut down the corresponding |
| + // AudioInputController in the peer process. |
| + virtual void CloseStream() = 0; |
| }; |
| } // namespace media |