mmlibs/mmfw/src/Client/Video/mediaclientpolicyserverclient.cpp
author hgs
Tue, 02 Nov 2010 12:28:51 +0000
changeset 6 fe9d1bf55678
parent 0 b8ed18f6c07b
permissions -rw-r--r--
2010wk46_02
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     1
// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     2
// All rights reserved.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     3
// This component and the accompanying materials are made available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     5
// which accompanies this distribution, and is available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     7
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     8
// Initial Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    10
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    11
// Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    12
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    13
// Description:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    14
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    15
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    16
#include "mediaclientpolicyserverclient.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    17
#include <e32std.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    18
#include "mediaclientvideotrace.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    19
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    20
CMediaClientPolicyServerClient* CMediaClientPolicyServerClient::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    21
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    22
    DEBUG_PRINTF("CMediaClientPolicyServerClient::NewL +++");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    23
    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    24
    CMediaClientPolicyServerClient* self = new( ELeave ) CMediaClientPolicyServerClient();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    25
    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    26
    DEBUG_PRINTF("CMediaClientPolicyServerClient::NewL ---");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    27
    return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    28
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    29
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    30
CMediaClientPolicyServerClient::~CMediaClientPolicyServerClient()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    31
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    32
    DEBUG_PRINTF("CMediaClientPolicyServerClient::~CMediaClientPolicyServerClient +++");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    33
    iSession.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    34
    DEBUG_PRINTF("CMediaClientPolicyServerClient::~CMediaClientPolicyServerClient ---");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    35
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    36
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    37
void CMediaClientPolicyServerClient::SetSurface(const TSurfaceId& aSurfaceId)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    38
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    39
    DEBUG_PRINTF("CMediaClientPolicyServerClient::SetSurface +++");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    40
            
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    41
    if( aSurfaceId.IsNull() )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    42
        {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    43
        DEBUG_PRINTF("CMediaClientPolicyServerClient::SetSurface NULL SurfaceId received");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    44
        }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    45
    else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    46
        {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    47
        iSurfaceId = aSurfaceId;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    48
        DEBUG_PRINTF5("CMediaClientPolicyServerClient::SetSurface - iSurfaceId %08x:%08x:%08x:%08x", iSurfaceId.iInternal[3], iSurfaceId.iInternal[2], iSurfaceId.iInternal[1], iSurfaceId.iInternal[0]);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    49
        }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    50
    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    51
    DEBUG_PRINTF(" CMediaClientPolicyServerClient::SetSurface ---");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    52
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    53
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    54
void CMediaClientPolicyServerClient::FocusChanged(TBool aForeground)    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    55
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    56
    DEBUG_PRINTF(" CMediaClientPolicyServerClient::FocusChanged +++");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    57
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    58
    DEBUG_PRINTF5("CMediaClientPolicyServerClient::FocusChanged - iSurfaceId %08x:%08x:%08x:%08x", iSurfaceId.iInternal[3], iSurfaceId.iInternal[2], iSurfaceId.iInternal[1], iSurfaceId.iInternal[0]);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    59
    DEBUG_PRINTF2("CMediaClientPolicyServerClient::FocusChanged - Focus %d", aForeground);  
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    60
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    61
    if( iSurfaceId.IsNull() )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    62
        {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    63
        DEBUG_PRINTF(" CMediaClientPolicyServerClient::FocusChanged SurfaceId is NULL ... ignore focus change event");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    64
        }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    65
    else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    66
        {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    67
        DEBUG_PRINTF(" CMediaClientPolicyServerClient::FocusChanged Send focus change event to PS");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    68
        TFocusSurfaceChangedEvent focusChangedMessage;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    69
        focusChangedMessage.iSurfaceId = iSurfaceId;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    70
        focusChangedMessage.iForeground = aForeground;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    71
        TPckgBuf<TFocusSurfaceChangedEvent> buffer(focusChangedMessage);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    72
        TIpcArgs messageArguments(&buffer);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    73
        
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    74
        TInt error = iSession.SendMessage(KFocusSurfaceChanged, messageArguments);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    75
    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    76
        if(error)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    77
            {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    78
            DEBUG_PRINTF2(" CMediaClientPolicyServerClient::FocusChanged SendMessage failed, error = %d", error);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    79
            }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    80
        }    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    81
    DEBUG_PRINTF(" CMediaClientPolicyServerClient::FocusChanged ---");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    82
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    83
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    84
TBool CMediaClientPolicyServerClient::IgnoreProcess(TSecureId aId)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    85
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    86
    DEBUG_PRINTF("CMediaClientPolicyServerClient::IgnoreProcess +++");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    87
    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    88
    TBool ignore = (
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    89
            (aId == 0x10281EF2) ||  // aknnfysrv
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    90
            (aId == 0x10207218) ||  // akncapserver
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    91
            (aId == 0x10003a4a) ||  // eiksrvs
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    92
			(aId == 0x20022FC5)     // Hbdevicedialogappserver
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    93
            );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    94
    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    95
    DEBUG_PRINTF2("CMediaClientPolicyServerClient::IgnoreProcess --- return %d", ignore);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    96
    return ignore;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    97
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    98
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    99
TInt CMediaClientPolicyServerClient::Connect()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   100
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   101
    DEBUG_PRINTF(" CMediaClientPolicyServerClient::Connect +++");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   102
    TInt error = iSession.Connect();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   103
    DEBUG_PRINTF2(" CMediaClientPolicyServerClient::Connect --- return %d", error);   
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   104
    return error;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   105
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   106
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   107
void CMediaClientPolicyServerClient::Close()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   108
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   109
    DEBUG_PRINTF(" CMediaClientPolicyServerClient::Close +++");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   110
    iSession.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   111
    DEBUG_PRINTF(" CMediaClientPolicyServerClient::Close ---");   
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   112
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   113
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   114
CMediaClientPolicyServerClient::CMediaClientPolicyServerClient()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   115
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   116
    DEBUG_PRINTF(" CMediaClientPolicyServerClient::CMediaClientPolicyServerClient +++");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   117
    iSurfaceId = TSurfaceId::CreateNullId();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   118
    DEBUG_PRINTF(" CMediaClientPolicyServerClient::CMediaClientPolicyServerClient ---");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   119
    }