void UsdMayaAdaptor::UnapplySchemaByName( const TfToken& schemaName, MDGModifier& modifier) { if (!*this) { TF_CODING_ERROR("Adaptor is not valid"); return; } // Remove from schema list. TfTokenVector currentSchemas = GetAppliedSchemas(); currentSchemas.erase( std::remove( currentSchemas.begin(), currentSchemas.end(), schemaName), currentSchemas.end()); if (currentSchemas.empty()) { ClearMetadata(UsdTokens->apiSchemas, modifier); } else { SetMetadata( UsdTokens->apiSchemas, _GetListOpForTokenVector(currentSchemas), modifier); } }
/* Methods */ void _PLMTPC_Destroy(PlayListManager manager) { PlayListManager_PC state = (PlayListManager_PC)manager->InternalState; if(state != NULL) { sem_wait(&state->LockObject); sem_destroy(&state->LockObject); String_Destroy(state->UDN); String_Destroy(state->ServiceID); String_Destroy(state->ContainerID); String_Destroy(state->FirstItemID); String_Destroy(state->SortArgs); ClearMetadata(state); free(state); } if(manager->TrackURI != NULL) { free(manager->TrackURI); } if(manager->TrackMetaData != NULL) { CDS_ObjRef_Release(manager->TrackMetaData); } sem_destroy(&manager->LockObject); if(manager->ShuffleArray != NULL) { BitArray_Destroy(manager->ShuffleArray); } free(manager); }
void _Callback2(struct UPnPService *sender, int ErrorCode, void *user, char* Result, unsigned int NumberReturned, unsigned int TotalMatches, unsigned int UpdateID) { PlayListManager_PC state = (PlayListManager_PC)user; struct ILibXMLNode* root = NULL; int count = (int)NumberReturned; state->Error = -ErrorCode; if(ErrorCode != 0) { sem_post(&state->LockObject); return; } ClearMetadata(state); if((int)TotalMatches != state->Parent->TrackCount) { state->Parent->TrackCount = (int)TotalMatches; BitArray_ChangeSize(state->Parent->ShuffleArray, state->Parent->TrackCount); if(state->Parent->OnTrackCountChanged != NULL) { state->Parent->OnTrackCountChanged(state->Parent); } } root = ILibParseXML(Result, 0, (int)strlen(Result)); if(root != NULL) { BOOL failure = FALSE; if(ILibProcessXMLNodeList(root) == 0) { int i = 0; struct ILibXMLNode* item = root->Next; ILibXML_BuildNamespaceLookupTable(root); while(item != NULL && i < count) { struct ILibXMLAttribute* attrs = ILibGetXMLAttributes(item); if(attrs != NULL) { state->Objects[i] = CDS_DeserializeDidlToObject(item, attrs, 1, Result, Result + strlen(Result)); ILibDestructXMLAttributeList(attrs); } else { failure = TRUE; state->Objects[i] = NULL; } i++; item = item->Peer; } } ILibDestructXMLNodeList(root); if(failure == TRUE) { int i; state->Count = 0; for(i = 0; i < count; i++) { if(state->Objects[i] != NULL) { CDS_ObjRef_Release(state->Objects[i]); state->Objects[i] = NULL; } } state->Error = 1; } state->Count = count; } else { state->Error = 2; } sem_post(&state->LockObject); }
bool UsdProperty::ClearDisplayGroup() const { return ClearMetadata(SdfFieldKeys->DisplayGroup); }
bool UsdProperty::ClearDisplayName() const { return ClearMetadata(SdfFieldKeys->DisplayName); }
bool UsdPrim::ClearPayload() const { return ClearMetadata(SdfFieldKeys->Payload); }
void CTag_Mp4::Release() { ClearMetadata(); m_bEnable = FALSE; }
void UsdMayaAdaptor::ClearMetadata(const TfToken& key) { MDGModifier modifier; ClearMetadata(key, modifier); }