class ActiveVlc::LibVlc::MediaList

Attributes

ptr[R]

Public Class Methods

new(ptr) click to toggle source
# File lib/activevlc/libvlc/media_list.rb, line 15
def initialize(ptr)
  @ptr = MediaListPtr.new(ptr)
end

Public Instance Methods

<<(media) click to toggle source
# File lib/activevlc/libvlc/media_list.rb, line 37
def <<(media)
  locked! { Api.libvlc_media_list_add_media(@ptr, media.ptr) }
end
event_manager() click to toggle source
# File lib/activevlc/libvlc/media_list.rb, line 29
def event_manager
  EventManager.new Api.libvlc_media_list_event_manager(@ptr)
end
length() click to toggle source
# File lib/activevlc/libvlc/media_list.rb, line 41
def length
  locked! { Api.libvlc_media_list_count(@ptr) }
end
locked!() { || ... } click to toggle source

Execute the given block with the media_list lock acquired.

# File lib/activevlc/libvlc/media_list.rb, line 20
def locked!
  if block_given?
    _lock!
    res = yield
    _unlock!
    res
  end
end
media=(media) click to toggle source
# File lib/activevlc/libvlc/media_list.rb, line 33
def media=(media)
  Api.libvlc_media_list_set_media(@ptr, media.ptr)
end

Protected Instance Methods

_lock!() click to toggle source
# File lib/activevlc/libvlc/media_list.rb, line 46
def _lock!
  Api.libvlc_media_list_lock(@ptr)
end
_unlock!() click to toggle source
# File lib/activevlc/libvlc/media_list.rb, line 49
def _unlock!
  Api.libvlc_media_list_unlock(@ptr)
end