phonesrv_plat/call_remote_party_information_api/inc/xqcallremotepartyinfo.h
changeset 53 25b8d29b7c59
parent 51 12bc758d6a02
equal deleted inserted replaced
51:12bc758d6a02 53:25b8d29b7c59
     1 /*!
       
     2 * Copyright (c) 2010 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 "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: Provides information about remote party information of ongoing calls.
       
    15 *
       
    16 */
       
    17 
       
    18 #ifndef XQCALLREMOTEPARTYINFO_H
       
    19 #define XQCALLREMOTEPARTYINFO_H
       
    20 
       
    21 #include <QObject>
       
    22 #include <QString>
       
    23 #include <QGlobal.h>
       
    24 #include <ccpdefs.h>
       
    25 #include <mcallremotepartyinfo.h>
       
    26 
       
    27 // forward declarations 
       
    28 class XQCallRemotePartyInfoPrivate;
       
    29 class CallRemotePartyInfoPrivate;
       
    30 
       
    31 /*!
       
    32     CallRemotePartyInfo
       
    33     Holds calls remote party information.
       
    34 */
       
    35 NONSHARABLE_CLASS( CallRemotePartyInfo )
       
    36     {
       
    37 public:
       
    38     /*!
       
    39        Constructors and destructor
       
    40     */
       
    41     CallRemotePartyInfo();
       
    42     CallRemotePartyInfo(const CallRemotePartyInfo&);
       
    43     CallRemotePartyInfo& operator=(const CallRemotePartyInfo&);
       
    44     ~CallRemotePartyInfo();
       
    45 
       
    46 public:
       
    47     void setCallIndex(int index); 
       
    48     void setAddress(QString address); 
       
    49     void setMatchedName(QString matchedName); 
       
    50     void setNameFromNetwork(QString nameFromNetwork); 
       
    51     void setCompanyName(QString companyName); 
       
    52     void setSATCall(bool SATCall); 
       
    53     void setRemoteIdentity(MCallRemotePartyInfo::TRemoteIdentityStatus remoteIdentity); 
       
    54     
       
    55     int callIndex() const;  
       
    56     QString address() const;
       
    57     QString matchedName() const ; 
       
    58     QString nameFromNetwork() const; 
       
    59     QString companyName() const; 
       
    60     bool SATCall() const; 
       
    61     MCallRemotePartyInfo::TRemoteIdentityStatus remoteIdentity() const;
       
    62     
       
    63 protected:  
       
    64     CallRemotePartyInfoPrivate* d_ptr;  
       
    65      
       
    66     };
       
    67  
       
    68 
       
    69 #ifdef BUILD_XQCALLREMOTEPARTYINFO
       
    70 #define XQCALLREMOTEPARTYINFO_EXPORT Q_DECL_EXPORT
       
    71 #else
       
    72 #define XQCALLREMOTEPARTYINFO_EXPORT Q_DECL_IMPORT
       
    73 #endif
       
    74 /*!
       
    75     XQCallRemotePartyInfo
       
    76     Class to be used for receiving information about ongoing call remote party informations.
       
    77     
       
    78     Usage example:
       
    79     
       
    80     QList<CallRemotePartyInfo> infos;
       
    81     CallRemotePartyInfo callRemotePartyInfoFirst;
       
    82     CallRemotePartyInfo callRemotePartyInfoLast;
       
    83     XQCallRemotePartyInfo xqCallRemotePartyInfo;
       
    84     xqCallRemotePartyInfo.getCallRemotePartyInfos(infos);
       
    85     callRemotePartyInfoFirst = infos.first();
       
    86     callRemotePartyInfoLast = infos.last();
       
    87      
       
    88 */
       
    89 
       
    90 
       
    91 class XQCALLREMOTEPARTYINFO_EXPORT XQCallRemotePartyInfo: public QObject
       
    92 {
       
    93     Q_OBJECT
       
    94 
       
    95 public: 
       
    96     /*!
       
    97        Constructor and destructor
       
    98     */
       
    99     XQCallRemotePartyInfo ();
       
   100     ~XQCallRemotePartyInfo ();
       
   101         
       
   102     /*!
       
   103         \fn void getCallRemotePartyInfos(QList<CallRemotePartyInfo> &infos)
       
   104         
       
   105         Gets the snapshot of remote party information of ongoing calls.
       
   106     */
       
   107     void getCallRemotePartyInfos(QList<CallRemotePartyInfo> &infos);
       
   108  
       
   109 signals:
       
   110     
       
   111     /*!
       
   112         \fn void callRemotePartyInformationChanged()
       
   113         
       
   114         Signals that there are changes in remote party informations of ongoing calls. 
       
   115         Client should fetch the call infomations after receiving the notification.
       
   116     */
       
   117     void callRemotePartyInformationChanged();
       
   118 
       
   119 private slots:       
       
   120    
       
   121 /*!
       
   122         \fn void sendCallRemotePartyInfoChangedSignal()
       
   123         
       
   124         Sends signal call remote party info changed signal to client's.
       
   125     */
       
   126     void sendCallRemotePartyInfoChangedSignal();
       
   127     
       
   128     
       
   129 protected:  
       
   130 
       
   131      XQCallRemotePartyInfoPrivate* const d_ptr;  
       
   132 
       
   133      Q_DECLARE_PRIVATE(XQCallRemotePartyInfo);  
       
   134  
       
   135 };
       
   136 
       
   137 #endif // XQCALLREMOTEPARTYINFO_H