epoc32/include/mw/csendingserviceinfo.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
parent 1 666f914201fb
child 4 837f303aceeb
permissions -rw-r--r--
Final list of Symbian^2 public API header files
     1 /*
     2 * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     5 * under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description:   Encapsulates the ECom plugged sending service data.
    15 *
    16 */
    17 
    18 
    19 
    20 #ifndef CSENDINGSERVICEINFO_H
    21 #define CSENDINGSERVICEINFO_H
    22 
    23 // INCLUDES
    24 #include <e32Base.h>
    25 //#include <SendUi.h>     // TSendingCapabilities
    26 
    27 // FORWARD DECLARATIONS
    28 class TSendingCapabilities;
    29 class CSendingServiceInfoImpl;
    30 
    31 // CLASS DECLARATION
    32 
    33 /**
    34  * Encapsulates the ECom plugged sending service data.
    35  *
    36  * @lib Sendui
    37  * @since Series 60 3.0
    38  */ 
    39 class CSendingServiceInfo : public CBase
    40     {
    41     public:
    42     
    43     enum TServiceFeatures
    44         {
    45         EServiceInValid = 1,
    46         EServiceHidden = 2,
    47         EServiceCanSendDirectly = 4,
    48         ENotUsed3 = 8
    49         };
    50         
    51     public:  // Constructors and destructor
    52     
    53         /**
    54         * Two-phased constructor.
    55         * @return Pointer to object of CSendingServiceInfo.
    56         */
    57         IMPORT_C static CSendingServiceInfo* NewL();
    58         
    59         /**
    60         * Two-phased constructor.
    61         * @return Pointer to object of CSendingServiceInfo.
    62         */
    63         IMPORT_C static CSendingServiceInfo* NewLC();
    64 
    65         /**
    66         * Destructor.
    67         */
    68         IMPORT_C virtual ~CSendingServiceInfo();
    69 
    70     public: // New functions
    71 
    72         /**
    73         * Creates a copy of CSendingServiceInfo object.
    74         * @since Series 60 3.0
    75         * @return A pointer to the new copy of the CSendingServiceInfo object.
    76         */
    77         IMPORT_C CSendingServiceInfo* CopyLC() const;
    78 
    79         /**
    80         * Set service human readable name.
    81         * Service name is used in editors "To"-field.
    82         * @since Series 60 3.0
    83         * @param aServiceName Service human readable name.
    84         * @return None.
    85         */
    86         IMPORT_C void SetServiceNameL( const TDesC& aServiceName );
    87 
    88         /**
    89         * Returns service human readable name.
    90         * Service name is used in editors "To"-field.
    91         * @since Series 60 3.0
    92         * @return Service human readable name.
    93         */
    94         IMPORT_C const TPtrC ServiceName() const;
    95 
    96         /**
    97         * Set service human readable name for the "Send"-menu.
    98         * @since Series 60 3.0
    99         * @param aServiceMenuName Service human readable name for the
   100         *        "Send"-menu.
   101         * @return None.
   102         */
   103         IMPORT_C void SetServiceMenuNameL( const TDesC& aServiceMenuName );
   104 
   105         /**
   106         * Returns service human readable name for the "Send"-menu.
   107         * @since Series 60 3.0
   108         * @return Service human readable name for the "Send"-menu.
   109         */
   110         IMPORT_C const TPtrC ServiceMenuName() const;
   111 
   112         /**
   113         * Set service address.
   114         * @since Series 60 3.0
   115         * @param aServiceAddress Service address.
   116         * @return None.
   117         */
   118         IMPORT_C void SetServiceAddressL( const TDesC& aServiceAddress );
   119 
   120         /**
   121         * Returns service address. 
   122         * @since Series 60 3.0
   123         * @return Service address.
   124         */
   125         IMPORT_C const TPtrC ServiceAddress() const;
   126 
   127         /**
   128         * Set sending service id.
   129         * @since Series 60 3.0
   130         * @param aServiceId Service id.
   131         * @return None.
   132         */
   133         IMPORT_C void SetServiceId( TUid aServiceId );
   134 
   135         /**
   136         * Returns sending service id.
   137         * @since Series 60 3.0
   138         * @return Service id.
   139         */
   140         IMPORT_C TUid ServiceId() const;
   141 
   142         /**
   143         * Set sending service provider id.
   144         * @since Series 60 3.0
   145         * @param aServiceProviderId Service provider id.
   146         * @return None.
   147         */
   148         IMPORT_C void SetServiceProviderId( TUid aServiceProviderId );
   149 
   150         /**
   151         * Returns sending service provider id.
   152         * @since Series 60 3.0
   153         * @return Service provider id.
   154         */
   155         IMPORT_C TUid ServiceProviderId() const;
   156 
   157         
   158           /**
   159         * Returns sending service technology type id.
   160         * @since Series 60 3.2
   161         * @return Service id.
   162         */
   163         IMPORT_C void SetTechnologyTypeId( TUid aTechnologyType );
   164         /**
   165         * Returns sending service technology type id.
   166         * @since Series 60 3.2
   167         * @return Service id.
   168         */
   169         IMPORT_C TUid TechnologyTypeId() const;
   170 
   171 
   172         /**
   173         * Set service sending capabilities.
   174         * @since Series 60 3.0
   175         * @param aServiceCapabilities Service sending capabilities.
   176         * @return None.
   177         */
   178         IMPORT_C void SetServiceCapabilities(
   179             TSendingCapabilities aServiceCapabilities );
   180 
   181         /**
   182         * Returns service sending capabilities.
   183         * @since Series 60 3.0
   184         * @return Service sending capabilities.
   185         */
   186         IMPORT_C TSendingCapabilities ServiceCapabilities() const;
   187 
   188        /**
   189         * Set sending service features
   190         * @since Series 60 3.2
   191         * @param aServiceCapabilities Sending service features.
   192         * @return None.
   193         */
   194         IMPORT_C void SetServiceFeatures(
   195             TInt aServiceFeatures );
   196 
   197         /**
   198         * Returns service features.
   199         * @since Series 60 3.2
   200         * @return Sending service features.
   201         */
   202         IMPORT_C TInt ServiceFeatures() const;
   203         
   204 
   205     private:
   206 
   207 
   208         /**
   209         * C++ default constructor.
   210         */
   211         CSendingServiceInfo();
   212 
   213         /**
   214         * By default Symbian 2nd phase constructor is private.
   215         */
   216         void ConstructL();
   217 
   218     private:  // Data
   219 
   220         CSendingServiceInfoImpl*            iServiceInfoImpl;
   221     };
   222 
   223 #endif      // CSENDINGSERVICEINFO_H
   224 
   225 // End of File