void file_info::copy(const file_info & p_source) { if (&p_source != this) { copy_meta(p_source); copy_info(p_source); set_length(p_source.get_length()); set_replaygain(p_source.get_replaygain()); } }
void GIFresize(WS_STATE_PTR ws, Gpoint size) { mf_cgmo *cgmo = ws->mf.cgmo; GIFmetafile *meta = find_meta(cgmo); assert(meta); #if 0 if (meta->resize == 0){ msgErr("GIFresize: metafile contains primitives -- can't resize\n"); } else { copy_meta(cgmo, find_meta(cgmo), size.x, size.y); msgInfo("GIFresize: Resizing to (%f,%f)\n", size.x, size.y); } #endif if (meta->resize == 0){ msgWarn("GIFresize: metafile contains primitives that will be lost when resizing\n"); } copy_meta(cgmo, find_meta(cgmo), size.x, size.y); msgInfo("GIFresize: Resizing to (%f,%f)\n", size.x, size.y); }
void file_info::merge(const pfc::list_base_const_t<const file_info*> & p_in) { t_size in_count = p_in.get_count(); if (in_count == 0) { meta_remove_all(); return; } else if (in_count == 1) { const file_info * info = p_in[0]; copy_meta(*info); set_replaygain(replaygain_info::g_merge(get_replaygain(),info->get_replaygain())); overwrite_info(*info); //copy_info_single_by_name(*info,"tagtype"); return; } merge_meta(*this,p_in); { pfc::string8_fastalloc tagtype; replaygain_info rg = get_replaygain(); t_size in_ptr; for(in_ptr = 0; in_ptr < in_count; in_ptr++ ) { const file_info * info = p_in[in_ptr]; rg = replaygain_info::g_merge(rg, info->get_replaygain()); t_size field_ptr, field_max = info->info_get_count(); for(field_ptr = 0; field_ptr < field_max; field_ptr++ ) { const char * field_name = info->info_enum_name(field_ptr), * field_value = info->info_enum_value(field_ptr); if (*field_value) { if (!pfc::stricmp_ascii(field_name,"tagtype")) { if (!tagtype.is_empty()) tagtype += "|"; tagtype += field_value; } } } } if (!tagtype.is_empty()) info_set("tagtype",tagtype); set_replaygain(rg); } }
/** Copy meta-data from another instance * * @param copy another gdal instance */ void copy_meta(const gdal& copy) { copy_meta(copy, copy.width, copy.height); }