t_size file_info::info_find_ex(const char * p_name,t_size p_name_length) const { t_size n, m = info_get_count(); for(n=0; n<m; n++) { if (pfc::stricmp_ascii_ex(info_enum_name(n),pfc_infinite,p_name,p_name_length) == 0) return n; } return pfc_infinite; }
int file_info::info_get_idx(const char * name) const { assert(is_valid_utf8(name)); int n,m=info_get_count(); for(n=0;n<m;n++) { if (!stricmp_utf8(name,info_enum_name(n))) return n; } return -1; }
void file_info::info_remove_field(const char * name) { assert(is_valid_utf8(name)); int n; for(n=info_get_count()-1;n>=0;n--) { if (!stricmp_utf8(name,info_enum_name(n))) info_remove(n); } }
void file_info::to_console() const { console::formatter() << "File info dump:"; if (get_length() > 0) console::formatter() << "Duration: " << pfc::format_time_ex(get_length(), 6); pfc::string_formatter temp; for(t_size metaWalk = 0; metaWalk < meta_get_count(); ++metaWalk) { meta_format_entry(metaWalk, temp); console::formatter() << "Meta: " << meta_enum_name(metaWalk) << " = " << temp; } for(t_size infoWalk = 0; infoWalk < info_get_count(); ++infoWalk) { console::formatter() << "Info: " << info_enum_name(infoWalk) << " = " << info_enum_value(infoWalk); } }