Ejemplo n.º 1
0
void MpAlsaContainer::excludeFromContainer(MpAlsa* pDevWrap)
{
   OsLock lock(mMutex);

   UtlHashMapIterator itor(*this);
   UtlString* pDevName;

   while ((pDevName = static_cast<UtlString*>(itor())))
   {
      if (static_cast<MpAlsa*>(itor.value()) == pDevWrap)
      {
         break;
      }
   }

   assert (pDevName != NULL);

   UtlContainable* pDevTmp;
   UtlString* pRetName;

   pRetName = static_cast<UtlString*>(removeKeyAndValue(pDevName, pDevTmp));
   delete pRetName;

   MpAlsa *pDev = static_cast<MpAlsa*>(pDevTmp);
   delete pDev;
}
Ejemplo n.º 2
0
UtlContainable* UtlHashMap::removeReference(const UtlContainable* key) 
{
   UtlContainable* unusedValue;
   
   // Locking is done by removeKeyAndValue().

   return removeKeyAndValue(key, unusedValue);
}
Ejemplo n.º 3
0
UtlBoolean UtlHashMap::destroy(const UtlContainable* key) 
{
   UtlBoolean wasRemoved = FALSE;
   UtlContainable* value;

   // Locking is done by removeKeyAndValue().

   UtlContainable* removedKey = removeKeyAndValue(key, value);
   
   if(removedKey)
   {
      wasRemoved = TRUE;
      delete removedKey;
      if (value != INTERNAL_NULL)
      {
         delete value;
      }
   }

   return wasRemoved;
}
Ejemplo n.º 4
0
UtlContainable* UtlHashMap::remove(const UtlContainable* key) 
{
   UtlContainable* unusedValue;
   
   return removeKeyAndValue(key, unusedValue);
}