/*
* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:
*
*/


#ifndef     __Logs_Engine_HRH__
#define     __Logs_Engine_HRH__


//  DATA TYPES  

// direction of the event
enum TLogsDirection
    {
    EDirUndefined = -1, // undefined
    EDirIn =  0,        // incoming
    EDirOut = 1,        // outgoing
    EDirMissed = 2,     // missed
    EDirInAlt = 3,      // incoming on alt. line
    EDirOutAlt = 4      // outgoing on alt. line
    };

// type of the event
enum TLogsEventType
    {
    ETypeUndefined = -1,
    ETypeUsual,
    ETypeUnknown,
    ETypePrivate,
    ETypePayphone,    
    ETypeSAT,
    ETypeEmerg,
    ETypePoCGroupCall
    };

// state
enum TLogsState
    {
    EStateError = -2,
    EStateUndefined = -1,
    EStateInitializing,
    EStateActive,
    EStateSemiFinished,     //for missed calls view when reading in two phases and first part done
    EStateFinished,         //reading done
    EStateInterrupted,
    // EStateFreeToDelete,
    EStateEventUpdaterFinished,
    EStateSMSUpdaterFinished,
    EStateClearLogFinished,
    EStateReaderDeletedOrStopped,
    EStateArrayReseted,
    EStateLogEnableChanged,
    EStateCheckContactLinkFinished
    };

enum TLogsModel
    {   
    ELogsAllRecent = -1,
    ELogsMainModel = 0,
    ELogsReceivedModel = 1,
    ELogsDialledModel = 2,
    ELogsMissedModel = 3,
    ELogsDetailModel = 4  //This is just special case for Detail view event
    };
    
enum TLogsFilter //Filter options provided by filter listbox (not all always necessarily provided to user)
    {   
    ELogsFilterUndefined = -1,                         
    ELogsFilterAllComms,        //This needs to be first real filtering option
    ELogsFilterOutgoing,
    ELogsFilterIncoming,
    ELogsFilterVoice,
    ELogsFilterMessages,
    ELogsFilterPacket,
    ELogsFilterData,
    ELogsFilterWlan,            
    ELogsFilterPerson,

    ELogsFilterNothing,         //This needs to be last real filtering option
    ELogsFilterNumberOfFilters  //Keep this as last enum
    };
    
enum TSDShowDuringCall
    {
    ESDNothing = 0,
    ESDDuration,
    ESDCostInCurrency,
    ESDCostInUnits
    }; 
    
/************************************************
"Show Call Duration" moved General Settings application, not in use any more in Logs 
enum TLogsSettingsShowCallDurationPhone
    {
    ELogSettingsSCDOn = 0,
    ELogSettingsSCDOff = 1
    };
************************************************/

    
    
enum TLogsSettingsShowCostIn
    {
    ELogSettingsSCICurrency = 0,
    ELogSettingsSCIUnits = 1
    };


enum TLogsSettingsCallCostLimit
    {
    ELogSettingsCCLOn = 0,
    ELogSettingsCCLOff = 1    
    }; 
    
/// Logs config
enum TLogsConfig
    {
    ELogsConfigMaxSize = 2000,
    ELogsConfigMaxRecentSize = 20,
    ELogsConfigAgeNoLog = 0,
    ELogsConfigAge1Days = 86400,
    ELogsConfigAge10Days = 864000,
    ELogsConfigAge30Days = 2592000
    }; 
    
enum TLogsEventObjectType
	{
	ELogsEventObjectMain = 0,
	ELogsEventObjectRecent,
	ELogsEventObjectMissed,
	ELogsEventObjectDetailed
	};


#endif  // __Logs_Engine_HRH__
            
// End of File

