bluetoothengine/headsetsimulator/profiles/hfpprofile/inc/hfpsdp.h
author michal.sulewski
Wed, 15 Sep 2010 15:59:44 +0200
branchheadsetsimulator
changeset 60 90dbfc0435e3
permissions -rw-r--r--
source code commit

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

#ifndef HFPSDP_H_
#define HFPSDP_H_

#include <btsdp.h>
#include <hssdppluginbase.h>

/** Hand-Free Uid */
const TInt KHsHandsFreeUid = 0x111E;

/** Generic Audio Uid */
const TInt KHsHfpGenericAudioUid = 0x1203;

/** HFP profile version */
const TInt KHsHfpProfileVersion = 0x0105;

/** HFP supported features Uid */
const TInt KHsSupportedFeaturesUid = 0x0311;

/** HFP supported features value */
const TInt KHsSupportedFeaturesValue = 0x0010;
/** Service name */
_LIT(KHsServiceNameHandsFree, "Hands-Free unit");

/**
 * @brief Manages SDP record
 */
class CHsHFPSDP : public CHsSdpBase
    {
public:
    /**
     * Two-phase constructor
     * 
     * @return instance of class
     */
    static CHsHFPSDP* NewL();

    /**
     * Two-phase constructor
     * 
     * @return instance of class
     */
    static CHsHFPSDP* NewLC();

    /**
     * Destructor
     */
    ~CHsHFPSDP();

public:
    /**
     * Creates SDP record
     */
    void CreateSdpRecordL();

    /**
     * Deletes SDP record
     */
    void DeleteSdpRecordL();

private:
    /**
     * Constructor for performing 1st stage construction
     */
    CHsHFPSDP();

    /**
     * Constructor for performing 2nd stage construction
     */
    void ConstructL();

private:

    /** Session to the SDP */
    RSdp iSdp;

    /** Subsession to the SDP */
    RSdpDatabase iSdpDatabase;

    /** Handle to SDP record which is registered in SDP database */
    TSdpServRecordHandle iSdpRecordHandle;
    };

#endif /* HFPSDP_H_ */