inc/musavasettings.h
author Pat Downey <patd@symbian.org>
Wed, 01 Sep 2010 12:31:01 +0100
branchRCL_3
changeset 33 bc78a40cd63c
parent 32 73a1feb507fb
permissions -rw-r--r--
Revert incorrect RCL_3 drop: Revision: 201032 Kit: 201035

/*
* Copyright (c) 2005-2006 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:  This interface is used by
*                clients to get and availability setting for Video Charging
*
*/


#ifndef __MUSAVASETTINGS_H__
#define __MUSAVASETTINGS_H__

//  INCLUDES
#include <badesca.h>
#include <e32base.h>
#include <e32std.h>

class MMusAvaSettingsObserver;

/**
 *  Defines setting interface for the MusAvailability Plug-in
 *
 *  ECOM clients set and get setting are used by MusAvailability Plug-in.
 *
 *  @lib musavailabilityplugin.lib
 */

class MMusAvaSettings
	{
	
public: 

    enum TManualActivation
        {
        EActivationNotExecuted,
        EActivationExecuted,
        EActivationAllowed,
        EActivationNotAllowed
        };
public:
    
     /**
     * Returns the manual activation
     *
     */   		
    virtual TManualActivation ManualActivation();
    	
    /**
     * Returns the telephone number of remote host of active CS call.
     *
     * @return The telephone number.
     */   		
    virtual const TDesC& TelNumber() const;    	

    /**
     * Returns the contact name of remote host of active CS call.
     *
     * @return The contact name.
     */   		
    virtual const TDesC& ContactName() const;    	
    
    /**
     * Returns the possible SIP addresses of the remote host.
     *
     * @return The SIP addresses in an array.
     */   		
    virtual const MDesCArray& SipAddresses() const;
    
    /**
     * Returns the proposal for the remote host SIP address.
     *
     * @return The telephone number.
     */   		
    virtual const TDesC& SipAddressProposal() const;
    
    /**
     * Returns the contact id of the remote host.
     *
     * @return The contact id; KErrNotFound, if not found any.
     */   		
    virtual TInt ContactId() const;

    /**
     * Returns the supported video codecs.
     *
     * @return The video codecs
     */   		
    virtual const MDesCArray& VideoCodecs() const;
    
    /**
     * Returns the supported audio codecs.
     *
     * @return The supported audio codecs.
     */   		
    virtual const MDesCArray& AudioCodecs() const;

    /**
     * Returns the id of the preferable SIP profile.
     *
     * @return The SIP profile id.
     */   		
    virtual TInt SipProfileId() const;

    /**
     * Sets the settings observer pointer
     *
     */   		
    virtual void SetObserver( MMusAvaSettingsObserver& aObserver );
    
     /**
     * Sets the for the manual activation
     *
     */   		
    virtual void SetManualActivation( TManualActivation aManualActivation );
    
    /**
    * Returns the direction of the mobile call.
    *
    * @return 0, if the direction of the call is unknown.
    *         1, call is from public number.
    *         2, call is from private number   
    */    		
    virtual TInt CallPrivacy();

	};

#include "musavasettings.inl"

#endif