void UsdMayaAdaptor::ClearMetadata(const TfToken& key, MDGModifier& modifier) { if (!*this) { TF_CODING_ERROR("Adaptor is not valid"); return; } MFnDependencyNode node(_handle.object()); std::string mayaAttrName = _GetMayaAttrNameForMetadataKey(key); if (node.hasAttribute(mayaAttrName.c_str())) { MObject attr = node.attribute(mayaAttrName.c_str()); modifier.removeAttribute(_handle.object(), attr); modifier.doIt(); } }
void UsdMayaAdaptor::SchemaAdaptor::RemoveAttribute( const TfToken& attrName, MDGModifier& modifier) { if (!*this) { TF_CODING_ERROR("Schema adaptor is not valid"); return; } SdfAttributeSpecHandle attrDef = _schemaDef->GetAttributes()[attrName]; if (!attrDef) { TF_CODING_ERROR("Attribute '%s' doesn't exist on schema '%s'", attrName.GetText(), _schemaDef->GetName().c_str()); return; } std::string mayaAttrName = _GetMayaAttrNameOrAlias(attrDef); MFnDependencyNode node(_handle.object()); if (node.hasAttribute(mayaAttrName.c_str())) { MObject attr = node.attribute(mayaAttrName.c_str()); modifier.removeAttribute(_handle.object(), attr); modifier.doIt(); } }