locationcentre/lcutils/inc/lcipcparams.h
branchRCL_3
changeset 9 4721bd00d3da
parent 8 3a25f69541ff
child 11 e15b7f06eba6
--- a/locationcentre/lcutils/inc/lcipcparams.h	Wed Apr 14 15:50:30 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,578 +0,0 @@
-/*
-* Copyright (c) 2007 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:  Parameters for the IPC message handling between the 
-*                Location Centre API and Location Centre Server.
-*
-*/
-
-
-#ifndef LCIPCPARAMS_H
-#define LCIPCPARAMS_H
-
-// SYSTEM INCLUDES
-#include <e32base.h>
-#include <s32strm.h>
-#include <lclocationappfilter.h>
-#include <lclocationappinfo.h>
-
-// USER INCLUDES
-
-// FORWARD DECLARATIONS
-class CLcAppInfo;
-
-// ENUMERATION DECLARATIONS
-/**
- * Enumeration defining the kind of application that this structure holds.
- */
-enum TLcAppType
-    {
-    /**
-     * The structure holds an S60 Java based Application.
-     */
-    ELcNativeApplication,
-    
-    /**
-     * The structure holds a Web URL.
-     */
-    ELcWebUrl,
-    
-    /** 
-     * The structure holds a document.
-     */
-    ELcDocument
-    };
-
-// CLASS DECLARATIONS
-/**
- * Array of identifiers which is passed to Location Centre server for
- * filtering.
- *
- * Derived from RPointerArray. So all functions of the Arrar are available
- * through this interface. 
- */
-class RLcIpcAppIdArray : public RPointerArray< HBufC >
-    {
-public:    
-    /**
-     * Externalizes the contents of this Array into a buffer.
-     *
-     * @since S60 v5.0
-     * @param aWriteStream  Buffer onto which the contents of this array
-     *                      would be externalized.
-     */
-    IMPORT_C void ExternalizeL( RWriteStream&   aWriteStream );
-   
-    /**
-     * Internalized the contents of the buffer into this array.
-     * 
-     * @since S60 v5.0
-     * @param aReadStream   Buffer from which the contents of this
-     *                      array would be populated.
-     */
-    IMPORT_C void InternalizeL( RReadStream&    aReadStream );
-    
-    /**
-     * Returns the Length of the buffer needed to pack this array of
-     * Location based Application's identifiers.
-     *
-     * @since S60 v5.0
-     * @return TInt, Length of the Buffer which is needed to pack this
-     *               array.
-     */
-    IMPORT_C TInt BufferLength();
-        
-    /**
-     * Resets and destroys the Application identifer array.
-     * There is no need to call close on the array after this.
-     *
-     * @param aIdArray Generic pointer to the array
-     */
-    IMPORT_C static void ResetAndDestroyIdArray( TAny* aIdArray );
-        
-    };
-    
-/**
- * Application information array.
- *
- * Derived from RPointerArray. So all functions of the Arrar are available
- * through this interface.
- */  
-class RLcIpcAppInfoArray : public RPointerArray< CLcAppInfo >
-    { 
-public:
-    /**
-     * Externalizes the contents of this Array into a buffer.
-     *
-     * @since S60 v5.0
-     * @param aWriteStream  Buffer onto which the contents of this array
-     *                      would be externalized.
-     */
-    IMPORT_C void ExternalizeL( RWriteStream&   aWriteStream );
-   
-    /**
-     * Internalized the contents of the buffer into this array.
-     * 
-     * @since S60 v5.0
-     * @param aReadStream   Buffer from which the contents of this
-     *                      array would be populated.
-     */
-    IMPORT_C void InternalizeL( RReadStream&    aReadStream );
-    
-    /**
-     * Returns the Length of the buffer needed to pack this array of
-     * Location based Applications.
-     *
-     * @since S60 v5.0
-     * @return TInt, Length of the Buffer which is needed to pack this
-     *               array.
-     */
-    IMPORT_C TInt BufferLength();
-        
-    /**
-     * Resets and destroys the Application information array.
-     * There is no need to call close on the array after this.
-     *
-     * @param aIdArray Generic pointer to the array
-     */
-    IMPORT_C static void ResetAndDestroyAppArray( TAny* aIdArray );        
-    };
-
-/**
- * Basic Information for a Location based Applicatiuon. This class provides sufficient
- * information for launching a Location based Application
- */
-class CLcBasicAppInfo : public CBase
-    {
-public:
-    /**
-     * Static two phase constructor
-     */
-    inline static CLcBasicAppInfo* NewL();
-    
-    /**
-     * Static two phased constructor. Leaves the object on the Cleanup stack.
-     */
-    inline static CLcBasicAppInfo* NewLC();
-    
-    /**
-     * C++ Destructor
-     */
-    inline virtual ~CLcBasicAppInfo();
-    
-    /**
-     * Retrieves the type of application stored in this structure.
-     *
-     * @since S60 v5.0     
-     * @return, The Type of Application as defined by @p TLcAppType which is stored
-     *          in this structure.
-     */
-    inline TUint32 ApplicationType() const;
-    
-    /**
-     * Sets the Application type.
-     * @since S60 v5.0     
-     * @param aAppType The Type of Application as defined by @p TLcAppType which
-     *                  is stored in this structure.
-     */
-    inline void SetApplicationType( TUint32      aAppType );
-    
-     /**
-     * Mode in which the Location Application would be launched. 
-     * This is the mode with which the application has registered with
-     * Location Centre.
-     *
-     * @since S60 v5.0     
-     * @return Mode in which the Location Application would be launched.       
-     */
-    inline TUint32 LaunchMode() const;
-
-    /** 
-     * Sets the Mode in which the Location Application would be launched.
-     *
-     * @since S60 v5.0     
-     * @param[in] aLaunchMode Mode in which the Location Application would be
-     *                        launched. 
-     */
-    inline void SetLaunchMode( TUint32  aLaunchMode );
-        
-    /**
-     * Retrieves the Generic Application data stored in this structure.
-     *
-     * @since S60 v5.0     
-     * @return, The Genereic data content for the Application.
-     */    
-    inline TPtrC ApplicationData() const;
-    
-    /**
-     * Sets the Generic Application data.
-     *
-     * @since S60 v5.0     
-     * @param aAppData The Genereic data content for the Application.
-     */       
-    inline void SetApplicationDataL( const TDesC&   aAppData );
-    
-    /**
-     * Retrieves the command line parameters stored in this structure.
-     *
-     * @since S60 v5.0     
-     * @return, The command line parameters for the Application.
-     */      
-    inline TPtrC CommandLineParamters() const;
-    
-    /**
-     * Sets the Command line parameters.
-     *
-     * @since S60 v5.0     
-     * @param aCmdLineParams The Command line parameters for the Application.
-     */     
-    inline void SetCommandLineParametersL( const TDesC&  aCmdLineParams );
-        
-    /**
-     * Externalizes the contents of this Array into a buffer.
-     *
-     * @since S60 v5.0
-     * @param aWriteStream  Buffer onto which the contents of this array
-     *                      would be externalized.
-     */
-    IMPORT_C void ExternalizeL( RWriteStream&   aWriteStream );
-   
-    /**
-     * Internalized the contents of the buffer into this array.
-     * 
-     * @since S60 v5.0
-     * @param aReadStream   Buffer from which the contents of this
-     *                      array would be populated.
-     */
-    IMPORT_C void InternalizeL( RReadStream&    aReadStream );
-    
-    /**
-     * Returns the Length of the buffer needed to pack this structure.
-     *
-     * @since S60 v5.0
-     * @return TInt, Length of the Buffer which is needed to pack this
-     *               structure.
-     */
-    IMPORT_C TInt BufferLength();  
-        
-protected:
-    /**
-     * Default C++ constructor.
-     */
-    CLcBasicAppInfo();
-     
-protected:
-    /**
-     * Type of the application that is present in this structure.
-     */
-    TUint32                             iAppType;
-
-    /**
-     * Mode in which the Location Application would be launched. If the mode
-     * defined is EDefaultMode, then the default mode specified by the 
-     * application when registering with Location Centre is used.
-     */
-    TUint32                             iLaunchMode; 
-    
-    /**
-     * Generic data content for all Location based Application. The nature of this
-     * data-type depends on the kind of Application as specified by the earlier parameter.
-     * If the iAppType is
-     * ELcApplication - This string contains the SID of the application.
-     * ELcWebUrl      - The string contains the URI of the page that needs to be launched.
-     * ELcDocument    - The string contains the full path of the file which needs to be
-     *                  opened.
-     */
-    HBufC*                              iAppData;
-
-    /**
-     * Command line parameters.
-     */
-    HBufC*                              iCmdLineParams;
-    };
-        
-/**
- * Information of a Location based Application currently registered with
- * Location Centre.
- */
-class CLcAppInfo : public CLcBasicAppInfo
-    {
-public:
-    /**
-     * Enumeration defining the Icon type present in this App Info
-     */
-    enum TLcIconFileType
-        {
-        EIconfromApp,
-        EMifFile
-        };
-        
-public:
-    /**
-     * Constructs a new instance of Location Application information object.
-     *
-     * @return The new instance of Location Application information object.
-     */
-    inline static CLcAppInfo* NewL();
- 
-     /**
-     * Constructs a new instance of Location Application information object.
-     *
-     * @return The new instance of Location Application information object.
-     */
-    inline static CLcAppInfo* NewLC();
-             
-    /**
-     * C++ Destructor.
-     * Frees all the resources associated with this Location Application
-     * information object.
-     */
-    inline virtual ~CLcAppInfo();
-
-    /**
-     * Gets the Unique identifier identifying the Location Application.
-     * This identifier is defined by the Location Application on registration
-     * with Location Centre.
-     * This is the identifier that must be used by the client of this API for 
-     * any operation on the particular Location Application.
-     * A reference to the object's internal string is returned.     
-     *
-     * @since S60 v5.0     
-     * @return Unique identifier identifying the Location Application. If the
-     *         value of the identifier has not been set then a NULL string
-     *         is returned.
-     */
-    inline TPtrC Id() const;
-    
-    /**
-     * Set the Unique identifier identifying the Location Application. The
-     * identifer is copied.
-     *
-     * @since S60 v5.0     
-     * @param[in] aId Unique identifier identifying the Location Application.      
-     */
-    inline void SetIdL( const TDesC& aId );
-                
-    /**
-     * Gets the Logical name for the Location Application.
-     * The name is defined by the Location Centre on registration with
-     * Location Centre. This is the name which would be displayed by
-     * Location Centre for this application.
-     * A reference to the object's internal string is returned.
-     *
-     * @since S60 v5.0     
-     * @return Logical name for the Location Application. If the name 
-     *         has not been set for the Location Application, then a NULL
-     *         string is returned.
-     */
-    inline TPtrC Name() const;
-
-    /**   
-     * Set the Logical name for the Location Application. The name is 
-     * copied.
-     *
-     * @since S60 v5.0     
-     * @param[in] aName Logical name for the Location Application. 
-     *                  The logical string is copied.
-     */
-    inline void SetNameL( const TDesC& aName );
-    
-    /**
-     * Gets the Icon file name for the Location based Application.
-     *
-     * @since S60 v5.0     
-     * @return The Icon file name for the Location based Application.
-     */
-    inline TPtrC IconFile() const;
-
-    /**   
-     * Sets the name of the Icon file for this Location based Application.
-     *
-     * @since S60 v5.0     
-     * @param[in] aIconFile Full path for the Icon file.
-     */
-    inline void SetIconFileL( const TDesC& aIconFile );
-        
-    /**
-     * Gets the Icon File type for the Location Application.
-     * The Location Application can optionally have an icon defined
-     * in the Registration file.
-     *
-     * @since S60 v5.0     
-     * @return The Icon file type for the Location Application.
-     */
-    inline  TLcIconFileType IconFileType() const;
-
-    /**   
-     * Sets the Icon File type for the Location Application.
-     * The Location Application can optionally have an icon defined
-     * in the Registration file.
-     *
-     * @since S60 v5.0     
-     * @param[in] aIconFileType The type of Icon file for this Location
-     *                          Application
-     */
-    inline void SetIconFileType( const TLcIconFileType aIconFileType );
-    
- 
-    /**
-     * Gets the frame number for the Icon if the Icon file is a MIF file.
-     *
-     * @since S60 v5.0     
-     * @return Frame Number      
-     */
-    inline TUint32 FrameNo() const;
-
-    /** 
-     * Sets the frame number for the Icon if the Icon file is a MIF file.
-     *
-     * @since S60 v5.0     
-     * @param[in] aFrameNo Frame number for the icon.
-     */
-    inline void SetFrameNo( TUint32  aFrameNo );
-    
-    /**
-     * Returns the System characteristics for the Location Application
-     *
-     * @since S60 v5.0
-     * @return - System Characteristics for the Location
-     *           Application. All the system characteristics for the 
-     *           Location Application would be combined to form an integer
-     *           bit-mask and this function returns the bit-mask. The
-     *           individual System characteristics are defined by
-     *           @ref TLcSystemCharacteristics enumeration.
-     */
-    inline TUint32 SystemCharacteristics() const;
-
-    /**
-     * Sets the system characteristics for the Location Application.
-     *
-     * @since S60 v5.0     
-     * @param[in] aSysCharacteristics System Characteristics for the Location
-     *                                Application.
-     */
-    inline void SetSystemCharacteristics( TUint32   aSysCharacteristics );
-    
-    /**
-     * Returns the Application characteristics for the Location Application
-     *
-     * @since S60 v5.0
-     * @return - Application Characteristics for the Location
-     *           Application. All the application characteristics for the 
-     *           would be combined to form an integer bit-mask and this
-     *           function returns the current bit-mask. The individual
-     *           Application characteristics are defined by
-     *           @ref TLcApplicationCharacteristics enumeration.
-     */
-    inline TUint32 ApplicationCharacteristics() const;
-
-    /**    
-     * Sets the Application characteristics for the Location Application.
-     *
-     * @since S60 v5.0     
-     * @param[in] aAppCharacteristics Application Characteristics for the Location
-     *                                Application.
-     */
-    inline void SetApplicationCharacteristics( TUint32   aAppCharacteristics );
-
-
-    /**
-     * Externalizes the contents of this Array into a buffer.
-     *
-     * @since S60 v5.0
-     * @param aWriteStream  Buffer onto which the contents of this array
-     *                      would be externalized.
-     */
-    void ExternalizeL( RWriteStream&   aWriteStream );
-   
-    /**
-     * Internalized the contents of the buffer into this array.
-     * 
-     * @since S60 v5.0
-     * @param aReadStream   Buffer from which the contents of this
-     *                      array would be populated.
-     */
-    void InternalizeL( RReadStream&    aReadStream );
-    
-    /**
-     * Returns the Length of the buffer needed to pack this structure.
-     *
-     * @since S60 v5.0
-     * @return TInt, Length of the Buffer which is needed to pack this
-     *               structure.
-     */
-    IMPORT_C TInt BufferLength();    
-        
-protected:
-    /**
-     * Default C++ Constructor.
-     */
-    inline CLcAppInfo();
-    
-protected:   
-    /**
-     * System wide unique identifier identifying the Location Application. This
-     * identifier is defined by the Location Application on registration with
-     * Location Centre.
-     *
-     * Owns
-     */
-    HBufC*                              iId;
-    
-    /**
-     * Application Name.
-     * Logical name for the Location Application. The name is defined by the
-     * Location Centre on registration with Location Centre. This is the name
-     * which would be displayed by Location Centre for this application.
-     * 
-     * Owns
-     */
-    HBufC*                              iApplicationName;
-    
-    /**
-     * Icon File name.
-     * The name of the Icon file if its specified in the Location Centre
-     * Registration file for the Location Application.
-     *
-     * Owns
-     */
-    HBufC*                              iIconFile;
-      
-    /**
-     * Icon file type.
-     * The Location based Application can optionally specify an Icon file
-     * which would be displayed for it in Location Centre.
-     */
-    TLcIconFileType                     iIconFileType;
-    
-    /**
-     * Frame number incase the Icon file is a MIF file
-     */
-    TUint32                             iFrameNo;
-     
-   /**
-    * Bit-mask containing the System characteristics for the corresponding
-    * Location application
-    */
-    TUint32                             iSystemCharacteristics;
-    
-   /**
-    * Bit-mask containing the Application characteristics for the corresponding
-    * Location application
-    */
-    TUint32                             iAppCharacteristics; 
-};
-    
-#include "lcipcparams.inl"
-     
-#endif // LCIPCPARAMS_H