. * */ /** * playable_item Interface * * This defines how the playable item file classes should * work, this lists all required functions and the expected * input */ interface playable_item { /** * format * * Creates member variables for output */ public function format($details = true); /** * get_fullname * * Get the item full name. */ public function get_fullname(); /** * get_parent * * Get parent. Return parent `object_type`, `object_id` ; null otherwise. */ public function get_parent(); /** * get_childrens * * Get direct childrens. Return an array of `object_type`, `object_id` childrens. */ public function get_childrens(); /** * search_childrens * * Search for direct childrens. Return an array of `object_type`, `object_id` childrens matching the criteria. */ public function search_childrens($name); /* * get_medias * * Get all medias from all childrens. Return an array of `object_type`, `object_id` medias. */ public function get_medias($filter_type = null); /** * get_catalogs * * Get all catalog ids related to this item. * @return int[] */ public function get_catalogs(); } // end interface