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