History log of /haiku/headers/private/media/DataExchange.h
Revision Date Author Comments
# 32afe10a 23-Jul-2015 Dario Casalinuovo <b.vitruvio@gmail.com>

BMediaRoster: Add B_MEDIA_SERVER_STARTED and B_MEDIA_SERVER_QUIT

* This is done by watching to registrar notifications
and providing a minimal service to contact the
media roster in private API. The roster use this
service to automatically reconnect to the media_server.


# f0a1eb2d 05-Jan-2010 Axel Dörfler <axeld@pinc-software.de>

* The static object construction and destruction is no longer random, but takes
the internal dependencies into account. This should fix bugs #5166, #5120,
and #5150.
* Also, the time source object manager, as well as the dormant node manager
are now recreated on media roster restart (when the media server is
restarted).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34906 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6cafce94 09-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Moved the port pool into the new request_data.cpp file; it's no longer
accessible from the outside.
* Instead, request_data now retrieves/releases a reply port on its own.
* There were some more places that still used write_port()/read_port() instead
of QueryServer().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34597 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5f207b83 09-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Moved all server interface definitions from DataExchange.h to
ServerInterface.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34594 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9c3b4706 09-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleaned up the node manager, got rid of its use of Map, and List.
* Fixed at least two reference counting problems, but nodes from killed teams
still remain alive (will look into this at a later point).
* GetLiveNodes() is now using transfer_area() as well.
* Made all sizes in the SendTo*() and Query*() functions size_t.
* Replaced reinterpret_casts with static_casts when casting void pointers.
* Ordered the request/reply structures by target.
* Tried to consolidate the use of add_on vs. addon.
* More cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34591 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c28dd9fd 08-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Implemented getting/setting the audio gain of media files.
* Renamed "remove_ref_for" command structures and constants to
"invalidate_item".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34565 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7e5d04c5 08-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

Beware! The following commit will crash your system when open "Sounds"; I'll
look into this now.
* Renamed the MMediaFilesManager to MediaFilesManager.
* Got rid of its Map usage, we're using std::map now instead.
* The media_server is using an unsafe method to transfer areas from the server
to the client. I've changed this for the BMediaFiles API to use Haiku's new
transfer_area() function. However, this seems to cause the above mentioned
problems.
* Improved naming and data exchange structures used for the BMediaFiles API.
* Fixed BMediaFiles leaking its lists.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34554 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9dec2310 05-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

Sorry for this large commit in advance; it's not really possible to divide this
into smaller parts:

media_addon_server:
* Removed (broken) use of (broken and inefficient) home-brewn Map, and List
classes. This also fixes a crash on shutdown when used with the malloc_debug
implementation. It's using stl::vector, and stl::map now instead.

_shared_buffer_list:
* Renamed _shared_buffer_list to SharedBufferList, and put it into the BPrivate
namespace. Also, made a class out of it.
* Separated shared buffer list creation from cloning.
* Enlarged maximum number of buffers to something that is not that evil, but
actually uses the space it has (ie. is a useful multiple of
shared_buffer_info that fills a multiple of B_PAGE_SIZE as much as possible).
* No longer drops into the debugger if the
* The list that is currently used is very inefficient for the features it
provides though (no change there).

_buffer_id_cache:
* Renamed to BufferCache, and put it into the private namespace
* It now deletes its buffers on deletion; since the BBufferConsumer will be
gone, too, at this point, there is little chance that there are still buffers
in use.
* Also, it's now using std::map instead of the (see above) Map class.

BBuffer:
* Got rid of the fBufferID member.

Misc.:
* Got rid of the global "team" variable; the media kit is now using the
private app kit's current_team() now.
* Added a lot of missing error checks (mostly memory allocations).
* Renamed fields like "flavorid" to flavor_id, renamed "dfi_*" fields to
something more detailed.
* Moved ServerInterface.h from src/servers/media/ to headers/private/media.
* Notifications.h was not self contained.
* Added missing licenses.
* Lots of cleanups, and coding style fixes.

What this doesn't fix:
* Bug #4954 which started all this (this comes next, though)
* Deinitialization is broken, as the PortPool is uninitialized too early, and
still used afterwards.
* The strange add-on monitoring code in the media_addon_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34500 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2795d5dc 22-Nov-2009 Jérôme Duval <korli@users.berlios.de>

Play startup sound after the first defaults rescan is done. This fixed #1902.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34189 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8e4966eb 11-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Applied patch by Adrian to fix the command structures used for the media
server with GCC4 in a GCC2 system (and vice versa). See #4920 which this
patch closes, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33997 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6033e52a 30-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Implemented support for get_next_encoder() variations from MediaFormats.h.
The AddOnManager in the media_server registers one encoder entry per
successful EncoderPlugin::RegisterNextEncoder(). This gives us a first idea
what media_format_family and input/output media_type is supported. The
mechanism may have to be extended, or the Encoder needs an API to specialize
a format further. In that case, the get_next_encoder() version that takes
optional _acceptedInput/OutputFormat needs to instantiate the plugin and
needs to ask the Encoder. But AFAIK, no app uses it like that anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32005 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7cd2513b 30-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Changed the way Encoders are published by EncoderPlugins. Encoder retrieval
in PluginManager is reenabled. We use the media_codec_info.id to reference
a specific plugin, while the sub_id will be used to reference individual
Encoders that the plugin supports. No idea if that's how it was intented, but
some comments hint in this direction. I failed to mention this before, but
comments are of course very welcome on any of these commits, as always.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31993 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7c06546a 29-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Implement the backend of get_next_file_format(). The AddOnManager maintains
a list for known media_file_formats. The internal IDs map to plugins.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31950 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c30ef79d 29-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Small cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31934 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 57bb0b9f 29-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

* Added DataExchange message constants and server communication structs for
retrieving WriterPlugins and EncoderPlugins from the media_addon_server.
* Enabled respective code in PluginManager (and fixed the copy&paste bugs),
the server side is still missing, though...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31924 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 34c72144 08-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* BParameterWeb::StartWatching() now just calls BMediaRoster::StartWatching()
as on Dano - since the functionality is already there, those two functions
aren't really needed, though, so we could remove them again.
* Cleaned up DataExchange.h, and added basic reply/request structs for anything
that needs an area.
* BControllable now uses a helper class ReceiveTransfer to deal with requests
with areas.
* Major style cleanup of MediaRoster.cpp, though one could still bury some
hours there...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30045 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f4a2c0f9 31-Mar-2008 Maurice Kalinowski <mauricek@nowhere.fake>

put enum to appropiate place as pointed out by marcus



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24707 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6938364b 29-Mar-2008 Maurice Kalinowski <mauricek@nowhere.fake>

* Implemented BMediaRoster hooks GetRefFor, SetRefFor, SniffRefFor to access BFileInterface related file functions.
* Implemented BFileInterface class which was nearly empty so far. Added handling of messages passed to BFileInterface class.
* Added needed structs and message values to DataExchange.
* This is needed to get for instance the reader.media_addon to work. Usually one calls above functions to set a file to be decoded by the node. If the target is a consumer, they are used for setting the target for encoding data.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24671 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 999cd0ac 29-Mar-2008 Maurice Kalinowski <mauricek@nowhere.fake>

* implemented BMediaRoster::StartControlPanel(). It queries a BControllable node with CONTROLLABE_START_CONTROL_PANEL message and returns the result to the caller (thx for help/suggestions from Marcus here). Needed to add appropiate structs and message value to DataExchange.h
* implemented BControllable::StartControlPanel(). The behaviour is supposed to be the one documented in the BeBook, meaning that it first checks if the BControllable node has been instantiated over an BMediaAddOn. If so, we investigate where the addon is located and try to launch it. Thus media_addons which have a control panel need to be compiled as an Application, not as an Addon. See r24664 as an example.
* inside BControllable::HandleMessage() call StartControlPanel for the message.
* MediaNodes having such a ControlPanel are rarely used as parameterwebs should provide you everything. But for instance the vst MediaAddOn uses it and some others do as well.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24665 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 31ebfe61 16-Apr-2007 Jérôme Duval <korli@users.berlios.de>

added default sound events
implemented system_beep() by sending an event to the media addon server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20728 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 33c487a4 15-Apr-2007 Jérôme Duval <korli@users.berlios.de>

implemented add_system_beep_event()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20711 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 758b1d0e 12-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
Otherwise the an inner class with that name is considered as friend.
gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 28a06094 15-Aug-2004 beveloper <beveloper@nowhere.fake>

Modified media_server and media_addon_server cration/terminatio.
Now uses application mime sig for start/stopping. Much better
compatibility with libbe.so restarting functions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8586 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8f975d5e 03-Feb-2004 shatty <shatty@nowhere.fake>

axel points out that the message loop is already started by the time we get to ReadyToRun, so we can start our friends there


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6485 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fa8dbc01 01-Feb-2004 shatty <shatty@nowhere.fake>

new MediaFormats. node monitoring codec plugin loading. codec mods to support new codec api to retrieve supported formats.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6465 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 86bafc63 23-Jan-2004 Axel Dörfler <axeld@pinc-software.de>

Removed now unused get_format_for_description and get_description_for_format
request/reply structures.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6247 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b47303b 22-Jan-2004 Axel Dörfler <axeld@pinc-software.de>

Added a QueryServer() function for BMessage communication.
Added MEDIA_SERVER_GET_FORMATS for the new BMediaFormats implementation.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6233 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 046f31f9 14-Dec-2003 beveloper <beveloper@nowhere.fake>

update to the codec api, docoder assignment is now handled in the server
multiple reader add-ons are probed to recognize a media file
FormatManager does the translation from media_format to media_description


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5667 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4446fcac 08-Dec-2003 Jérôme Duval <korli@users.berlios.de>

Added GetStartLatency handling


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5623 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 572e60a4 01-Dec-2003 beveloper <beveloper@nowhere.fake>

some more changes, no longer using BMediaFormats


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5522 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0a8e9c76 25-Nov-2003 Jérôme Duval <korli@users.berlios.de>

To clear the current entry_ref


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5477 a95241bf-73f2-0310-859d-f6bbb57e9c96


# adcc5bea 12-Nov-2003 Jérôme Duval <korli@users.berlios.de>

Struct and codes for MediaFiles


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5323 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 01fa698a 12-Jun-2003 beveloper <beveloper@nowhere.fake>

implemented BParameter::SetValue() and BControllable::SetParameterValue()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3494 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 74b216a6 12-Jun-2003 beveloper <beveloper@nowhere.fake>

Added BParameter::GetValue() and BControllable::GetParameterValue() data transfer


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3489 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cc2b5950 03-Jun-2003 beveloper <beveloper@nowhere.fake>

fixed format negotiation


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3411 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5917dd5b 01-Jun-2003 beveloper <beveloper@nowhere.fake>

various timing related bugfixes


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3395 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 21871f38 25-May-2003 beveloper <beveloper@nowhere.fake>

various bugfixes


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3339 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 359ac306 25-May-2003 beveloper <beveloper@nowhere.fake>

Added automatic loading of physical input and output nodes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3320 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f46925ed 22-Apr-2003 beveloper <beveloper@nowhere.fake>

Parameter web support


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3097 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4d6911ee 22-Mar-2003 beveloper <beveloper@nowhere.fake>

fixed latency calculation


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2998 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 626824ea 21-Mar-2003 beveloper <beveloper@nowhere.fake>

Added reference counting of media add-on instances.
You can't create more node instances than "possible_count".


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2990 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 54187cc6 15-Mar-2003 beveloper <beveloper@nowhere.fake>

Global nodes can mow be released by the teams which created them.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2923 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cf4e2277 14-Mar-2003 beveloper <beveloper@nowhere.fake>

fixing BMediaRoster::ReleaseNode()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2915 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 57c59a53 14-Mar-2003 beveloper <beveloper@nowhere.fake>

Improved error handing and timeouts.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2908 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7fd43270 19-Jan-2003 beveloper <beveloper@nowhere.fake>

Updated time source code to allow automatic starting and stopping of time sources.
Sending run mode changes and broadcasting of time changes is also implemented.
For one reason or another, all this doesn't work right now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2520 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 287f7492 02-Jan-2003 beveloper <beveloper@nowhere.fake>

more time source function...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2353 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bd571719 25-Dec-2002 beveloper <beveloper@nowhere.fake>

Checkpoint.
Started adding support for persistent default nodes.
System time source and BTimeSource are broken.c


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2305 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 07557078 08-Dec-2002 beveloper <beveloper@nowhere.fake>

changed BufferManager communication to use ports.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2193 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6396865d 19-Nov-2002 beveloper <beveloper@nowhere.fake>

added automatic media_addon_server launching and termination.
added detection of and cleanup after application crashes.
if the media_addon_server crashes, it will be restarted.
removed preleminary volume control functions.
removed unneeded media_server functions.
changed application registration to use port based messaging.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2027 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dfb2ad61 03-Nov-2002 beveloper <beveloper@nowhere.fake>

code cleanup


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1833 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 570f7d04 10-Oct-2002 beveloper <beveloper@nowhere.fake>

updated to include the same features/bugs as the screenshot in today's news.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1479 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1299bfb2 08-Oct-2002 beveloper <beveloper@nowhere.fake>

added real media_server node management, removed bugs, added debug output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1467 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 85dfab2b 05-Oct-2002 beveloper <beveloper@nowhere.fake>

even more BMediaRoster functions


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1396 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9e9417d2 05-Oct-2002 beveloper <beveloper@nowhere.fake>

more BMediaRoster functionality


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1381 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e1df8c52 03-Oct-2002 beveloper <beveloper@nowhere.fake>

made debug output more human readable


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1362 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3620737c 03-Oct-2002 beveloper <beveloper@nowhere.fake>

added more BMediaRoster functionality


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8c6a6096 02-Oct-2002 beveloper <beveloper@nowhere.fake>

rewrote BMediaRoster::Connect() and a few related functions


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1347 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e66fda40 02-Oct-2002 beveloper <beveloper@nowhere.fake>

finished notification support


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1345 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f4925104 01-Oct-2002 beveloper <beveloper@nowhere.fake>

changed media kit internal messaging and notification support


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1338 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 32afe10ab298b543622ea2089f5fa404c83788ae 23-Jul-2015 Dario Casalinuovo <b.vitruvio@gmail.com>

BMediaRoster: Add B_MEDIA_SERVER_STARTED and B_MEDIA_SERVER_QUIT

* This is done by watching to registrar notifications
and providing a minimal service to contact the
media roster in private API. The roster use this
service to automatically reconnect to the media_server.


# f0a1eb2dba3c1a4703f1b9f43292f6383358caf0 05-Jan-2010 Axel Dörfler <axeld@pinc-software.de>

* The static object construction and destruction is no longer random, but takes
the internal dependencies into account. This should fix bugs #5166, #5120,
and #5150.
* Also, the time source object manager, as well as the dormant node manager
are now recreated on media roster restart (when the media server is
restarted).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34906 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6cafce94b533adc869d1958cdc4cb6db178f65c6 09-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Moved the port pool into the new request_data.cpp file; it's no longer
accessible from the outside.
* Instead, request_data now retrieves/releases a reply port on its own.
* There were some more places that still used write_port()/read_port() instead
of QueryServer().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34597 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5f207b83ae4e28125151469d431dfd768406dfa6 09-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Moved all server interface definitions from DataExchange.h to
ServerInterface.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34594 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9c3b4706dd3ed8f9896031973852735223be485c 09-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleaned up the node manager, got rid of its use of Map, and List.
* Fixed at least two reference counting problems, but nodes from killed teams
still remain alive (will look into this at a later point).
* GetLiveNodes() is now using transfer_area() as well.
* Made all sizes in the SendTo*() and Query*() functions size_t.
* Replaced reinterpret_casts with static_casts when casting void pointers.
* Ordered the request/reply structures by target.
* Tried to consolidate the use of add_on vs. addon.
* More cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34591 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c28dd9fdc3579bef534f904454f9d780a12efee7 08-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Implemented getting/setting the audio gain of media files.
* Renamed "remove_ref_for" command structures and constants to
"invalidate_item".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34565 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7e5d04c5430836d6113d550a669d57cb1cf7411b 08-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

Beware! The following commit will crash your system when open "Sounds"; I'll
look into this now.
* Renamed the MMediaFilesManager to MediaFilesManager.
* Got rid of its Map usage, we're using std::map now instead.
* The media_server is using an unsafe method to transfer areas from the server
to the client. I've changed this for the BMediaFiles API to use Haiku's new
transfer_area() function. However, this seems to cause the above mentioned
problems.
* Improved naming and data exchange structures used for the BMediaFiles API.
* Fixed BMediaFiles leaking its lists.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34554 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9dec23104287e2fd592cc14148b43fb28a6e1d8e 05-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

Sorry for this large commit in advance; it's not really possible to divide this
into smaller parts:

media_addon_server:
* Removed (broken) use of (broken and inefficient) home-brewn Map, and List
classes. This also fixes a crash on shutdown when used with the malloc_debug
implementation. It's using stl::vector, and stl::map now instead.

_shared_buffer_list:
* Renamed _shared_buffer_list to SharedBufferList, and put it into the BPrivate
namespace. Also, made a class out of it.
* Separated shared buffer list creation from cloning.
* Enlarged maximum number of buffers to something that is not that evil, but
actually uses the space it has (ie. is a useful multiple of
shared_buffer_info that fills a multiple of B_PAGE_SIZE as much as possible).
* No longer drops into the debugger if the
* The list that is currently used is very inefficient for the features it
provides though (no change there).

_buffer_id_cache:
* Renamed to BufferCache, and put it into the private namespace
* It now deletes its buffers on deletion; since the BBufferConsumer will be
gone, too, at this point, there is little chance that there are still buffers
in use.
* Also, it's now using std::map instead of the (see above) Map class.

BBuffer:
* Got rid of the fBufferID member.

Misc.:
* Got rid of the global "team" variable; the media kit is now using the
private app kit's current_team() now.
* Added a lot of missing error checks (mostly memory allocations).
* Renamed fields like "flavorid" to flavor_id, renamed "dfi_*" fields to
something more detailed.
* Moved ServerInterface.h from src/servers/media/ to headers/private/media.
* Notifications.h was not self contained.
* Added missing licenses.
* Lots of cleanups, and coding style fixes.

What this doesn't fix:
* Bug #4954 which started all this (this comes next, though)
* Deinitialization is broken, as the PortPool is uninitialized too early, and
still used afterwards.
* The strange add-on monitoring code in the media_addon_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34500 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2795d5dca564b5b03fbbfbcc60c04151d738b92d 22-Nov-2009 Jérôme Duval <korli@users.berlios.de>

Play startup sound after the first defaults rescan is done. This fixed #1902.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34189 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8e4966ebcabef46f03c82286bdf99fc727d3a894 11-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Applied patch by Adrian to fix the command structures used for the media
server with GCC4 in a GCC2 system (and vice versa). See #4920 which this
patch closes, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33997 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6033e52a8318c9f9b1a6945709fe89b0d070471b 30-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Implemented support for get_next_encoder() variations from MediaFormats.h.
The AddOnManager in the media_server registers one encoder entry per
successful EncoderPlugin::RegisterNextEncoder(). This gives us a first idea
what media_format_family and input/output media_type is supported. The
mechanism may have to be extended, or the Encoder needs an API to specialize
a format further. In that case, the get_next_encoder() version that takes
optional _acceptedInput/OutputFormat needs to instantiate the plugin and
needs to ask the Encoder. But AFAIK, no app uses it like that anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32005 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7cd2513b824db570e3db1ac0aad919859989e4ed 30-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Changed the way Encoders are published by EncoderPlugins. Encoder retrieval
in PluginManager is reenabled. We use the media_codec_info.id to reference
a specific plugin, while the sub_id will be used to reference individual
Encoders that the plugin supports. No idea if that's how it was intented, but
some comments hint in this direction. I failed to mention this before, but
comments are of course very welcome on any of these commits, as always.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31993 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7c06546a8e8df703165baff0156d95f622d00538 29-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Implement the backend of get_next_file_format(). The AddOnManager maintains
a list for known media_file_formats. The internal IDs map to plugins.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31950 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c30ef79def6148f4ac2e4022053d016140802be7 29-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Small cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31934 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 57bb0b9fcd6a907c3eb6e612114b457b846f45e9 29-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

* Added DataExchange message constants and server communication structs for
retrieving WriterPlugins and EncoderPlugins from the media_addon_server.
* Enabled respective code in PluginManager (and fixed the copy&paste bugs),
the server side is still missing, though...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31924 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 34c721444214fe3e783ecc57b3eb4627b1a18b77 08-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* BParameterWeb::StartWatching() now just calls BMediaRoster::StartWatching()
as on Dano - since the functionality is already there, those two functions
aren't really needed, though, so we could remove them again.
* Cleaned up DataExchange.h, and added basic reply/request structs for anything
that needs an area.
* BControllable now uses a helper class ReceiveTransfer to deal with requests
with areas.
* Major style cleanup of MediaRoster.cpp, though one could still bury some
hours there...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30045 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f4a2c0f94566d3d42ac276fa66182917f845056f 31-Mar-2008 Maurice Kalinowski <mauricek@nowhere.fake>

put enum to appropiate place as pointed out by marcus



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24707 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6938364b3992fe594a30cc4ec76ca0bd5f951886 29-Mar-2008 Maurice Kalinowski <mauricek@nowhere.fake>

* Implemented BMediaRoster hooks GetRefFor, SetRefFor, SniffRefFor to access BFileInterface related file functions.
* Implemented BFileInterface class which was nearly empty so far. Added handling of messages passed to BFileInterface class.
* Added needed structs and message values to DataExchange.
* This is needed to get for instance the reader.media_addon to work. Usually one calls above functions to set a file to be decoded by the node. If the target is a consumer, they are used for setting the target for encoding data.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24671 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 999cd0acee12d10de95b90f2aaa29e5aaffba58d 29-Mar-2008 Maurice Kalinowski <mauricek@nowhere.fake>

* implemented BMediaRoster::StartControlPanel(). It queries a BControllable node with CONTROLLABE_START_CONTROL_PANEL message and returns the result to the caller (thx for help/suggestions from Marcus here). Needed to add appropiate structs and message value to DataExchange.h
* implemented BControllable::StartControlPanel(). The behaviour is supposed to be the one documented in the BeBook, meaning that it first checks if the BControllable node has been instantiated over an BMediaAddOn. If so, we investigate where the addon is located and try to launch it. Thus media_addons which have a control panel need to be compiled as an Application, not as an Addon. See r24664 as an example.
* inside BControllable::HandleMessage() call StartControlPanel for the message.
* MediaNodes having such a ControlPanel are rarely used as parameterwebs should provide you everything. But for instance the vst MediaAddOn uses it and some others do as well.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24665 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 31ebfe61e4188d741ad680737a16d1eb21adbe35 16-Apr-2007 Jérôme Duval <korli@users.berlios.de>

added default sound events
implemented system_beep() by sending an event to the media addon server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20728 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 33c487a43ef76dc033ad943df4d5bdbbe9298d83 15-Apr-2007 Jérôme Duval <korli@users.berlios.de>

implemented add_system_beep_event()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20711 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 758b1d0e05fe1042cce6e00d194a147802d4f9be 12-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
Otherwise the an inner class with that name is considered as friend.
gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 28a06094b2a1b2239861d222260e501413990cde 15-Aug-2004 beveloper <beveloper@nowhere.fake>

Modified media_server and media_addon_server cration/terminatio.
Now uses application mime sig for start/stopping. Much better
compatibility with libbe.so restarting functions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8586 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8f975d5e5f3719fd580616e6e333dca51c85e838 03-Feb-2004 shatty <shatty@nowhere.fake>

axel points out that the message loop is already started by the time we get to ReadyToRun, so we can start our friends there


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6485 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fa8dbc019dd3bd72a121c30ff5838f71f5185a7b 01-Feb-2004 shatty <shatty@nowhere.fake>

new MediaFormats. node monitoring codec plugin loading. codec mods to support new codec api to retrieve supported formats.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6465 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 86bafc634b69d9b9d24a56bfbc44c629e82da8c4 23-Jan-2004 Axel Dörfler <axeld@pinc-software.de>

Removed now unused get_format_for_description and get_description_for_format
request/reply structures.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6247 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b47303be414cd2e1f8f98f081500878c9b841ab 22-Jan-2004 Axel Dörfler <axeld@pinc-software.de>

Added a QueryServer() function for BMessage communication.
Added MEDIA_SERVER_GET_FORMATS for the new BMediaFormats implementation.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6233 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 046f31f91f5d4f56b2fed3ff5c5759328d222cf2 14-Dec-2003 beveloper <beveloper@nowhere.fake>

update to the codec api, docoder assignment is now handled in the server
multiple reader add-ons are probed to recognize a media file
FormatManager does the translation from media_format to media_description


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5667 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4446fcac054f2cb91dcc30326f40a383f74b4ab3 08-Dec-2003 Jérôme Duval <korli@users.berlios.de>

Added GetStartLatency handling


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5623 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 572e60a4819b40e8f542b00e13eff55559d48c24 01-Dec-2003 beveloper <beveloper@nowhere.fake>

some more changes, no longer using BMediaFormats


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5522 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0a8e9c766a8dbd95ee2ec9c661ac98cfba02540e 25-Nov-2003 Jérôme Duval <korli@users.berlios.de>

To clear the current entry_ref


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5477 a95241bf-73f2-0310-859d-f6bbb57e9c96


# adcc5beacadb4b98d9ff217999d9279d0a0e5faf 12-Nov-2003 Jérôme Duval <korli@users.berlios.de>

Struct and codes for MediaFiles


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5323 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 01fa698a92e2a7782b52114ad901391573b5ea85 12-Jun-2003 beveloper <beveloper@nowhere.fake>

implemented BParameter::SetValue() and BControllable::SetParameterValue()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3494 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 74b216a688534239b212d2bb2f4f196096057a6d 12-Jun-2003 beveloper <beveloper@nowhere.fake>

Added BParameter::GetValue() and BControllable::GetParameterValue() data transfer


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3489 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cc2b59509b71dc802dd5fb047e7aa50158f8d6d2 03-Jun-2003 beveloper <beveloper@nowhere.fake>

fixed format negotiation


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3411 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5917dd5b85eed661e5d9297c8eb8979bf304b6dc 01-Jun-2003 beveloper <beveloper@nowhere.fake>

various timing related bugfixes


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3395 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 21871f384ecf9ad360ac1d0c8de9ba888fb5c037 25-May-2003 beveloper <beveloper@nowhere.fake>

various bugfixes


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3339 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 359ac30644ff37232316ad7c0a187c2454e64770 25-May-2003 beveloper <beveloper@nowhere.fake>

Added automatic loading of physical input and output nodes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3320 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f46925ed3538d05b7926c4ccc9fa4b65c49e5fef 22-Apr-2003 beveloper <beveloper@nowhere.fake>

Parameter web support


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3097 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4d6911ee075b34df2c4ab4a97fd3703929ee91a0 22-Mar-2003 beveloper <beveloper@nowhere.fake>

fixed latency calculation


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2998 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 626824eaaf91ec35de3ca9eb737f87d98ffb6121 21-Mar-2003 beveloper <beveloper@nowhere.fake>

Added reference counting of media add-on instances.
You can't create more node instances than "possible_count".


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2990 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 54187cc6e8dab0f8502b3fed8621e13ce44a3cf8 15-Mar-2003 beveloper <beveloper@nowhere.fake>

Global nodes can mow be released by the teams which created them.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2923 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cf4e22778668a91fead7c7573d531d5d1fac8a12 14-Mar-2003 beveloper <beveloper@nowhere.fake>

fixing BMediaRoster::ReleaseNode()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2915 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 57c59a5377e36e54f7c2406a4f22da859a80d4a8 14-Mar-2003 beveloper <beveloper@nowhere.fake>

Improved error handing and timeouts.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2908 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7fd432700b5fd02a23af42ee36d1bc780e8bf702 19-Jan-2003 beveloper <beveloper@nowhere.fake>

Updated time source code to allow automatic starting and stopping of time sources.
Sending run mode changes and broadcasting of time changes is also implemented.
For one reason or another, all this doesn't work right now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2520 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 287f7492c391deeb77d87951ed2b0620a9d163d5 02-Jan-2003 beveloper <beveloper@nowhere.fake>

more time source function...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2353 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bd5717195847bca0fe551fd970d2340060e59b77 25-Dec-2002 beveloper <beveloper@nowhere.fake>

Checkpoint.
Started adding support for persistent default nodes.
System time source and BTimeSource are broken.c


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2305 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 075570786dc3ce6e4026226f83d4bbb12050b815 08-Dec-2002 beveloper <beveloper@nowhere.fake>

changed BufferManager communication to use ports.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2193 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6396865dcd5051f2baa6b55017e220d9d0cf4b25 19-Nov-2002 beveloper <beveloper@nowhere.fake>

added automatic media_addon_server launching and termination.
added detection of and cleanup after application crashes.
if the media_addon_server crashes, it will be restarted.
removed preleminary volume control functions.
removed unneeded media_server functions.
changed application registration to use port based messaging.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2027 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dfb2ad6148f303a0ee57faecc282953d11156067 03-Nov-2002 beveloper <beveloper@nowhere.fake>

code cleanup


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1833 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 570f7d0456164c9d2f22525c7eca167021e93770 10-Oct-2002 beveloper <beveloper@nowhere.fake>

updated to include the same features/bugs as the screenshot in today's news.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1479 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1299bfb29f6155daaa6117fec04f9054e0dc24b6 08-Oct-2002 beveloper <beveloper@nowhere.fake>

added real media_server node management, removed bugs, added debug output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1467 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 85dfab2ba84a3d225d384beb92deb3b658734714 05-Oct-2002 beveloper <beveloper@nowhere.fake>

even more BMediaRoster functions


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1396 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9e9417d20596827f8c375ffd90b7a01cae1c0c4c 05-Oct-2002 beveloper <beveloper@nowhere.fake>

more BMediaRoster functionality


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1381 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e1df8c523b9ce8b44e6925424f23972e2b0e4531 03-Oct-2002 beveloper <beveloper@nowhere.fake>

made debug output more human readable


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1362 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3620737cb79cb28d11eba8a7396a4d0f00fc512d 03-Oct-2002 beveloper <beveloper@nowhere.fake>

added more BMediaRoster functionality


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8c6a6096e726d70741695920db0818695bcda98f 02-Oct-2002 beveloper <beveloper@nowhere.fake>

rewrote BMediaRoster::Connect() and a few related functions


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1347 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e66fda405a88e6125bf6617b15e3c32cb44f675c 02-Oct-2002 beveloper <beveloper@nowhere.fake>

finished notification support


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1345 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f4925104822c0990c8fc7b99144512294827b3cf 01-Oct-2002 beveloper <beveloper@nowhere.fake>

changed media kit internal messaging and notification support


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1338 a95241bf-73f2-0310-859d-f6bbb57e9c96