VLCLibVLCBridging.h 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. /*****************************************************************************
  2. * VLCLibVLCbridging.h: VLC.framework VLCLibVLCBridging (Private) header
  3. *****************************************************************************
  4. * Copyright (C) 2007 Pierre d'Herbemont
  5. * Copyright (C) 2007 the VideoLAN team
  6. * $Id$
  7. *
  8. * Authors: Pierre d'Herbemont <pdherbemont # videolan.org>
  9. *
  10. * This program is free software; you can redistribute it and/or modify
  11. * it under the terms of the GNU General Public License as published by
  12. * the Free Software Foundation; either version 2 of the License, or
  13. * (at your option) any later version.
  14. *
  15. * This program is distributed in the hope that it will be useful,
  16. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. * GNU General Public License for more details.
  19. *
  20. * You should have received a copy of the GNU General Public License
  21. * along with this program; if not, write to the Free Software
  22. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  23. *****************************************************************************/
  24. #import "VLCLibrary.h"
  25. // TODO: Documentation
  26. @interface VLCMediaList (LibVLCBridging)
  27. + (id)mediaListWithLibVLCMediaList:(void *)p_new_mlist;
  28. - (id)initWithLibVLCMediaList:(void *)p_new_mlist;
  29. - (void *)libVLCMediaList;
  30. @end
  31. /**
  32. * Bridges functionality between libvlc and VLCMedia implementation.
  33. */
  34. @interface VLCMedia (LibVLCBridging)
  35. /* Object Factory */
  36. /**
  37. * Manufactures new object wrapped around specified media descriptor.
  38. * \param md LibVLC media descriptor pointer.
  39. * \return Newly created media instance using specified descriptor.
  40. */
  41. + (id)mediaWithLibVLCMediaDescriptor:(void *)md;
  42. /**
  43. * Initializes new object wrapped around specified media descriptor.
  44. * \param md LibVLC media descriptor pointer.
  45. * \return Newly created media instance using specified descriptor.
  46. */
  47. - (id)initWithLibVLCMediaDescriptor:(void *)md;
  48. /**
  49. * Returns the receiver's internal media descriptor pointer.
  50. * \return The receiver's internal media descriptor pointer.
  51. */
  52. - (void *)libVLCMediaDescriptor;
  53. @end
  54. // TODO: Documentation
  55. @interface VLCMedia (VLCMediaPlayerBridging)
  56. - (void)setLength:(VLCTime *)value;
  57. @end
  58. // TODO: Documentation
  59. @interface VLCLibrary (VLCLibVLCBridging)
  60. + (void *)sharedInstance;
  61. - (void *)instance;
  62. @end
  63. @interface VLCMediaListAspect (VLCLibVLCBridging)
  64. + (id)mediaListAspectWithLibVLCMediaListView:(libvlc_media_list_view_t *)p_new_mlv;
  65. + (id)mediaListAspectWithLibVLCMediaListView:(libvlc_media_list_view_t *)p_new_mlv andMediaList:(VLCMediaList*)mediaList;
  66. - (id)initWithLibVLCMediaListView:(libvlc_media_list_view_t *)p_new_mlv andMediaList:(VLCMediaList*)mediaList;
  67. - (libvlc_media_list_view_t *)libVLCMediaListView;
  68. @end
  69. // TODO: Documentation
  70. @interface VLCLibrary (VLCAudioBridging)
  71. - (void)setAudio:(VLCAudio *)value;
  72. @end
  73. // TODO: Documentation
  74. @interface VLCAudio (VLCAudioBridging)
  75. - (id)initWithLibrary:(VLCLibrary *)library;
  76. @end