Ejemplo n.º 1
0
RESULT
LayerManager::AddToLayer( IN HLayer hLayer, IN HLayer hChildLayer )
{
    RESULT rval = S_OK;

    Layer* pLayer       = GetObjectPointer( hLayer );
    Layer* pChildLayer  = GetObjectPointer( hChildLayer );
    if (!pLayer)
    {
        RETAILMSG(ZONE_ERROR, "ERROR: LayerManager::AddToLayer( 0x%x, 0x%x ): invalid destination Layer", (UINT32)hLayer, (UINT32)hChildLayer);
        rval = E_INVALID_ARG;
        goto Exit;
    }
    
    if (!pChildLayer)
    {
        RETAILMSG(ZONE_ERROR, "ERROR: LayerManager::AddToLayer( 0x%x, 0x%x ): invalid child Layer", (UINT32)hLayer, (UINT32)hChildLayer);
        rval = E_INVALID_ARG;
        goto Exit;
    }
    
    CHR(pChildLayer->SetParentLayer( hLayer ));
    CHR(pLayer->AddLayer( hChildLayer ));
    
Exit:
    return rval;
}