// $Id$

/*
  This defines the media API, by which media files can be presented to others.
  
  There are administer settings. 
  These encompass the extensions, types, presenters and programs.

  API Functions:
  --------------
  
  Variables in use:
  - media_public => Public Directory
  - media_private => Private Directory
  - media_temp => Temporary Public Working Directory
  
  The functions for general use:

  // general information from files
  * media_file_basename()
  * media_file_name()
  * media_file_ext()
  * media_file_freename()
  * media_file_mimetype()
  * media_file_dimensions()
  * media_file_metadata()

  // file manipulation
  * media_file_check_location()
  * media_file_copy()
  * media_file_move()
  * media_file_delete()
  * media_file_transfer()
  
  // folder manipulation
  * media_directory_public()
  * media_directory_private()
  * media_directory_temp()
  * media_directory_check_location()
  * media_directory_check()

  * media_directory_create()
  * media_directory_move()
  * media_directory_delete()
  
  The functions for extensions:
  * media_extension_list()
  * media_extension_type()
  * media_extension_mime()
  * media_extension_from_mime()  ; NEEDS TESTING

  The functions for types:
  * media_type_list()
  * media_type_extensions()
  
  The functions for presenters:
  * media_presenter_list()
  * media_presenter_default()
  * media_presenter_by_ext()
  * media_presenter_generic()
  * media_presenter_playlist()
  * media_presenter_path()
  * media_presenter_files()
  
  The functions for display of media:
  * media_display()       ; NEEDS FULL TESTING
  * media_render_object() ; NEEDS FULL TESTING
  
  The functions for usage for external programs:
  - media_program_exists()
  - media_program_execute()
  
  Functions when media handling is installed:
  * media_installed()
  
  * media_item_load()
  * media_item_insert()
  * media_item_create()
  * media_item_delete()
  * media_item_rename()
  * media_item_move()
  * media_item_exists()
  * media_item_folder()
  * media_item_find()
  
  * media_metadata_load()
  * media_metadata_save()
  * media_metadata_used()

  * media_folder_load()
  * media_folder_move()
  * media_folder_rename()
  * media_folder_create()
  * media_folder_delete()
  * media_folder_subfolders()
  * media_folder_items()
  * media_folder_path()
  
  Functions for persistant media related sessions
  * media_persist_get()
  * media_persist_set()
  
*/
