本文整理汇总了C++中pfc::list_base_const_t::get_item_ex方法的典型用法代码示例。如果您正苦于以下问题:C++ list_base_const_t::get_item_ex方法的具体用法?C++ list_base_const_t::get_item_ex怎么用?C++ list_base_const_t::get_item_ex使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pfc::list_base_const_t
的用法示例。
在下文中一共展示了list_base_const_t::get_item_ex方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: sort_by_relative_path_get_order_partial
void metadb_handle_list_helper::sort_by_relative_path_get_order_partial(const pfc::list_base_const_t<metadb_handle_ptr> & p_list,t_size base,t_size count,t_size* order)
{
assert(base+count<=p_list.get_count());
t_size n;
pfc::array_t<custom_sort_data> data;
data.set_size(count);
static_api_ptr_t<library_manager> api;
pfc::string8_fastalloc temp;
temp.prealloc(512);
for(n=0;n<count;n++)
{
metadb_handle_ptr item;
p_list.get_item_ex(item,base+n);
if (!api->get_relative_path(item,temp)) temp = "";
data[n].index = n;
data[n].text = uSortStringCreate(temp);
//data[n].subsong = item->get_subsong_index();
}
pfc::sort_t(data,custom_sort_compare,count);
//qsort(data.get_ptr(),count,sizeof(custom_sort_data),(int (__cdecl *)(const void *elem1, const void *elem2 ))custom_sort_compare);
for(n=0;n<count;n++)
{
order[n]=data[n].index;
uSortStringFree(data[n].text);
}
}
示例2: sort_by_format_get_order_partial
void metadb_handle_list_helper::sort_by_format_get_order_partial(const pfc::list_base_const_t<metadb_handle_ptr> & p_list,t_size base,t_size count,t_size* order,const service_ptr_t<titleformat_object> & p_script,titleformat_hook * p_hook)
{
assert(base+count<=p_list.get_count());
t_size n;
pfc::array_t<custom_sort_data> data;
data.set_size(count);
pfc::string8_fastalloc temp;
pfc::string8_fastalloc temp2;
temp.prealloc(512);
for(n=0;n<count;n++)
{
metadb_handle_ptr item;
p_list.get_item_ex(item,base+n);
assert(item.is_valid());
item->format_title(p_hook,temp,p_script,0);
data[n].index = n;
data[n].text = uSortStringCreate(temp);
//data[n].subsong = item->get_subsong_index();
}
pfc::sort_t(data,custom_sort_compare,count);
//qsort(data.get_ptr(),count,sizeof(custom_sort_data),(int (__cdecl *)(const void *elem1, const void *elem2 ))custom_sort_compare);
for(n=0;n<count;n++)
{
order[n]=data[n].index;
uSortStringFree(data[n].text);
}
}