usbuis/usbuiqt/src/usbuimodelactive.cpp
branchGCC_SURGE
changeset 63 ef2686f7597e
parent 40 e84fb4c9218b
parent 57 62e6d990246c
child 70 8ba4a4a03bae
equal deleted inserted replaced
40:e84fb4c9218b 63:ef2686f7597e
     1 /*
       
     2 * Copyright (c) 2009 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: 
       
    15 *
       
    16 */
       
    17 
       
    18 #include "usbuimodelactive.h"
       
    19 #include "mydebug.h"
       
    20 
       
    21 //const ?type ?constant_var = ?constant;
       
    22 
       
    23 
       
    24 /*!
       
    25     Constructor.
       
    26  */
       
    27 UsbUiModelActive::UsbUiModelActive( int priority, QObject *parent )
       
    28 :   QObject( parent )
       
    29 {
       
    30     myDebug() << ">>> UsbUiModelActive::UsbUiModelActive";
       
    31     d = new UsbUiModelActivePrivate( this, priority );
       
    32     int err= iUsbWatcher.Connect();    
       
    33     myDebug() << "iUsbWatcher.Connect() returned ";
       
    34     myDebug() << err;  
       
    35     myDebug() << "<<< UsbUiModelActive::UsbUiModelActive";
       
    36 }
       
    37 
       
    38 /*!
       
    39     Destructor.
       
    40  */
       
    41 UsbUiModelActive::~UsbUiModelActive()
       
    42 {        
       
    43     myDebug() << ">>> UsbUiModelActive::~UsbUiModelActive";
       
    44     delete d;
       
    45     iUsbWatcher.Close(); 
       
    46     myDebug() << "<<< UsbUiModelActive::~UsbUiModelActive";
       
    47 }
       
    48 /*!
       
    49  * emits a signal when the request is completed
       
    50  */
       
    51 void UsbUiModelActive::emitRequestCompleted( int status )
       
    52 {
       
    53     myDebug() << ">>> UsbUiModelActive::emitRequestCompleted status: ";
       
    54     myDebug() << status; 
       
    55     emit requestCompleted( status );
       
    56     myDebug() << "<<< UsbUiModelActive::emitRequestCompleted";
       
    57 }
       
    58 
       
    59 /*!
       
    60  * UsbUiModelActive::SetUSBModeL
       
    61  * Sets the Central Repository key to the parameter.
       
    62  */
       
    63 int UsbUiModelActive::SetUsbPersonality(int personality)
       
    64     {
       
    65     myDebug() << ">>> UsbUiModelActive::SetUsbPersonality";
       
    66     myDebug() << "requested personality is ";
       
    67     myDebug() << personality;   
       
    68     // Change the personality asynchrously, result checked in RunL()
       
    69     if( IsActive() ) 
       
    70         {
       
    71         Cancel();
       
    72         }
       
    73     myDebug() << "setting new personality";    
       
    74     iUsbWatcher.SetPersonality(RequestStatus(), personality);
       
    75     SetActive();
       
    76     myDebug() << "<<< UsbUiModelActive::SetUsbPersonality, returns 0";
       
    77     return 0;
       
    78     }
       
    79 /*!
       
    80  * cancles the personality set in usbwatcher
       
    81  */
       
    82 void UsbUiModelActive::CancelSetPersonality()
       
    83     {
       
    84     iUsbWatcher.CancelSetPersonality();    
       
    85     }
       
    86 
       
    87 /*!
       
    88     Constructor.
       
    89  */
       
    90 UsbUiModelActivePrivate::UsbUiModelActivePrivate( 
       
    91         UsbUiModelActive *parent, int priority )
       
    92 :   CActive( (TInt) priority ), q( parent )
       
    93 {
       
    94     myDebug() << ">>> UsbUiModelActivePrivate::UsbUiModelActivePrivate";
       
    95     CActiveScheduler::Add( this );
       
    96     myDebug() << "<<< UsbUiModelActivePrivate::UsbUiModelActivePrivate";
       
    97 }
       
    98 
       
    99 
       
   100 /*!
       
   101     Destructor.
       
   102  */
       
   103 UsbUiModelActivePrivate::~UsbUiModelActivePrivate()
       
   104 {
       
   105     Cancel();
       
   106 }
       
   107 
       
   108 
       
   109 /*!
       
   110  *  Called by the active scheduler when the request has been completed.
       
   111  */
       
   112 void UsbUiModelActivePrivate::RunL()
       
   113 {
       
   114     myDebug() << ">>> UsbUiModelActivePrivate::RunL";
       
   115     q->emitRequestCompleted( iStatus.Int() );
       
   116     myDebug() << "<<< UsbUiModelActivePrivate::RunL";
       
   117 }
       
   118 
       
   119 
       
   120 /*!
       
   121     Called by the active scheduler when the request has been cancelled.
       
   122  */
       
   123 void UsbUiModelActivePrivate::DoCancel()
       
   124 {
       
   125     q->CancelSetPersonality();
       
   126 }
       
   127 
       
   128 
       
   129 /*!
       
   130     Called by the active scheduler when an error in RunL has occurred.
       
   131  */
       
   132 TInt UsbUiModelActivePrivate::RunError( TInt aError )
       
   133 {
       
   134     q->emitRequestCompleted( aError );
       
   135     return KErrNone;
       
   136 }