00001 #ifndef _foobar2000_helpers_file_list_helper_ 00002 #define _foobar2000_helpers_file_list_helper_ 00003 00004 00005 namespace file_list_helper 00006 { 00007 //list guaranteed to be sorted by metadb::path_compare 00008 class file_list_from_metadb_handle_list : public pfc::list_base_const_t<const char*> { 00009 public: 00010 00011 static t_size g_get_count(const list_base_const_t<metadb_handle_ptr> & p_list, t_size max = ~0); 00012 00013 void init_from_list(const list_base_const_t<metadb_handle_ptr> & p_list); 00014 void init_from_list_display(const list_base_const_t<metadb_handle_ptr> & p_list); 00015 00016 t_size get_count() const; 00017 void get_item_ex(const char * & p_out,t_size n) const; 00018 00019 ~file_list_from_metadb_handle_list(); 00020 00021 private: 00022 void __add(const char * p_what); 00023 pfc::ptr_list_t<char> m_data; 00024 }; 00025 00026 00027 }; 00028 00029 00030 #endif //_foobar2000_helpers_file_list_helper_
1.5.5