localconnectivityservice/locod/tsrc/locodTest/inc/BtSettings.h
author hgs
Fri, 15 Oct 2010 15:05:57 +0800
changeset 54 4dc88a4ac6f4
permissions -rw-r--r--
201041_02
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
54
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     1
/*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     2
* Copyright (c) 2002 - 2008 Nokia Corporation and/or its subsidiary(-ies).
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     3
* All rights reserved.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     8
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     9
* Initial Contributors:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    11
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    12
* Contributors:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    13
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    14
* Description:  Class which is resposible for handling communication with
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    15
*                Bt settings API
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    16
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    17
*/
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    18
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    19
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    20
#ifndef BTSETTINGS_H
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    21
#define BTSETTINGS_H
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    22
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    23
// INCLUDES
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    24
#include <e32std.h>
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    25
#include <e32base.h>
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    26
#include <btengsettings.h>
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    27
// CLASS DECLARATION
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    28
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    29
/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    30
 *  CBtSettings
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    31
 */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    32
NONSHARABLE_CLASS( CBtSettings ) : public CBase,
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    33
                                   public MBTEngSettingsObserver
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    34
	{
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    35
public:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    36
	// Constructors and destructor
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    37
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    38
	/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    39
	 * Destructor.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    40
	 */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    41
	~CBtSettings();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    42
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    43
	/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    44
	 * Two-phased constructor.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    45
	 */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    46
	static CBtSettings* NewL();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    47
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    48
	/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    49
	 * Two-phased constructor.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    50
	 */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    51
	static CBtSettings* NewLC();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    52
	
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    53
    TInt GetPowerState( TBTPowerStateValue& aState );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    54
    TInt SetPowerState( TBTPowerStateValue aState );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    55
    TInt GetVisibilityMode( TBTVisibilityMode& aMode );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    56
    TInt SetVisibilityMode( TBTVisibilityMode aMode, TInt aTime = 0 );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    57
    TInt GetLocalName( TDes& aName );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    58
    TInt SetLocalName( const TDes& aName );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    59
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    60
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    61
private:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    62
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    63
	// From MBTEngSettingsObserver
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    64
    void PowerStateChanged( TBTPowerStateValue aState );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    65
    void VisibilityModeChanged( TBTVisibilityMode aState );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    66
	
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    67
	/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    68
	 * Constructor for performing 1st stage construction
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    69
	 */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    70
	CBtSettings();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    71
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    72
	/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    73
	 * EPOC default constructor for performing 2nd stage construction
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    74
	 */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    75
	void ConstructL();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    76
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    77
	
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    78
private: //Data
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    79
	
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    80
	CBTEngSettings* iSettings; // Own.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    81
	CActiveSchedulerWait* iWaiter; //Own.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    82
	TInt iError;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    83
	
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    84
	};
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    85
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    86
#endif // BTSETTINGS_H