mmfenh/enhancedmediaclient/Client/src/Components/EffectBase/EffectControlBase.cpp
changeset 0 71ca22bcf22a
equal deleted inserted replaced
-1:000000000000 0:71ca22bcf22a
       
     1 /*
       
     2 * Copyright (c) 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:  Implementation of EffectControlBase class.
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #include "EffectControlBase.h"
       
    20 #include "EffectControlBaseImpl.h"
       
    21 
       
    22 using namespace multimedia;
       
    23 
       
    24 CEffectControlBase::CEffectControlBase()
       
    25     {
       
    26     // No Impl
       
    27     }
       
    28 
       
    29 CEffectControlBase::~CEffectControlBase()
       
    30     {
       
    31     delete iCEffectControlBaseImpl;
       
    32     }
       
    33 
       
    34 void CEffectControlBase::ConstructL( TUid aCIUid )
       
    35     {
       
    36     iCEffectControlBaseImpl = CEffectControlBaseImpl::NewL( *this, aCIUid );
       
    37     }
       
    38 
       
    39 TBool CEffectControlBase::IsConnected()
       
    40     {
       
    41     TBool status(EFalse);
       
    42     if ( iCEffectControlBaseImpl )
       
    43         {
       
    44         status = iCEffectControlBaseImpl->IsConnected();
       
    45         }
       
    46     return status;
       
    47     }
       
    48 
       
    49 TInt CEffectControlBase::Connect()
       
    50     {
       
    51     TInt status(KErrNotReady);
       
    52     if ( iCEffectControlBaseImpl )
       
    53         {
       
    54         status = iCEffectControlBaseImpl->Connect();
       
    55         }
       
    56     return status;
       
    57     }
       
    58 
       
    59 TInt CEffectControlBase::Disconnect()
       
    60     {
       
    61     TInt status(KErrNotReady);
       
    62     if ( iCEffectControlBaseImpl )
       
    63         {
       
    64         status = iCEffectControlBaseImpl->Disconnect();
       
    65         }
       
    66     return status;
       
    67     }
       
    68 
       
    69 TInt CEffectControlBase::CustomCommandSync( TInt aFunction,
       
    70                                            const TDesC8& aDataTo1,
       
    71                                            const TDesC8& aDataTo2,
       
    72                                            TDes8& aDataFrom )
       
    73     {
       
    74     TInt status(KErrNotReady);
       
    75     if ( iCEffectControlBaseImpl )
       
    76         {
       
    77         status = iCEffectControlBaseImpl->CustomCommandSync( aFunction, aDataTo1, aDataTo2, aDataFrom );
       
    78         }
       
    79     return status;
       
    80     }
       
    81 
       
    82 TInt CEffectControlBase::CustomCommandSync(TInt aFunction,
       
    83                        const TDesC8& aDataTo1,
       
    84                        const TDesC8& aDataTo2)
       
    85     {
       
    86     TInt status(KErrNotReady);
       
    87     if ( iCEffectControlBaseImpl )
       
    88         {
       
    89         status = iCEffectControlBaseImpl->CustomCommandSync( aFunction, aDataTo1, aDataTo2 );
       
    90         }
       
    91     return status;
       
    92     }
       
    93 
       
    94 void CEffectControlBase::CustomCommandAsync(TInt aFunction,
       
    95                         const TDesC8& aDataTo1,
       
    96                         const TDesC8& aDataTo2,
       
    97                         TDes8& aDataFrom,
       
    98                         TRequestStatus& aStatus)
       
    99     {
       
   100     if ( iCEffectControlBaseImpl )
       
   101         {
       
   102         iCEffectControlBaseImpl->CustomCommandAsync( aFunction, aDataTo1, aDataTo2, aDataFrom, aStatus );
       
   103         }
       
   104     else
       
   105         {
       
   106         TRequestStatus* status = &aStatus;
       
   107 		User::RequestComplete(status, KErrNotReady);
       
   108         }
       
   109     }
       
   110 
       
   111 void CEffectControlBase::CustomCommandAsync(TInt aFunction,
       
   112                         const TDesC8& aDataTo1,
       
   113                         const TDesC8& aDataTo2,
       
   114                         TRequestStatus& aStatus)
       
   115     {
       
   116     if ( iCEffectControlBaseImpl )
       
   117         {
       
   118         iCEffectControlBaseImpl->CustomCommandAsync( aFunction, aDataTo1, aDataTo2, aStatus );
       
   119         }
       
   120     else
       
   121         {
       
   122         TRequestStatus* status = &aStatus;
       
   123 		User::RequestComplete(status, KErrNotReady);
       
   124         }
       
   125     }
       
   126 
       
   127 TInt CEffectControlBase::CustomCommandSync( const TMMFMessageDestinationPckg& aDestination,
       
   128                                             TInt aFunction,
       
   129                                             const TDesC8& aDataTo1,
       
   130                                             const TDesC8& aDataTo2,
       
   131                                             TDes8& aDataFrom )
       
   132     {
       
   133     TInt status(KErrNotReady);
       
   134     if ( iCEffectControlBaseImpl )
       
   135         {
       
   136         status = iCEffectControlBaseImpl->CustomCommandSync( aDestination, aFunction, aDataTo1, aDataTo2, aDataFrom );
       
   137         }
       
   138     return status;
       
   139     }
       
   140 
       
   141 TInt CEffectControlBase::CustomCommandSync( const TMMFMessageDestinationPckg& aDestination,
       
   142                                             TInt aFunction,
       
   143                                             const TDesC8& aDataTo1,
       
   144                                             const TDesC8& aDataTo2 )
       
   145     {
       
   146     TInt status(KErrNotReady);
       
   147     if ( iCEffectControlBaseImpl )
       
   148         {
       
   149         status = iCEffectControlBaseImpl->CustomCommandSync( aDestination, aFunction, aDataTo1, aDataTo2 );
       
   150         }
       
   151     return status;
       
   152     }
       
   153 
       
   154 void CEffectControlBase::CustomCommandAsync( const TMMFMessageDestinationPckg& aDestination,
       
   155                                              TInt aFunction,
       
   156                                              const TDesC8& aDataTo1,
       
   157                                              const TDesC8& aDataTo2,
       
   158                                              TDes8& aDataFrom,
       
   159                                              TRequestStatus& aStatus )
       
   160     {
       
   161     if ( iCEffectControlBaseImpl )
       
   162         {
       
   163         iCEffectControlBaseImpl->CustomCommandAsync( aDestination, aFunction, aDataTo1, aDataTo2, aDataFrom, aStatus );
       
   164         }
       
   165     else
       
   166         {
       
   167         TRequestStatus* status = &aStatus;
       
   168 		User::RequestComplete(status, KErrNotReady);
       
   169         }
       
   170     }
       
   171 
       
   172 void CEffectControlBase::CustomCommandAsync( const TMMFMessageDestinationPckg& aDestination,
       
   173                                              TInt aFunction,
       
   174                                              const TDesC8& aDataTo1,
       
   175                                              const TDesC8& aDataTo2,
       
   176                                              TRequestStatus& aStatus )
       
   177     {
       
   178     if ( iCEffectControlBaseImpl )
       
   179         {
       
   180         iCEffectControlBaseImpl->CustomCommandAsync( aDestination, aFunction, aDataTo1, aDataTo2, aStatus );
       
   181         }
       
   182     else
       
   183         {
       
   184         TRequestStatus* status = &aStatus;
       
   185 		User::RequestComplete(status, KErrNotReady);
       
   186         }
       
   187     }
       
   188 
       
   189 TInt CEffectControlBase::GetMessageHandle(TMMFMessageDestinationPckg &aPckg)
       
   190 	{
       
   191     TInt status(KErrNotReady);
       
   192     if ( iCEffectControlBaseImpl )
       
   193         {
       
   194         status = iCEffectControlBaseImpl->GetMessageHandle(aPckg);
       
   195         }
       
   196     return status;		
       
   197 	}
       
   198 
       
   199 MCustomCommand* CEffectControlBase::GetCustomCommand()
       
   200 	{
       
   201     if ( iCEffectControlBaseImpl )
       
   202         {
       
   203         return iCEffectControlBaseImpl->GetCustomCommand();
       
   204         }
       
   205 	else
       
   206 		{
       
   207 		return NULL;	
       
   208 		}
       
   209 	}
       
   210 
       
   211 
       
   212 TInt CEffectControlBase::GetControlObserver( MControlObserver*& aObserver )
       
   213     {
       
   214     TInt status(KErrNotReady);
       
   215     if ( iCEffectControlBaseImpl )
       
   216         {
       
   217         aObserver = (MControlObserver*)iCEffectControlBaseImpl;
       
   218         status = KErrNone;
       
   219         }
       
   220     return status;
       
   221     }
       
   222 
       
   223 TInt CEffectControlBase::AddedToStreamControl( MStreamControl& aStreamControl,
       
   224                                                MCustomCommand& aCustomCommand,
       
   225                                                MEffectControl& aEffect )
       
   226     {
       
   227     TInt status(KErrNotReady);
       
   228     if ( iCEffectControlBaseImpl )
       
   229         {
       
   230         status = iCEffectControlBaseImpl->AddedToStreamControl( aStreamControl, aCustomCommand, aEffect );
       
   231         }
       
   232     return status;
       
   233     }
       
   234 
       
   235 TInt CEffectControlBase::RemovedFromStreamControl( MStreamControl& aStreamControl )
       
   236     {
       
   237     TInt status(KErrNotReady);
       
   238     if ( iCEffectControlBaseImpl )
       
   239         {
       
   240         status = iCEffectControlBaseImpl->RemovedFromStreamControl( aStreamControl );
       
   241         }
       
   242     return status;
       
   243     }
       
   244 
       
   245 void CEffectControlBase::StreamControlDeleted( MStreamControl& aStreamControl )
       
   246     {
       
   247     if ( iCEffectControlBaseImpl )
       
   248         {
       
   249         iCEffectControlBaseImpl->StreamControlDeleted( aStreamControl );
       
   250         }
       
   251     }
       
   252 
       
   253 void CEffectControlBase::Event( TEffectControlEvent /*aEvent*/ )
       
   254     {
       
   255     // No Impl
       
   256     }
       
   257 
       
   258 // End of file