dlnasrv_plat/upnp_avcp_api/inc/upnpavcontrolpointobserver.h
branchIOP_Improvements
changeset 40 08b5eae9f9ff
parent 39 6369bfd1b60d
child 41 b4d83ea1d6e2
equal deleted inserted replaced
39:6369bfd1b60d 40:08b5eae9f9ff
     1 /** @file
       
     2 * Copyright (c) 2005-2006 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:  MUpnpAVControlPointObserver
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 #ifndef C_MUPNPAVCONTROLPOINTOBSERVER_H
       
    21 #define C_MUPNPAVCONTROLPOINTOBSERVER_H
       
    22 
       
    23 //  INCLUDES
       
    24 #include "upnpdevice.h"
       
    25 
       
    26 // CLASS DECLARATION
       
    27 
       
    28 /**
       
    29 *  Interface class.
       
    30 *  This class defines a observer interface for AV controlpoint
       
    31 *
       
    32 *  @since Series 60 2.6
       
    33 */
       
    34 class MUpnpAVControlPointObserver
       
    35         {
       
    36     public:  // Constructors and destructor
       
    37 
       
    38     public: // New functions
       
    39         /**
       
    40         * Observer callback for rendering control Set Volume.
       
    41         * @since Series 60 2.6
       
    42         * @param aUuid Source device UUID. 
       
    43         * @param aSessionId 
       
    44         * @param aErr UPnP error code.
       
    45         * @param aInstance rendering instance.
       
    46         * @param aChannel audio channel.
       
    47         * @param aDesiredVolume 
       
    48         */
       
    49         virtual void RcSetVolumeResponse(
       
    50             const TDesC8& aUuid,
       
    51             TInt aSessionId,
       
    52             TInt aErr, 
       
    53             const TDesC8& aInstance, 
       
    54             const TDesC8& aChannel, 
       
    55             const TDesC8& aDesiredVolume) = 0;
       
    56             public: // New functions
       
    57         /**
       
    58         * Observer callback for rendering control Get Volume.
       
    59         * @since Series 60 2.6
       
    60         * @param aUuid Source device UUID. 
       
    61         * @param aSessionId 
       
    62         * @param aErr UPnP error code.
       
    63         * @param aInstance rendering instance.
       
    64         * @param aChannel audio channel.
       
    65         * @param aCurrentVolume 
       
    66         */
       
    67         virtual void RcVolumeResponse(
       
    68             const TDesC8& aUuid,
       
    69             TInt aSessionId,
       
    70             TInt aErr, 
       
    71             const TDesC8& aInstance, 
       
    72             const TDesC8& aChannel, 
       
    73             const TDesC8& aCurrentVolume) = 0; 
       
    74         /**
       
    75         * Observer callback for rendering control Set Mute.
       
    76         * @since Series 60 2.6
       
    77         * @param aUuid Source device UUID. 
       
    78         * @param aSessionId 
       
    79         * @param aErr UPnP error code.
       
    80         * @param aInstance rendering instance.
       
    81         * @param aChannel audio channel.
       
    82         * @param aDesiredMute 
       
    83         */
       
    84         virtual void RcSetMuteResponse(
       
    85             const TDesC8& aUuid,
       
    86             TInt aSessionId,
       
    87             TInt aErr, 
       
    88             const TDesC8& aInstance, 
       
    89             const TDesC8& aChannel, 
       
    90             const TDesC8& aDesiredMute) = 0;
       
    91         /**
       
    92         * Observer callback for rendering control Get Mute.
       
    93         * @since Series 60 2.6
       
    94         * @param aUuid Source device UUID. 
       
    95         * @param aSessionId 
       
    96         * @param aErr UPnP error code.
       
    97         * @param aInstance rendering instance.
       
    98         * @param aChannel audio channel.
       
    99         * @param aCurrentMute 
       
   100         */
       
   101         virtual void RcMuteResponse(
       
   102             const TDesC8& aUuid,
       
   103             TInt aSessionId,
       
   104             TInt aErr, 
       
   105             const TDesC8& aInstance, 
       
   106             const TDesC8& aChannel, 
       
   107             const TDesC8& aCurrentMute) = 0; 
       
   108 
       
   109 
       
   110         /**
       
   111         * Observer callback for rendering control AV set transport uri.
       
   112         * @since Series 60 2.6
       
   113         * @param aUuid Source device UUID. 
       
   114         * @param aSessionId 
       
   115         * @param aErr UPnP error code.
       
   116         * @param aInstance rendering instance.
       
   117         * @param aCurrentUri Current transport URI.
       
   118         * @param Current transport URI Metadata. 
       
   119         */
       
   120         virtual void AvtSetTransportUriResponse(
       
   121             const TDesC8& aUuid,
       
   122             TInt aSessionId,
       
   123             TInt aErr,
       
   124             const TDesC8& aInstanceId,
       
   125             const TDesC8& aCurrentUri,
       
   126             const TDesC8& aCurrentUriMetaData) = 0;
       
   127         /**
       
   128         * Observer callback for rendering control AV set next transport uri.
       
   129         * @since Series 60 2.6
       
   130         * @param aUuid Source device UUID. 
       
   131         * @param aSessionId 
       
   132         * @param aErr UPnP error code.
       
   133         * @param aInstance rendering instance.
       
   134         * @param aCurrentUri Current transport URI.
       
   135         * @param Current transport URI Metadata. 
       
   136         */
       
   137         virtual void AvtSetNextTransportUriResponse(
       
   138             const TDesC8& aUuid,
       
   139             TInt aSessionId,
       
   140             TInt aErr,
       
   141             const TDesC8& aInstanceId,
       
   142             const TDesC8& aNextUri,
       
   143             const TDesC8& aNextUriMetaData) = 0;
       
   144         /**
       
   145         * Observer callback for rendering control AV get media info response.
       
   146         * @since Series 60 2.6
       
   147         * @param aUuid Source device UUID. 
       
   148         * @param aSessionId 
       
   149         * @param aErr UPnP error code.
       
   150         * @param aInstance rendering instance.
       
   151         * @param aNrTracks Number of tracks.
       
   152         * @param aMediaDuration 
       
   153         * @param aCurrentUri Current transport URI.
       
   154         * @param aCurrentUriMetaData Metadata of current trransport uri. 
       
   155         * @param aNextUri Next transport URI.
       
   156         * @param aNextUriMetaData Metadata of next trransport uri.
       
   157         * @param aPlayMedium
       
   158         * @param aRecordMedium
       
   159         * @param aWriteStatus
       
   160         */
       
   161         virtual void AvtMediaInfoResponse(
       
   162             const TDesC8& aUuid,
       
   163             TInt aSessionId,
       
   164             TInt aErr,
       
   165             const TDesC8& aInstanceId,
       
   166             const TDesC8& aNrTracks,
       
   167             const TDesC8& aMediaDuration,
       
   168             const TDesC8& aCurrentUri,
       
   169             const TDesC8& aCurrentUriMetaData,
       
   170             const TDesC8& aNextUri,
       
   171             const TDesC8& aNextUriMetaData,
       
   172             const TDesC8& aPlayMedium,
       
   173             const TDesC8& aRecordMedium,
       
   174             const TDesC8& aWriteStatus) = 0;
       
   175         /**
       
   176         * Observer callback for rendering control AV get transport info response.
       
   177         * @since Series 60 2.6
       
   178         * @param aUuid Source device UUID. 
       
   179         * @param aSessionId
       
   180         * @param aErr UPnP error code.
       
   181         * @param aInstance rendering instance.
       
   182         * @param aCurrenTransportState
       
   183         * @param aCurrentTransportStatus
       
   184         * @param aCurrentUri aCurrentSpeed
       
   185         */
       
   186         virtual void AvtGetTransportInfoResponse(
       
   187             const TDesC8& aUuid,
       
   188             TInt aSessionId,
       
   189             TInt aErr,
       
   190             const TDesC8& aInstanceId,
       
   191             const TDesC8& aCurrenTransportState,
       
   192             const TDesC8& aCurrentTransportStatus,
       
   193             const TDesC8& aCurrentSpeed) = 0;
       
   194         /**
       
   195         * Observer callback for rendering control AV get position info response.
       
   196         * @since Series 60 2.6
       
   197         * @param aUuid Source device UUID. 
       
   198         * @param aSessionId 
       
   199         * @param aErr UPnP error code.
       
   200         * @param aTrack rendering instance.
       
   201         * @param aTrackDuration 
       
   202         * @param aTrackMetaData
       
   203         * @param aTrackURI
       
   204         * @param aRelTime
       
   205         * @param aAbsTime
       
   206         * @param aRelCount
       
   207         * @param aAbsCount
       
   208         */
       
   209         virtual void AvtPositionInfoResponse(
       
   210             const TDesC8& aUuid,
       
   211             TInt aSessionId,
       
   212             TInt aErr,
       
   213             const TDesC8& aInstanceId,
       
   214             const TDesC8& aTrack,
       
   215             const TDesC8& aTrackDuration,
       
   216             const TDesC8& aTrackMetaData,
       
   217             const TDesC8& aTrackURI,
       
   218             const TDesC8& aRelTime,
       
   219             const TDesC8& aAbsTime,
       
   220             const TDesC8& aRelCount,
       
   221             const TDesC8& aAbsCount) = 0;
       
   222         /**
       
   223         * Observer callback for rendering control AV get device capabilities response.
       
   224         * @since Series 60 2.6
       
   225         * @param aUuid Source device UUID. 
       
   226         * @param aSessionId 
       
   227         * @param aErr UPnP error code.
       
   228         * @param aPlayMedia
       
   229         * @param aRecMedia 
       
   230         * @param aRecQualityModes
       
   231         */
       
   232         virtual void AvtDeviceCapabilitiesResponse(
       
   233             const TDesC8& aUuid,
       
   234             TInt aSessionId,
       
   235             TInt aErr,
       
   236             const TDesC8& aInstanceId,
       
   237             const TDesC8& aPlayMedia,
       
   238             const TDesC8& aRecMedia,
       
   239             const TDesC8& aRecQualityMode) = 0;
       
   240         /**
       
   241         * Observer callback for rendering control AV get transport settings response.
       
   242         * @since Series 60 2.6
       
   243         * @param aUuid Source device UUID. 
       
   244         * @param aSessionId
       
   245         * @param aInstanceId
       
   246         * @param aErr UPnP error code.        
       
   247         * @param aPlayMode
       
   248         * @param aRecQualityMode
       
   249         */
       
   250         virtual void AvtTransportSettingsResponse(
       
   251             const TDesC8& aUuid,
       
   252             TInt aSessionId,
       
   253             TInt aErr,
       
   254             const TDesC8& aInstanceId,
       
   255             const TDesC8& aPlayMode,
       
   256             const TDesC8& aRecQualityMode) = 0;
       
   257         /**
       
   258         * Observer callback for rendering control AV Stop response.
       
   259         * @since Series 60 2.6
       
   260         * @param aUuid Source device UUID. 
       
   261         * @param aSessionId 
       
   262         * @param aErr UPnP error code.
       
   263         */
       
   264         virtual void AvtStopResponse(
       
   265             const TDesC8& aUuid,
       
   266             TInt aSessionId,
       
   267             TInt aErr,
       
   268             const TDesC8& aInstanceId) = 0;
       
   269         /**
       
   270         * Observer callback for rendering control AV Play response.
       
   271         * @since Series 60 2.6
       
   272         * @param aUuid Source device UUID. 
       
   273         * @param aSessionId 
       
   274         * @param aErr UPnP error code.
       
   275         * @param aSpeed
       
   276         */
       
   277         virtual void AvtPlayResponse(
       
   278             const TDesC8& aUuid,
       
   279             TInt aSessionId,
       
   280             TInt aErr,
       
   281             const TDesC8& aInstanceId,
       
   282             const TDesC8& aSpeed) = 0;
       
   283         /**
       
   284         * Observer callback for rendering control AV Pause response.
       
   285         * @since Series 60 2.6
       
   286         * @param aUuid Source device UUID. 
       
   287         * @param aSessionId 
       
   288         * @param aErr UPnP error code.
       
   289         */
       
   290         virtual void AvtPauseResponse(
       
   291             const TDesC8& aUuid,
       
   292             TInt aSessionId,
       
   293             TInt aErr,
       
   294             const TDesC8& aInstanceId) = 0;
       
   295         /**
       
   296         * Observer callback for rendering control AV Record response.
       
   297         * @since Series 60 2.6
       
   298         * @param aUuid Source device UUID. 
       
   299         * @param aSessionId 
       
   300         * @param aErr UPnP error code.
       
   301         */
       
   302         virtual void AvtRecordResponse(
       
   303             const TDesC8& aUuid,
       
   304             TInt aSessionId,
       
   305             TInt aErr,
       
   306             const TDesC8& aInstanceId) = 0;
       
   307         /**
       
   308         * Observer callback for rendering control AV Seek response.
       
   309         * @since Series 60 2.6
       
   310         * @param aSessionId 
       
   311         * @param aErr UPnP error code.
       
   312         * @param aUnit
       
   313         * @param aTarget
       
   314         */
       
   315         virtual void AvtSeekResponse(
       
   316             const TDesC8& aUuid,
       
   317             TInt aSessionId,
       
   318             TInt aErr,
       
   319             const TDesC8& aInstanceId,
       
   320             const TDesC8& aUnit,
       
   321             const TDesC8& aTarget) = 0;
       
   322         /**
       
   323         * Observer callback for rendering control AV Next response.
       
   324         * @since Series 60 2.6
       
   325         * @param aUuid Source device UUID. 
       
   326         * @param aSessionId 
       
   327         * @param aErr UPnP error code.
       
   328         */
       
   329         virtual void AvtNextResponse(
       
   330             const TDesC8& aUuid,
       
   331             TInt aSessionId,
       
   332             TInt aErr,
       
   333             const TDesC8& aInstanceId) = 0;
       
   334         /**
       
   335         * Observer callback for rendering control AV Previous response.
       
   336         * @since Series 60 2.6
       
   337         * @param aUuid Source device UUID. 
       
   338         * @param aSessionId 
       
   339         * @param aErr UPnP error code.
       
   340         */
       
   341         virtual void AvtPreviousResponse(
       
   342             const TDesC8& aUuid,
       
   343             TInt aSessionId,
       
   344             TInt aErr,
       
   345             const TDesC8& aInstanceId) = 0;
       
   346         /**
       
   347         * Observer callback for rendering control AV setplay mode response.
       
   348         * @since Series 60 2.6
       
   349         * @param aUuid Source device UUID. 
       
   350         * @param aSessionId 
       
   351         * @param aErr UPnP error code.
       
   352         * @param aNewPlayMode
       
   353         */
       
   354         virtual void AvtSetPlayModeResponse(
       
   355             const TDesC8& aUuid,
       
   356             TInt aSessionId,
       
   357             TInt aErr,
       
   358             const TDesC8& aInstanceId,
       
   359             const TDesC8& aNewPlayMode) = 0;
       
   360         /**
       
   361         * Observer callback for rendering control AV set record qualityresponse.
       
   362         * @since Series 60 2.6
       
   363         * @param aUuid Source device UUID. 
       
   364         * @param aSessionId 
       
   365         * @param aErr UPnP error code.
       
   366         * @param aNewRecordQuality
       
   367         */
       
   368         virtual void AvtSetRecordModeResponse(
       
   369             const TDesC8& aUuid,
       
   370             TInt aSessionId,
       
   371             TInt aErr,
       
   372             const TDesC8& aInstanceId,
       
   373             const TDesC8& aNewRecordQuality) = 0;
       
   374         /**
       
   375         * Observer callback for Content Directory GetSearchCapabilities function.
       
   376         * @since Series 60 2.6
       
   377         * @param aUuid Source device UUID. 
       
   378         * @param aSessionId 
       
   379         * @param aErr UPnP error code.
       
   380         * @param aSearchCaps
       
   381         */
       
   382         virtual void CdsSearchCapabilitiesResponse(
       
   383             const TDesC8& aUuid,
       
   384             TInt aSessionId,
       
   385             TInt aErr,
       
   386             const TDesC8& aSearchCaps) = 0;
       
   387         /**
       
   388         * Observer callback for Content Directory GetSortCapabilities function.
       
   389         * @since Series 60 2.6
       
   390         * @param aUuid Source device UUID. 
       
   391         * @param aSessionId 
       
   392         * @param aErr UPnP error code.
       
   393         * @param aSortCaps
       
   394         */
       
   395         virtual void CdsSortCapabilitiesResponse(
       
   396             const TDesC8& aUuid,
       
   397             TInt aSessionId,
       
   398             TInt aErr,
       
   399             const TDesC8& aSortCaps) = 0;
       
   400         /**
       
   401         * Observer callback for Content Directory GetSystemUpdateID function.
       
   402         * @since Series 60 2.6
       
   403         * @param aSessionId 
       
   404         * @param aErr UPnP error code.
       
   405         * @param aSystemUpdateId
       
   406         */
       
   407         virtual void CdsSystemUpdateIdResponse(
       
   408             const TDesC8& aUuid,
       
   409             TInt aSessionId,
       
   410             TInt aErr,
       
   411             TInt aSystemUpdateId) = 0;
       
   412         /**
       
   413         * Observer callback for Content Directory Browse function.
       
   414         * @since Series 60 2.6
       
   415         * @param aUuid Source device UUID. 
       
   416         * @param aSessionId 
       
   417         * @param aErr UPnP error code.
       
   418         * @param aObjectID
       
   419         * @param aBrowseFlag
       
   420         * @param aFilter
       
   421         * @param aIndex
       
   422         * @param arequest
       
   423         * @param aSortCriteria
       
   424         * @param aResult
       
   425         * @param aReturned
       
   426         * @param aMatches
       
   427         * @param aUpdateID
       
   428         */
       
   429         virtual void CdsBrowseResponse(
       
   430             const TDesC8& aUuid,
       
   431             TInt aSessionId,
       
   432             TInt aErr,
       
   433             const TDesC8& aObjectID,
       
   434             const TDesC8&  aBrowseFlag,
       
   435             const TDesC8&  aFilter,
       
   436             TInt aIndex,
       
   437             TInt aRequest,
       
   438             const TDesC8&  aSortCriteria,
       
   439             const TDesC8&  aResult,
       
   440             TInt aReturned,
       
   441             TInt aMatches,
       
   442             const TDesC8&  aUpdateID) = 0;
       
   443         /**
       
   444         * Observer callback for Content Directory Search function.
       
   445         * @since Series 60 2.6
       
   446         * @param aUuid Source device UUID. 
       
   447         * @param aSessionId 
       
   448         * @param aErr UPnP error code.
       
   449         * @param aContainerId
       
   450         * @param aSearchCriteria
       
   451         * @param aFilter
       
   452         * @param aIndex
       
   453         * @param arequest
       
   454         * @param aSortCriteria
       
   455         * @param aResult
       
   456         * @param aReturned
       
   457         * @param aMatches
       
   458         * @param aUpdateID
       
   459         */
       
   460         virtual void CdsSearchResponse(
       
   461             const TDesC8& aUuid,
       
   462             TInt aSessionId,
       
   463             TInt aErr,
       
   464             const TDesC8& aContainerId,
       
   465             const TDesC8& aSearchCriteria,
       
   466             const TDesC8& aFilter,
       
   467             TInt aIndex,
       
   468             TInt aRequest,
       
   469             const TDesC8& aSortCriteria,
       
   470             const TDesC8& aResult,
       
   471             TInt aReturned,
       
   472             TInt aMatches,
       
   473             const TDesC8& aUpdateID) = 0;
       
   474         /**
       
   475         * Observer callback for Content Directory DestroyObject function.
       
   476         * @since Series 60 2.6
       
   477         * @param aUuid Source device UUID. 
       
   478         * @param aSessionId 
       
   479         * @param aErr UPnP error code.
       
   480         * @param aObjectId
       
   481         */
       
   482         virtual void CdsDestroyObjectResponse(
       
   483             const TDesC8& aUuid,
       
   484             TInt aSessionId,
       
   485             TInt aErr,
       
   486             const TDesC8& aObjectId ) = 0;
       
   487         /**
       
   488         * Observer callback for Content Directory UpdateObject function.
       
   489         * @since Series 60 2.6
       
   490         * @param aUuid Source device UUID. 
       
   491         * @param aSessionId 
       
   492         * @param aErr UPnP error code.
       
   493         * @param aObjectId
       
   494         * @param aCurrentTagValue
       
   495         * @param aNewTagValue
       
   496         */
       
   497         virtual void CdsUpdateObjectResponse(
       
   498             const TDesC8& aUuid,
       
   499             TInt aSessionId,
       
   500             TInt aErr,
       
   501             const TDesC8& aObjectId,
       
   502             const TDesC8& aCurrentTagValue,
       
   503             const TDesC8& aNewTagValue ) = 0;
       
   504         /**
       
   505         * Observer callback for Content Directory ImportResource function.
       
   506         * @since Series 60 2.6
       
   507         * @param aUuid Source device UUID. 
       
   508         * @param aSessionId 
       
   509         * @param aErr UPnP error code.
       
   510         * @param aSourceURI
       
   511         * @param aDestinationURI
       
   512         * @param aTransferId
       
   513         */       
       
   514         virtual void CdsImportResponse(
       
   515             const TDesC8& aUuid,
       
   516             TInt aSessionId,
       
   517             TInt aErr,
       
   518             const TDesC8& aSourceURI,
       
   519             const TDesC8& aDestinationURI,
       
   520             const TDesC8& aTransferId ) = 0;
       
   521         /**
       
   522         * Observer callback for Content Directory ExportResource function.
       
   523         * @since Series 60 2.6
       
   524         * @param aUuid Source device UUID. 
       
   525         * @param aSessionId 
       
   526         * @param aErr UPnP error code.
       
   527         * @param aSourceURI
       
   528         * @param aDestinationURI
       
   529         * @param aTransferId
       
   530         */       
       
   531         virtual void CdsExportResponse(
       
   532             const TDesC8& aUuid,
       
   533             TInt aSessionId,
       
   534             TInt aErr,
       
   535             const TDesC8& aSourceURI,
       
   536             const TDesC8& aDestinationURI,
       
   537             const TDesC8& aTransferId ) = 0;
       
   538         /**
       
   539         * Observer callback for Content Directory StopTransfer function.
       
   540         * @since Series 60 2.6
       
   541         * @param aUuid Source device UUID. 
       
   542         * @param aSessionId 
       
   543         * @param aErr UPnP error code.
       
   544         * @param aSourceURI
       
   545         * @param aDestinationURI
       
   546         * @param aTransferId
       
   547         */       
       
   548         virtual void CdsStopTransferResponse(
       
   549             const TDesC8& aUuid,
       
   550             TInt aSessionId,
       
   551             TInt aErr,
       
   552             const TDesC8& aTransferId ) = 0;
       
   553         /**
       
   554         * Observer callback for Content Directory GetTransferProgress function.
       
   555         * @since Series 60 2.6
       
   556         * @param aUuid Source device UUID. 
       
   557         * @param aSessionId 
       
   558         * @param aErr UPnP error code.
       
   559         * @param aTransferId
       
   560         * @param aTransferStatus
       
   561         * @param aTransferTotal
       
   562         */         
       
   563         virtual void CdsCTransferProgressResponse(
       
   564             const TDesC8& aUuid,
       
   565             TInt aSessionId,
       
   566             TInt aErr,
       
   567             const TDesC8& aTransferId,
       
   568             const TDesC8& aTransferStatus,
       
   569             const TDesC8& aTransferLength,            
       
   570             const TDesC8& aTransferTotal ) = 0;
       
   571         /**
       
   572         * Observer callback for Content Directory DeleteResource function.
       
   573         * @since Series 60 2.6
       
   574         * @param aUuid Source device UUID. 
       
   575         * @param aSessionId 
       
   576         * @param aErr UPnP error code.
       
   577         * @param aResourceUri Resource to be deleted.
       
   578         */ 
       
   579         virtual void CdsDeleteResourceResponse(
       
   580             const TDesC8& aUuid,
       
   581             TInt aSessionId,
       
   582             TInt aErr,
       
   583             const TDesC8& aResourceUri ) = 0;
       
   584         /**
       
   585         * Observer callback for Content Directory CreateReference function.
       
   586         * @since Series 60 2.6
       
   587         * @param aUuid Source device UUID. 
       
   588         * @param aSessionId 
       
   589         * @param aErr UPnP error code.
       
   590         * @param aContainerId Destination folder.
       
   591         * @param aObjectId Source object.
       
   592         * @param aNewId Created reference.
       
   593         */ 
       
   594         virtual void CdsCreateReferenceResponse(
       
   595             const TDesC8& aUuid,
       
   596             TInt aSessionId,
       
   597             TInt aErr,
       
   598             const TDesC8& aContainerId, 
       
   599             const TDesC8& aObjectId, 
       
   600             const TDesC8& aNewId ) = 0;
       
   601         /**
       
   602         * Observer callback for Content Directory CreateReference function.
       
   603         * @since Series 60 2.6
       
   604         * @param aUuid Source device UUID. 
       
   605         * @param aSessionId 
       
   606         * @param aErr UPnP error code.
       
   607         * @param aContainerID Container in which new object is created.
       
   608         * @param aElements Elements for item creation.
       
   609         * @param aObjectID New objects ID.
       
   610         * @param aResult Result of the action.
       
   611         */ 
       
   612         virtual void CdsCreateObjectResponse(
       
   613             const TDesC8& aUuid,
       
   614             TInt aSessionId,
       
   615             TInt aErr,
       
   616             const TDesC8& aContainerID, 
       
   617             const TDesC8& aElements, 
       
   618             const TDesC8& aObjectID, 
       
   619             const TDesC8& aResult ) = 0;
       
   620 
       
   621         /**
       
   622         * Observer callback for Connection Manager GetProtocolInfo function.
       
   623         * @since Series 60 2.6
       
   624         * @param aUuid Source device UUID. 
       
   625         * @param aSessionId 
       
   626         * @param aErr UPnP error code.
       
   627         * @param aSource
       
   628         * @param aSink
       
   629         */ 
       
   630         virtual void CmProtocolInfoResponse(
       
   631             const TDesC8& aUuid,
       
   632             TInt aSessionId,
       
   633             TInt aErr,
       
   634             const TDesC8& aSource, 
       
   635             const TDesC8& aSink ) = 0;
       
   636         /**
       
   637         * Observer callback for Connection Manager PrepareForConnection 
       
   638         * function.
       
   639         * @since Series 60 2.6
       
   640         * @param aUuid Source device UUID. 
       
   641         * @param aSessionId 
       
   642         * @param aErr UPnP error code.
       
   643         * @param aRemoteProtocolInfo
       
   644         * @param aPeerConnectionManager
       
   645         * @param aPeerConnectionId
       
   646         * @param aDirection
       
   647         * @param aConnection
       
   648         * @param aTransport
       
   649         * @param aRsc
       
   650         */        
       
   651         virtual void CmPrepareResponse(
       
   652             const TDesC8& aUuid,
       
   653             TInt aSessionId,
       
   654             TInt aErr,
       
   655             const TDesC8& aRemoteProtocolInfo,
       
   656             const TDesC8& aPeerConnectionManager,
       
   657             const TDesC8& aPeerConnectionId,
       
   658             const TDesC8& aDirection,
       
   659             TInt aConnection,
       
   660             TInt aTransport,
       
   661             TInt aRsc ) = 0;
       
   662         /**
       
   663         * Observer callback for Connection Manager ConnectionComplete 
       
   664         * function.
       
   665         * @since Series 60 2.6
       
   666         * @param aUuid Source device UUID. 
       
   667         * @param aSessionId 
       
   668         * @param aErr UPnP error code.
       
   669         * @param aConnection
       
   670         */         
       
   671         virtual void CmComplete(
       
   672             const TDesC8& aUuid,
       
   673             TInt aSessionId,
       
   674             TInt aErr,
       
   675             TInt aConnection ) = 0;
       
   676         /**
       
   677         * Observer callback for Connection Manager GetCurrentConnectionIDs
       
   678         * function.
       
   679         * @since Series 60 2.6
       
   680         * @param aUuid Source device UUID. 
       
   681         * @param aSessionId 
       
   682         * @param aErr UPnP error code.
       
   683         * @param aConnection
       
   684         */         
       
   685         virtual void CmCurrentConnections(
       
   686             const TDesC8& aUuid,
       
   687             TInt aSessionId,
       
   688             TInt aErr,
       
   689             const TDesC8& aConnections) = 0;
       
   690         /**
       
   691         * Observer callback for Connection Manager GetCurrentConnectionInfo
       
   692         * function.
       
   693         * @since Series 60 2.6
       
   694         * @param aUuid Source device UUID. 
       
   695         * @param aSessionId 
       
   696         * @param aErr UPnP error code.
       
   697         * @param rscId
       
   698         * @param aProtocolInfo
       
   699         * @param aPeerConnectionManager
       
   700         * @param peerId
       
   701         * @param aStatus
       
   702         */   
       
   703         virtual void CmCurrentInfo(
       
   704             const TDesC8& aUuid,
       
   705             TInt aSessionId,
       
   706             TInt aErr,
       
   707             TInt rscId, 
       
   708             TInt transportId, 
       
   709             const TDesC8& aProtocolInfo,
       
   710             const TDesC8& aPeerConnectionManager, 
       
   711             TInt peerId, 
       
   712             const TDesC8& aDirection, 
       
   713             const TDesC8& aStatus ) = 0;
       
   714 
       
   715         //*****************************************************************
       
   716         //Functions for UPnP event handling
       
   717         //*****************************************************************
       
   718         /**
       
   719         * Content Directory SystemUpdateId event handler.
       
   720         * @since Series 60 2.6
       
   721         * @param aUuid Device UUID.
       
   722         * @param aSystemUpdateId Device systemUpdateId.
       
   723         */
       
   724         virtual void CdsUpdateEvent(
       
   725                 const TDesC8& aUuid,
       
   726                 TInt aSystemUpdateId
       
   727                 ) = 0;
       
   728         /**
       
   729         * Content Directory ContainerUpdateIDs event handler.
       
   730         * @since Series 60 2.6
       
   731         * @param aUuid Device UUID.
       
   732         * @param aConteinerIds Device container update ids.
       
   733         */
       
   734         virtual void CdsContainerEvent(
       
   735                 const TDesC8& aUuid,
       
   736                 const TDesC8& aConteinerIds
       
   737                 ) = 0;
       
   738         /**
       
   739         * Content Directory TransferIDs event handler.
       
   740         * @since Series 60 2.6
       
   741         * @param aUuid Device UUID.
       
   742         * @param aTransferIds Device transfer ids.
       
   743         */
       
   744         virtual void CdsTransferEvent(
       
   745                 const TDesC8& aUuid,
       
   746                 const TDesC8& aTransferIds
       
   747                 ) = 0;
       
   748         /**
       
   749         * Rendering Control LastChange event handler.
       
   750         * @since Series 60 2.6
       
   751         * @param aUuid Device UUID.
       
   752         * @param aLastChange Device LastChange statevariable.
       
   753         */
       
   754         virtual void RcLastChangeEvent(
       
   755                 const TDesC8& aUuid,
       
   756                 const TDesC8& aLastChange
       
   757                 ) = 0;
       
   758         /**
       
   759         * AV Transport LastChange event handler.
       
   760         * @since Series 60 2.6
       
   761         * @param aUuid Device UUID.
       
   762         * @param aLastChange Device LastChange statevariable.
       
   763         */
       
   764         virtual void AvtLastChangeEvent(
       
   765                 const TDesC8& aUuid,
       
   766                 const TDesC8& aLastChange
       
   767                 ) = 0;
       
   768         /**
       
   769         * Connection Manager SourceEvent event handler.
       
   770         * @since Series 60 2.6
       
   771         * @param aUuid Device UUID.
       
   772         * @param aSource Device's source info.
       
   773         */
       
   774         virtual void CmSourceEvent(
       
   775                 const TDesC8& aUuid,
       
   776                 const TDesC8& aSource
       
   777                 ) = 0;
       
   778         /**
       
   779         * Connection Manager SinkEvent event handler.
       
   780         * @since Series 60 2.6
       
   781         * @param aUuid Device UUID.
       
   782         * @param aSink Device's sink info.
       
   783         */
       
   784         virtual void CmSinkEvent(
       
   785                 const TDesC8& aUuid,
       
   786                 const TDesC8& aSink
       
   787                 ) = 0;
       
   788         /**
       
   789         * Connection Manager ConnectionsEvent event handler.
       
   790         * @since Series 60 2.6
       
   791         * @param aUuid Device UUID.
       
   792         * @param aConnections Devices connections.
       
   793         */
       
   794         virtual void CmConnectionsEvent(
       
   795                 const TDesC8& aUuid,
       
   796                 const TDesC8& aConnections
       
   797                 ) = 0;
       
   798         //*****************************************************************
       
   799         // Device and http functions.
       
   800         //*****************************************************************
       
   801         /**
       
   802         * Handles HTTP messages.
       
   803         * @since Series 60 2.6
       
   804         * @param aMessage Incoming HTTP message.
       
   805         */
       
   806         virtual void HttpResponseL(CUpnpHttpMessage* aMessage) = 0;
       
   807 
       
   808         /**
       
   809         * Handles UPnP device discoveries.
       
   810         * @since Series 60 2.6
       
   811         * @param aDevice Device that is discovered.
       
   812         */
       
   813         virtual void DeviceDiscoveredL(CUpnpDevice* aDevice) = 0;
       
   814 
       
   815         /**
       
   816         * Handles UPnP device disappears.
       
   817         * @since Series 60 2.6
       
   818         * @param aDevice Device that disappeared.
       
   819         */
       
   820         virtual void DeviceDisappearedL(CUpnpDevice* aDevice) = 0;
       
   821     };
       
   822 
       
   823 #endif      // C_MUPNPAVCONTROLPOINTOBSERVER_H
       
   824             
       
   825 // End of File