haiku/headers/os/media
Augustin Cavalier 4055af5143 BTimedEventQueue: Rewrite from scratch, avoiding malloc().
The previous implementation allocated and freed event objects
on every insertion and removal using malloc()/free(). It was also
licensed under a "distributions in binary form must reproduce ...
in the binary" license, which is more restrictive than the MIT license
that we prefer.

So, this is a rewrite from scratch. It uses the standard
DoublyLinkedList<> rather than rolling its own, and manages
a free list of event queue objects rather than hitting malloc()
all the time. It only frees chunks on destruction, though,
but that hopefully won't be an issue anyway.

All tests from the TimedEventQueueTest still pass, and media playback
still works as before.

Change-Id: Ia940b6176f8051ae4823b75acd305ded8783d1e0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8594
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2024-11-28 17:48:23 +00:00
..
Buffer.h
BufferConsumer.h
BufferGroup.h
BufferProducer.h
Controllable.h
FileInterface.h
MediaAddOn.h
MediaDecoder.h
MediaDefs.h
MediaEncoder.h
MediaEventLooper.h
MediaFile.h
MediaFiles.h
MediaFormats.h
MediaNode.h
MediaRecorder.h
MediaRoster.h Remove use of config_manager 2022-04-20 15:57:04 +00:00
MediaTheme.h
MediaTrack.h
ParameterWeb.h
PlaySound.h
RealtimeAlloc.h
Sound.h
SoundFile.h
SoundPlayer.h
TimeCode.h
TimedEventQueue.h BTimedEventQueue: Rewrite from scratch, avoiding malloc(). 2024-11-28 17:48:23 +00:00
TimeSource.h