diff --git a/headers/private/media/experimental/MediaConnection.h b/headers/private/media/experimental/MediaConnection.h index 9498e1eaf2..b4e8465775 100644 --- a/headers/private/media/experimental/MediaConnection.h +++ b/headers/private/media/experimental/MediaConnection.h @@ -68,12 +68,11 @@ protected: media_connection_kinds kinds); virtual ~BMediaConnection(); +private: // Those callbacks are shared between BMediaInput and BMediaOutput virtual void Connected(const media_format& format); virtual void Disconnected(); -private: - void _ConnectionRegistered(BMediaClient* owner, media_connection_id id); @@ -122,6 +121,9 @@ protected: virtual void HandleBuffer(BBuffer* buffer); + virtual void Connected(const media_format& format); + virtual void Disconnected(); + private: media_input _MediaInput() const; @@ -162,6 +164,7 @@ protected: // you are doing. virtual status_t SendBuffer(BBuffer* buffer); + virtual void Connected(const media_format& format); virtual void Disconnected(); private: diff --git a/headers/private/media/experimental/SimpleMediaClient.h b/headers/private/media/experimental/SimpleMediaClient.h index eb0f187273..2621f60bab 100755 --- a/headers/private/media/experimental/SimpleMediaClient.h +++ b/headers/private/media/experimental/SimpleMediaClient.h @@ -122,6 +122,7 @@ protected: media_connection_kinds kinds); virtual ~BSimpleMediaConnection(); + // TODO: move those to private and introduce protected methods process_hook fProcessHook; notify_hook fNotifyHook; void* fBufferCookie; diff --git a/src/kits/media/experimental/MediaConnection.cpp b/src/kits/media/experimental/MediaConnection.cpp index 5a3423fda3..c9bb372057 100644 --- a/src/kits/media/experimental/MediaConnection.cpp +++ b/src/kits/media/experimental/MediaConnection.cpp @@ -204,7 +204,20 @@ void BMediaInput::HandleBuffer(BBuffer* buffer) { CALLED(); +} + +void +BMediaInput::Connected(const media_format& format) +{ + BMediaConnection::Connected(format); +} + + +void +BMediaInput::Disconnected() +{ + BMediaConnection::Disconnected(); } @@ -297,6 +310,13 @@ BMediaOutput::SendBuffer(BBuffer* buffer) } +void +BMediaOutput::Connected(const media_format& format) +{ + BMediaConnection::Connected(format); +} + + void BMediaOutput::Disconnected() { diff --git a/src/kits/media/experimental/SimpleMediaClient.cpp b/src/kits/media/experimental/SimpleMediaClient.cpp index 9dfa094318..5334ca3fce 100644 --- a/src/kits/media/experimental/SimpleMediaClient.cpp +++ b/src/kits/media/experimental/SimpleMediaClient.cpp @@ -195,7 +195,7 @@ BSimpleMediaInput::Disconnected() if (fNotifyHook != NULL) (*fNotifyHook)(this, BSimpleMediaConnection::B_INPUT_DISCONNECTED); - BMediaConnection::Disconnected(); + BMediaInput::Disconnected(); } @@ -242,7 +242,7 @@ BSimpleMediaOutput::Connected(const media_format& format) if (fNotifyHook != NULL) (*fNotifyHook)(this, BSimpleMediaConnection::B_OUTPUT_CONNECTED); - BSimpleMediaConnection::Connected(format); + BMediaOutput::Connected(format); } @@ -252,5 +252,5 @@ BSimpleMediaOutput::Disconnected() if (fNotifyHook != NULL) (*fNotifyHook)(this, BSimpleMediaConnection::B_OUTPUT_DISCONNECTED); - BSimpleMediaConnection::Disconnected(); + BMediaOutput::Disconnected(); }