string primvars[] = split(chs("primvars_input"), "\n");
string usdattrs[] = split(chs("usdattrs_input"), "\n");
for (int i = 0; i < len(primvars); i++) {
primvars[i] = strip(primvars[i]);
}
for (int i = 0; i < len(usdattrs); i++) {
usdattrs[i] = strip(usdattrs[i]);
}
string metadata_path = "/metadata";
string metadata_primvars[] = usd_metadata(0, metadata_path, "customData:primvars_list");
string metadata_attrs[] = usd_metadata(0, metadata_path, "customData:usdattrs_list");
foreach (string pattern; primvars) {
if (pattern == "") continue;
foreach (string meta_pv; metadata_primvars) {
if (match(pattern, meta_pv)) {
usd_blockprimvar(0, @primpath, meta_pv);
}
}
}
foreach (string pattern; usdattrs) {
if (pattern == "") continue;
foreach (string meta_attr; metadata_attrs) {
if (match(pattern, meta_attr)) {
usd_blockattrib(0, @primpath, meta_attr);
}
}
}