uiacceltk/hitchcock/goommonitor/src/goomactionref.cpp
author hgs
Wed, 03 Nov 2010 19:29:22 +0200 (2010-11-03)
changeset 64 9f8c0686fb49
permissions -rw-r--r--
201044
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
64
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:  Classes for executing GOOM actions (e.g. closing applications and running plugins).
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
hgs
parents:
diff changeset
    19
#include "goomactionref.h"
hgs
parents:
diff changeset
    20
#include "goomrunplugin.h"
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
TActionRef::TActionRef(TActionType aType, TInt aPriority, TGOomSyncMode aSyncMode, TInt aRamEstimate, CGOomRunPlugin& aRunPlugin, TUint aWgIndexOfTargetApp)
hgs
parents:
diff changeset
    23
    : iType(aType), iPriority(aPriority), iSyncMode(aSyncMode), iRamEstimate(aRamEstimate), iWgIndex(aWgIndexOfTargetApp), iRunPlugin(&aRunPlugin), iAppPlugin(0)
hgs
parents:
diff changeset
    24
    {   
hgs
parents:
diff changeset
    25
    }
hgs
parents:
diff changeset
    26
hgs
parents:
diff changeset
    27
TActionRef::TActionRef(TActionType aType, TInt aPriority, TGOomSyncMode aSyncMode, TInt aRamEstimate, TInt aWgId, TUint aWgIndex, TInt aCloseTimeout, TInt aWaitAfterClose)
hgs
parents:
diff changeset
    28
: iType(aType), iPriority(aPriority), iSyncMode(aSyncMode), iRamEstimate(aRamEstimate), iWgId(aWgId), iWgIndex(aWgIndex), iRunPlugin(NULL), iCloseTimeout(aCloseTimeout), iWaitAfterClose(aWaitAfterClose), iAppPlugin(0)
hgs
parents:
diff changeset
    29
    {   
hgs
parents:
diff changeset
    30
    }
hgs
parents:
diff changeset
    31
hgs
parents:
diff changeset
    32
    
hgs
parents:
diff changeset
    33
TActionRef::TActionType TActionRef::Type() const
hgs
parents:
diff changeset
    34
    {
hgs
parents:
diff changeset
    35
    return iType;
hgs
parents:
diff changeset
    36
    }
hgs
parents:
diff changeset
    37
hgs
parents:
diff changeset
    38
TUint TActionRef::Priority() const
hgs
parents:
diff changeset
    39
    {
hgs
parents:
diff changeset
    40
    return iPriority;
hgs
parents:
diff changeset
    41
    }
hgs
parents:
diff changeset
    42
hgs
parents:
diff changeset
    43
void TActionRef::SetPriority(TUint aPriority)
hgs
parents:
diff changeset
    44
    {
hgs
parents:
diff changeset
    45
    iPriority = aPriority;
hgs
parents:
diff changeset
    46
    }
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
TGOomSyncMode TActionRef::SyncMode() const
hgs
parents:
diff changeset
    49
    {
hgs
parents:
diff changeset
    50
    return iSyncMode;
hgs
parents:
diff changeset
    51
    }
hgs
parents:
diff changeset
    52
    
hgs
parents:
diff changeset
    53
TInt TActionRef::RamEstimate() const
hgs
parents:
diff changeset
    54
    {
hgs
parents:
diff changeset
    55
    return iRamEstimate;
hgs
parents:
diff changeset
    56
    }
hgs
parents:
diff changeset
    57
hgs
parents:
diff changeset
    58
TInt TActionRef::WgId() const
hgs
parents:
diff changeset
    59
    {
hgs
parents:
diff changeset
    60
    return iWgId;
hgs
parents:
diff changeset
    61
    }
hgs
parents:
diff changeset
    62
hgs
parents:
diff changeset
    63
TInt TActionRef::CloseTimeout() const
hgs
parents:
diff changeset
    64
    {
hgs
parents:
diff changeset
    65
    return iCloseTimeout;
hgs
parents:
diff changeset
    66
    }
hgs
parents:
diff changeset
    67
hgs
parents:
diff changeset
    68
TInt TActionRef::WaitAfterClose() const
hgs
parents:
diff changeset
    69
    {
hgs
parents:
diff changeset
    70
    return iWaitAfterClose;
hgs
parents:
diff changeset
    71
    }
hgs
parents:
diff changeset
    72
hgs
parents:
diff changeset
    73
TInt TActionRef::WgIndex() const
hgs
parents:
diff changeset
    74
    {
hgs
parents:
diff changeset
    75
    return iWgIndex;
hgs
parents:
diff changeset
    76
    }
hgs
parents:
diff changeset
    77
hgs
parents:
diff changeset
    78
CGOomRunPlugin& TActionRef::RunPlugin()
hgs
parents:
diff changeset
    79
    {
hgs
parents:
diff changeset
    80
    return *iRunPlugin;
hgs
parents:
diff changeset
    81
    }
hgs
parents:
diff changeset
    82
hgs
parents:
diff changeset
    83
TBool TActionRef::IsRunning()
hgs
parents:
diff changeset
    84
    {
hgs
parents:
diff changeset
    85
    if (iRunPlugin)
hgs
parents:
diff changeset
    86
        {
hgs
parents:
diff changeset
    87
        return iRunPlugin->IsRunning();
hgs
parents:
diff changeset
    88
        }
hgs
parents:
diff changeset
    89
    else if (iAppPlugin)
hgs
parents:
diff changeset
    90
        {
hgs
parents:
diff changeset
    91
        return iAppPlugin->IsRunning();
hgs
parents:
diff changeset
    92
        }
hgs
parents:
diff changeset
    93
    return EFalse;
hgs
parents:
diff changeset
    94
    }