diff -r 000000000000 -r 9cfd9a3ee49c locationrequestmgmt/networkrequesthandler/LbsX3P/LbsX3PApi/inc/LbsX3P.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/locationrequestmgmt/networkrequesthandler/LbsX3P/LbsX3PApi/inc/LbsX3P.h Tue Feb 02 01:50:39 2010 +0200 @@ -0,0 +1,137 @@ +// Copyright (c) 2005-2009 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 LBSX3P_H_ +#define LBSX3P_H_ + +#include +#include + +// Forward declarations +class CLbsTransmitPositionImpl; +class CLbsTransmitPositionServerImpl; +class TPositionInfo; + + +NONSHARABLE_CLASS(TLbsTransmitPositionOptions) : public TLbsLocClassTypeBase +/** +The class used for storing transmit position to third party options +@publishedPartner +@released + */ +{ + +public: + IMPORT_C TLbsTransmitPositionOptions(); + IMPORT_C TLbsTransmitPositionOptions(const TTimeIntervalMicroSeconds& aTimeOut); + + IMPORT_C void SetTimeOut(const TTimeIntervalMicroSeconds& aTimeOut); + IMPORT_C TTimeIntervalMicroSeconds TimeOut() const; + +protected: + /** Timeout */ + TTimeIntervalMicroSeconds iTimeOut; + +private: + /** Unused variable for future expansion. */ + TUint8 iReserved[32]; + }; + + +NONSHARABLE_CLASS(RLbsTransmitPositionServer) +/** +This is generally the first interface class used by all client applications. +It is used to make the primary connection to the Transmit position server. +After the primary connection has been established, its handle is passed as a +parameter of the Open methods of RLbsTransmitPosition to create a "sub-session". +This class is not intended for derivation. +@publishedPartner +@released + */ + { +public: + IMPORT_C RLbsTransmitPositionServer(); + + IMPORT_C TInt Connect(); + IMPORT_C void Close(); + + IMPORT_C TVersion Version() const; + /** + Returns reference to implementation. Impl() is for internal use only. + */ + CLbsTransmitPositionServerImpl& Impl(); + +private: + IMPORT_C virtual void ConstructL(); + IMPORT_C virtual void Destruct(); + + IMPORT_C virtual TAny* ExtendedInterface(TInt aFunctionNumber, TAny* aPtr1, TAny* aPtr2); +private: + /** A pointer to a container that holds the implementation */ + CLbsTransmitPositionServerImpl* iImpl; + + /** Unused variable for future expansion. */ + TAny* iReserved; + }; + + +NONSHARABLE_CLASS(RLbsTransmitPosition) +/** +This class is used to create a sub-session with the server for +the purpose of transmitting the current position to a third party. +Before using the class, a primary connection must have already been +established with the server. +This class is not intended for derivation. + +@see RLbsTransmitPositionServer +@publishedPartner +@released + */ + { + +public: + IMPORT_C RLbsTransmitPosition(); + + IMPORT_C TInt Open(RLbsTransmitPositionServer& aServer); + IMPORT_C void Close(); + + IMPORT_C void TransmitPosition(const TDesC& aDestinationID,TUint aTransmitPriority, + TRequestStatus& aTransmittedPosStatus, TPositionInfo& aTransmittedPosInfo); + + IMPORT_C void TransmitPosition(const TDesC& aDestinationID,TUint aTransmitPriority, + TRequestStatus& aRefPosStatus, TPositionInfo& aRefPosInfo, + TRequestStatus& aTransmittedPosStatus, TPositionInfo& aTransmittedPosInfo); + + IMPORT_C void CancelTransmitPosition(); + + IMPORT_C TInt SetTransmitOptions(const TLbsTransmitPositionOptions& aTransmitOptions); + IMPORT_C TInt GetTransmitOptions(TLbsTransmitPositionOptions& aTransmitOptions) const; + +private: + IMPORT_C virtual void ConstructL(RLbsTransmitPositionServer& aServer); + IMPORT_C virtual void Destruct(); + + IMPORT_C virtual TAny* ExtendedInterface(TInt aFunctionNumber, TAny* aPtr1, TAny* aPtr2); +private: + /** A pointer to a container that holds the implementation */ + CLbsTransmitPositionImpl* iImpl; + /** Unused variable for future expansion. */ + TAny* iReserved; + }; + + + +#endif // LBSX3P_H_ +