mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxaltestmoduleblocks.cpp
changeset 14 80975da52420
child 16 43d09473c595
equal deleted inserted replaced
12:5a06f39ad45b 14:80975da52420
       
     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: This file contains testclass implementation.
       
    15 *
       
    16 */
       
    17 
       
    18 // [INCLUDE FILES] - do not remove
       
    19 #include <e32svr.h>
       
    20 #include <StifParser.h>
       
    21 #include <StifTestInterface.h>
       
    22 #include "openmaxaltestmodule.h"
       
    23 
       
    24 // EXTERNAL DATA STRUCTURES
       
    25 //extern  ?external_data;
       
    26 
       
    27 // EXTERNAL FUNCTION PROTOTYPES  
       
    28 //extern ?external_function( ?arg_type,?arg_type );
       
    29 
       
    30 // CONSTANTS
       
    31 //const ?type ?constant_var = ?constant;
       
    32 
       
    33 // MACROS
       
    34 //#define ?macro ?macro_def
       
    35 
       
    36 // LOCAL CONSTANTS AND MACROS
       
    37 //const ?type ?constant_var = ?constant;
       
    38 //#define ?macro_name ?macro_def
       
    39 
       
    40 // MODULE DATA STRUCTURES
       
    41 //enum ?declaration
       
    42 //typedef ?declaration
       
    43 
       
    44 // LOCAL FUNCTION PROTOTYPES
       
    45 //?type ?function_name( ?arg_type, ?arg_type );
       
    46 
       
    47 // FORWARD DECLARATIONS
       
    48 //class ?FORWARD_CLASSNAME;
       
    49 
       
    50 // ============================= LOCAL FUNCTIONS ===============================
       
    51 
       
    52 // -----------------------------------------------------------------------------
       
    53 // ?function_name ?description.
       
    54 // ?description
       
    55 // Returns: ?value_1: ?description
       
    56 //          ?value_n: ?description_line1
       
    57 //                    ?description_line2
       
    58 // -----------------------------------------------------------------------------
       
    59 //
       
    60 /*
       
    61 ?type ?function_name(
       
    62     ?arg_type arg,  // ?description
       
    63     ?arg_type arg)  // ?description
       
    64     {
       
    65 
       
    66     ?code  // ?comment
       
    67 
       
    68     // ?comment
       
    69     ?code
       
    70     }
       
    71 */
       
    72 
       
    73 // ============================ MEMBER FUNCTIONS ===============================
       
    74 
       
    75 // -----------------------------------------------------------------------------
       
    76 // COpenMAXALTestModule::Delete
       
    77 // Delete here all resources allocated and opened from test methods. 
       
    78 // Called from destructor. 
       
    79 // -----------------------------------------------------------------------------
       
    80 //
       
    81 void COpenMAXALTestModule::Delete() 
       
    82     {
       
    83     if(m_URIName)
       
    84         {
       
    85         delete m_URIName;
       
    86         m_URIName = NULL;
       
    87         }
       
    88     if(m_MimeType)
       
    89         {
       
    90         delete m_MimeType;
       
    91         m_MimeType = NULL;
       
    92         }
       
    93     }
       
    94 
       
    95 // -----------------------------------------------------------------------------
       
    96 // COpenMAXALTestModule::RunMethodL
       
    97 // Run specified method. Contains also table of test mothods and their names.
       
    98 // -----------------------------------------------------------------------------
       
    99 //
       
   100 TInt COpenMAXALTestModule::RunMethodL( 
       
   101     CStifItemParser& aItem ) 
       
   102     {
       
   103 
       
   104     static TStifFunctionInfo const KFunctions[] =
       
   105         {  
       
   106         // Copy this line for every implemented function.
       
   107         // First string is the function name used in TestScripter script file.
       
   108         // Second is the actual implementation member function. 
       
   109         ENTRY( "Example", COpenMAXALTestModule::ExampleL ),
       
   110         
       
   111         /* Common Utility Functions begins*/
       
   112         ENTRY( "al_SetDataSource", COpenMAXALTestModule::al_SetDataSource ),
       
   113         ENTRY( "al_SetDataSink", COpenMAXALTestModule::al_SetDataSink ),
       
   114         ENTRY( "al_SetDataLocator", COpenMAXALTestModule::al_SetDataLocator ),
       
   115         ENTRY( "al_SetDataFormat", COpenMAXALTestModule::al_SetDataFormat ),
       
   116         /* Common Utility Functions ends*/
       
   117         
       
   118         ENTRY( "al_createEngine", COpenMAXALTestModule::al_createEngine ),
       
   119         ENTRY( "al_queryNumSupportedEngineInterfaces", COpenMAXALTestModule::al_queryNumSupportedEngineInterfaces ),
       
   120         ENTRY( "al_querySupportedEngineInterfaces", COpenMAXALTestModule::al_querySupportedEngineInterfaces ),
       
   121         
       
   122         /*ObjectItf begins*/
       
   123         ENTRY( "al_objitf_Realize", COpenMAXALTestModule::al_objitf_Realize ),       
       
   124         ENTRY( "al_objitf_Resume", COpenMAXALTestModule::al_objitf_Resume ),
       
   125         ENTRY( "al_objitf_GetState", COpenMAXALTestModule::al_objitf_GetState ),
       
   126         ENTRY( "al_objitf_GetInterface", COpenMAXALTestModule::al_objitf_GetInterface ),
       
   127         ENTRY( "al_objitf_RegisterCallback", COpenMAXALTestModule::al_objitf_RegisterCallback ),
       
   128         ENTRY( "al_objitf_AbortAsyncOperation", COpenMAXALTestModule::al_objitf_AbortAsyncOperation ),
       
   129         ENTRY( "al_objitf_Destroy", COpenMAXALTestModule::al_objitf_Destroy ),
       
   130         ENTRY( "al_objitf_SetPriority", COpenMAXALTestModule::al_objitf_SetPriority ),
       
   131         ENTRY( "al_objitf_GetPriority", COpenMAXALTestModule::al_objitf_GetPriority ),
       
   132         ENTRY( "al_objitf_SetLossOfControlInterfaces", COpenMAXALTestModule::al_objitf_SetLossOfControlInterfaces ),
       
   133         /*ObjectItf ends*/
       
   134 
       
   135         /*DynItfMgmtItf begins*/
       
   136         ENTRY( "al_dimitf_AddInterface", COpenMAXALTestModule::al_dimitf_AddInterface ),
       
   137         ENTRY( "al_dimitf_RemoveInterface", COpenMAXALTestModule::al_dimitf_RemoveInterface ),
       
   138         ENTRY( "al_dimitf_ResumeInterface", COpenMAXALTestModule::al_dimitf_ResumeInterface ),
       
   139         ENTRY( "al_dimitf_RegisterCallback", COpenMAXALTestModule::al_dimitf_RegisterCallback ),
       
   140         /*DynItfMgmtItf ends*/
       
   141         
       
   142         
       
   143         /*EngineItf begins*/
       
   144         ENTRY( "al_engitf_CreateCameraDevice", COpenMAXALTestModule::al_engitf_CreateCameraDevice ),
       
   145         ENTRY( "al_engitf_CreateRadioDevice", COpenMAXALTestModule::al_engitf_CreateRadioDevice ),
       
   146         ENTRY( "al_engitf_CreateLEDDevice", COpenMAXALTestModule::al_engitf_CreateLEDDevice ),
       
   147         ENTRY( "al_engitf_CreateVibraDevice", COpenMAXALTestModule::al_engitf_CreateVibraDevice ),
       
   148         ENTRY( "al_engitf_CreateMediaPlayer", COpenMAXALTestModule::al_engitf_CreateMediaPlayer ),
       
   149         ENTRY( "al_engitf_CreateMediaRecorder", COpenMAXALTestModule::al_engitf_CreateMediaRecorder ),
       
   150         ENTRY( "al_engitf_CreateOutputMix", COpenMAXALTestModule::al_engitf_CreateOutputMix ),
       
   151         ENTRY( "al_engitf_CreateMetadataExtractor", COpenMAXALTestModule::al_engitf_CreateMetadataExtractor ),
       
   152         ENTRY( "al_engitf_CreateExtensionObject", COpenMAXALTestModule::al_engitf_CreateExtensionObject ),
       
   153         ENTRY( "al_engitf_GetImplementationInfo", COpenMAXALTestModule::al_engitf_GetImplementationInfo ),
       
   154         ENTRY( "al_engitf_QuerySupportedProfiles", COpenMAXALTestModule::al_engitf_QuerySupportedProfiles ),
       
   155         ENTRY( "al_engitf_QueryNumSupportedInterfaces", COpenMAXALTestModule::al_engitf_QueryNumSupportedInterfaces ),
       
   156         ENTRY( "al_engitf_QuerySupportedInterfaces", COpenMAXALTestModule::al_engitf_QuerySupportedInterfaces ),
       
   157         ENTRY( "al_engitf_QueryNumSupportedExtension", COpenMAXALTestModule::al_engitf_QueryNumSupportedExtension ),
       
   158         ENTRY( "al_engitf_QuerySupportedExtension", COpenMAXALTestModule::al_engitf_QuerySupportedExtension ),
       
   159         ENTRY( "al_engitf_IsExtensionSupported", COpenMAXALTestModule::al_engitf_IsExtensionSupported ),
       
   160         ENTRY( "al_engitf_QueryLEDCapabilities", COpenMAXALTestModule::al_engitf_QueryLEDCapabilities ),
       
   161         ENTRY( "al_engitf_QueryVibraCapabilities", COpenMAXALTestModule::al_engitf_QueryVibraCapabilities ),
       
   162         /*EngineItf ends*/
       
   163         
       
   164         /*AudioIODeviceCapabilitiesItf ends*/
       
   165         ENTRY( "al_audioiodevcapitf_GetAvailableAudioInputs", COpenMAXALTestModule::al_audioiodevcapitf_GetAvailableAudioInputs ),
       
   166         ENTRY( "al_audioiodevcapitf_QueryAudioInputCapabilities", COpenMAXALTestModule::al_audioiodevcapitf_QueryAudioInputCapabilities ),
       
   167         ENTRY( "al_audioiodevcapitf_RegisterAvailableAudioInputsChangedCallback", COpenMAXALTestModule::al_audioiodevcapitf_RegisterAvailableAudioInputsChangedCallback ),
       
   168         ENTRY( "al_audioiodevcapitf_GetAvailableAudioOutputs", COpenMAXALTestModule::al_audioiodevcapitf_GetAvailableAudioOutputs ),
       
   169         ENTRY( "al_audioiodevcapitf_QueryAudioOutputCapabilities", COpenMAXALTestModule::al_audioiodevcapitf_QueryAudioOutputCapabilities ),
       
   170         ENTRY( "al_audioiodevcapitf_RegisterAvailableAudioOutputsChangedCallback", COpenMAXALTestModule::al_audioiodevcapitf_RegisterAvailableAudioOutputsChangedCallback ),
       
   171         ENTRY( "al_audioiodevcapitf_RegisterDefaultDeviceIDMapChangedCallback", COpenMAXALTestModule::al_audioiodevcapitf_RegisterDefaultDeviceIDMapChangedCallback ),
       
   172         ENTRY( "al_audioiodevcapitf_GetAssociatedAudioInputs", COpenMAXALTestModule::al_audioiodevcapitf_GetAssociatedAudioInputs ),
       
   173         ENTRY( "al_audioiodevcapitf_GetAssociatedAudioOutputs", COpenMAXALTestModule::al_audioiodevcapitf_GetAssociatedAudioOutputs ),
       
   174         ENTRY( "al_audioiodevcapitf_GetDefaultAudioDevices", COpenMAXALTestModule::al_audioiodevcapitf_GetDefaultAudioDevices ),
       
   175         ENTRY( "al_audioiodevcapitf_QuerySampleFormatsSupported", COpenMAXALTestModule::al_audioiodevcapitf_QuerySampleFormatsSupported ),
       
   176         /*AudioIODeviceCapabilitiesItf ends*/
       
   177 
       
   178         /*AudioEncoderCapabilitiesItf ends*/
       
   179         ENTRY( "al_audioencodercapitf_GetAudioEncoders", COpenMAXALTestModule::al_audioencodercapitf_GetAudioEncoders ),
       
   180         ENTRY( "al_audioencodercapitf_GetAudioEncoderCapabilities", COpenMAXALTestModule::al_audioencodercapitf_GetAudioEncoderCapabilities ),
       
   181         /*AudioIODeviceCapabilitiesItf ends*/
       
   182 
       
   183         
       
   184         /*RecordItf ends*/
       
   185         ENTRY( "al_recorditf_SetRecordState", COpenMAXALTestModule::al_recorditf_SetRecordState ),
       
   186         ENTRY( "al_recorditf_GetRecordState", COpenMAXALTestModule::al_recorditf_GetRecordState ),
       
   187         ENTRY( "al_recorditf_SetDurationLimit", COpenMAXALTestModule::al_recorditf_SetDurationLimit ),
       
   188         ENTRY( "al_recorditf_GetPosition", COpenMAXALTestModule::al_recorditf_GetPosition ),
       
   189         ENTRY( "al_recorditf_RegisterCallback", COpenMAXALTestModule::al_recorditf_RegisterCallback ),
       
   190         ENTRY( "al_recorditf_SetCallbackEventsMask", COpenMAXALTestModule::al_recorditf_SetCallbackEventsMask ),
       
   191         ENTRY( "al_recorditf_GetCallbackEventsMask", COpenMAXALTestModule::al_recorditf_GetCallbackEventsMask ),
       
   192         ENTRY( "al_recorditf_SetMarkerPosition", COpenMAXALTestModule::al_recorditf_SetMarkerPosition ),
       
   193         ENTRY( "al_recorditf_ClearMarkerPosition", COpenMAXALTestModule::al_recorditf_ClearMarkerPosition ),
       
   194         ENTRY( "al_recorditf_GetMarkerPosition", COpenMAXALTestModule::al_recorditf_GetMarkerPosition ),
       
   195         ENTRY( "al_recorditf_SetPositionUpdatePeriod", COpenMAXALTestModule::al_recorditf_SetPositionUpdatePeriod ),
       
   196         ENTRY( "al_recorditf_GetPositionUpdatePeriod", COpenMAXALTestModule::al_recorditf_GetPositionUpdatePeriod ),
       
   197         /*RecordItf ends*/
       
   198 
       
   199         
       
   200         /*AudioEncoderItf ends*/
       
   201         ENTRY( "al_audioencoderitf_SetEncoderSettings", COpenMAXALTestModule::al_audioencoderitf_SetEncoderSettings ),
       
   202         ENTRY( "al_audioencoderitf_GetEncoderSettings", COpenMAXALTestModule::al_audioencoderitf_GetEncoderSettings ),
       
   203         /*AudioEncoderItf ends*/
       
   204 
       
   205         
       
   206         /*MetadataInsertionItf ends*/
       
   207         ENTRY( "al_metadatainsertionitf_CreateChildNode", COpenMAXALTestModule::al_metadatainsertionitf_CreateChildNode ),
       
   208         ENTRY( "al_metadatainsertionitf_GetSupportedKeysCount", COpenMAXALTestModule::al_metadatainsertionitf_GetSupportedKeysCount ),
       
   209         ENTRY( "al_metadatainsertionitf_GetKeySize", COpenMAXALTestModule::al_metadatainsertionitf_GetKeySize ),
       
   210         ENTRY( "al_metadatainsertionitf_GetKey", COpenMAXALTestModule::al_metadatainsertionitf_GetKey ),
       
   211         ENTRY( "al_metadatainsertionitf_GetFreeKeysEncoding", COpenMAXALTestModule::al_metadatainsertionitf_GetFreeKeysEncoding ),
       
   212         ENTRY( "al_metadatainsertionitf_InsertMetadataItem", COpenMAXALTestModule::al_metadatainsertionitf_InsertMetadataItem ),
       
   213         ENTRY( "al_metadatainsertionitf_RegisterCallback", COpenMAXALTestModule::al_metadatainsertionitf_RegisterCallback ),
       
   214         /*MetadataInsertionItf ends*/
       
   215         
       
   216         //ADD NEW ENTRY HERE
       
   217         // [test cases entries] - Do not remove
       
   218 
       
   219         };
       
   220 
       
   221     const TInt count = sizeof( KFunctions ) / 
       
   222                         sizeof( TStifFunctionInfo );
       
   223 
       
   224     return RunInternalL( KFunctions, count, aItem );
       
   225 
       
   226     }
       
   227 
       
   228 // -----------------------------------------------------------------------------
       
   229 // COpenMAXALTestModule::ExampleL
       
   230 // Example test method function.
       
   231 // (other items were commented in a header).
       
   232 // -----------------------------------------------------------------------------
       
   233 //
       
   234 TInt COpenMAXALTestModule::ExampleL( CStifItemParser& aItem )
       
   235     {
       
   236 
       
   237     // Print to UI
       
   238     _LIT( KOpenMAXALTestModule, "OpenMAXALTestModule" );
       
   239     _LIT( KExample, "In Example" );
       
   240     TestModuleIf().Printf( 0, KOpenMAXALTestModule, KExample );
       
   241     // Print to log file
       
   242     iLog->Log( KExample );
       
   243 
       
   244     TInt i = 0;
       
   245     TPtrC string;
       
   246     _LIT( KParam, "Param[%i]: %S" );
       
   247     while ( aItem.GetNextString ( string ) == KErrNone )
       
   248         {
       
   249         TestModuleIf().Printf( i, KOpenMAXALTestModule, 
       
   250                                 KParam, i, &string );
       
   251         i++;
       
   252         }
       
   253 
       
   254     return KErrNone;
       
   255 
       
   256     }
       
   257 
       
   258 TInt COpenMAXALTestModule::MapErr(XAresult xa_res)
       
   259     {
       
   260     TInt status(KErrGeneral);
       
   261     switch(xa_res)
       
   262         {
       
   263         case XA_RESULT_SUCCESS:
       
   264             //iLog->Log(_L("XA_RESULT_SUCCESS"));
       
   265             status = KErrNone;
       
   266             break;
       
   267         case XA_RESULT_PRECONDITIONS_VIOLATED:
       
   268             iLog->Log(_L("XA_RESULT_PRECONDITIONS_VIOLATED"));
       
   269             break;
       
   270         case XA_RESULT_PARAMETER_INVALID:
       
   271             iLog->Log(_L("XA_RESULT_PARAMETER_INVALID"));
       
   272             break;
       
   273         case XA_RESULT_MEMORY_FAILURE:
       
   274             iLog->Log(_L("XA_RESULT_MEMORY_FAILURE"));
       
   275             break;
       
   276         case XA_RESULT_RESOURCE_ERROR:
       
   277             iLog->Log(_L("XA_RESULT_RESOURCE_ERROR"));
       
   278             break;
       
   279         case XA_RESULT_RESOURCE_LOST:
       
   280             iLog->Log(_L("XA_RESULT_RESOURCE_LOST"));
       
   281             break;
       
   282         case XA_RESULT_IO_ERROR:
       
   283             iLog->Log(_L("XA_RESULT_IO_ERROR"));
       
   284             break;
       
   285         case XA_RESULT_BUFFER_INSUFFICIENT:
       
   286             iLog->Log(_L("XA_RESULT_BUFFER_INSUFFICIENT"));
       
   287             break;
       
   288         case XA_RESULT_CONTENT_CORRUPTED:
       
   289             iLog->Log(_L("XA_RESULT_CONTENT_CORRUPTED"));
       
   290             break;
       
   291         case XA_RESULT_CONTENT_UNSUPPORTED:
       
   292             iLog->Log(_L("XA_RESULT_CONTENT_UNSUPPORTED"));
       
   293             break;
       
   294         case XA_RESULT_CONTENT_NOT_FOUND:
       
   295             iLog->Log(_L("XA_RESULT_CONTENT_NOT_FOUND"));
       
   296             break;
       
   297         case XA_RESULT_PERMISSION_DENIED:
       
   298             iLog->Log(_L("XA_RESULT_PERMISSION_DENIED"));
       
   299             break;
       
   300         case XA_RESULT_FEATURE_UNSUPPORTED:
       
   301             iLog->Log(_L("XA_RESULT_FEATURE_UNSUPPORTED"));
       
   302             break;
       
   303         case XA_RESULT_INTERNAL_ERROR:
       
   304             iLog->Log(_L("XA_RESULT_INTERNAL_ERROR"));
       
   305             break;
       
   306         case XA_RESULT_UNKNOWN_ERROR:
       
   307             iLog->Log(_L("XA_RESULT_UNKNOWN_ERROR"));
       
   308             break;
       
   309         case XA_RESULT_OPERATION_ABORTED:
       
   310             iLog->Log(_L("XA_RESULT_OPERATION_ABORTED"));
       
   311             break;
       
   312         case XA_RESULT_CONTROL_LOST:
       
   313             iLog->Log(_L("XA_RESULT_CONTROL_LOST"));
       
   314             break;
       
   315         default:
       
   316             iLog->Log(_L("Unknown Error!!!"));
       
   317         }
       
   318     return status;
       
   319     }
       
   320 
       
   321 
       
   322 XAInterfaceID COpenMAXALTestModule::MapInterface(TInt interface)
       
   323     {
       
   324     XAInterfaceID id(XA_IID_NULL);
       
   325     switch(interface)
       
   326         {
       
   327         case 1:
       
   328             id = XA_IID_NULL;
       
   329             break;
       
   330         case 2:
       
   331             id = XA_IID_OBJECT;
       
   332             break;
       
   333         case 3:
       
   334             id = XA_IID_CONFIGEXTENSION;
       
   335             break;
       
   336         case 4:
       
   337             id = XA_IID_DYNAMICINTERFACEMANAGEMENT;
       
   338             break;
       
   339         case 5:
       
   340             id = XA_IID_ENGINE;
       
   341             break;
       
   342         case 6:
       
   343             id = XA_IID_THREADSYNC;
       
   344             break;
       
   345         case 7:
       
   346             id = XA_IID_PLAY;
       
   347             break;
       
   348         case 8:
       
   349             id = XA_IID_PLAYBACKRATE;
       
   350             break;
       
   351         case 9:
       
   352             id = XA_IID_PREFETCHSTATUS;
       
   353             break;
       
   354         case 10:
       
   355             id = XA_IID_SEEK;
       
   356             break;
       
   357         case 11:
       
   358             id = XA_IID_VOLUME;
       
   359             break;
       
   360         case 12:
       
   361             id = XA_IID_IMAGECONTROLS;
       
   362             break;
       
   363         case 13:
       
   364             id = XA_IID_IMAGEEFFECTS;
       
   365             break;
       
   366         case 14:
       
   367             id = XA_IID_VIDEOPOSTPROCESSING;
       
   368             break;
       
   369         case 15:
       
   370             id = XA_IID_RECORD;
       
   371             break;
       
   372         case 16:
       
   373             id = XA_IID_SNAPSHOT;
       
   374             break;
       
   375         case 17:
       
   376             id = XA_IID_METADATAEXTRACTION;
       
   377             break;
       
   378         case 18:
       
   379             id = XA_IID_METADATAINSERTION;
       
   380             break;
       
   381         case 19:
       
   382             id = XA_IID_METADATATRAVERSAL;
       
   383             break;
       
   384         case 20:
       
   385             id = XA_IID_DYNAMICSOURCE;
       
   386             break;
       
   387         case 21:
       
   388             id = XA_IID_CAMERACAPABILITIES;
       
   389             break;
       
   390         case 22:
       
   391             id = XA_IID_CAMERA;
       
   392             break;
       
   393         case 23:
       
   394             id = XA_IID_AUDIOIODEVICECAPABILITIES;
       
   395             break;
       
   396         case 24:
       
   397             id = XA_IID_DEVICEVOLUME;
       
   398             break;
       
   399         case 25:
       
   400             id = XA_IID_EQUALIZER;
       
   401             break;
       
   402         case 26:
       
   403             id = XA_IID_OUTPUTMIX;
       
   404             break;
       
   405         case 27:
       
   406             id = XA_IID_RADIO;
       
   407             break;
       
   408         case 28:
       
   409             id = XA_IID_RDS;
       
   410             break;
       
   411         case 29:
       
   412             id = XA_IID_VIBRA;
       
   413             break;
       
   414         case 30:
       
   415             id = XA_IID_LED;
       
   416             break;
       
   417         case 31:
       
   418             id = XA_IID_AUDIODECODERCAPABILITIES;
       
   419             break;
       
   420         case 32:
       
   421             id = XA_IID_AUDIOENCODER;
       
   422             break;
       
   423         case 33:
       
   424             id = XA_IID_AUDIOENCODERCAPABILITIES;
       
   425             break;
       
   426         case 34:
       
   427             id = XA_IID_IMAGEENCODERCAPABILITIES;
       
   428             break;
       
   429         case 35:
       
   430             id = XA_IID_IMAGEDECODERCAPABILITIES;
       
   431             break;
       
   432         case 36:
       
   433             id = XA_IID_IMAGEENCODER;
       
   434             break;
       
   435         case 37:
       
   436             id = XA_IID_VIDEODECODERCAPABILITIES;
       
   437             break;
       
   438         case 38:
       
   439             id = XA_IID_VIDEOENCODER;
       
   440             break;
       
   441         case 39:
       
   442             id = XA_IID_VIDEOENCODERCAPABILITIES;
       
   443             break;
       
   444         case 40:
       
   445             id = XA_IID_STREAMINFORMATION;
       
   446             break;
       
   447         default:
       
   448             break;
       
   449         }
       
   450     return id;
       
   451     }
       
   452 
       
   453 XAObjectItf COpenMAXALTestModule::GetObject(TInt object)
       
   454     {
       
   455     XAObjectItf itf;
       
   456     switch(object)
       
   457         {
       
   458         case XA_OBJECTID_ENGINE:
       
   459             itf = m_EOEngine;
       
   460             break;
       
   461         case XA_OBJECTID_LEDDEVICE:
       
   462             itf = m_MOLEDObject;
       
   463             break;
       
   464         case XA_OBJECTID_VIBRADEVICE:
       
   465             itf = m_MOVibraObject;
       
   466             break;           
       
   467         case XA_OBJECTID_MEDIAPLAYER:
       
   468             itf = m_MOPlayer;
       
   469             break;           
       
   470         case XA_OBJECTID_MEDIARECORDER:
       
   471             itf = m_MORecorder;
       
   472             break;
       
   473         case XA_OBJECTID_RADIODEVICE:
       
   474             itf = m_MORadioObject;
       
   475             break;
       
   476         case XA_OBJECTID_OUTPUTMIX:
       
   477             itf = m_MOOutputMix;
       
   478             break;
       
   479         case XA_OBJECTID_METADATAEXTRACTOR:
       
   480             itf = m_MOMetadataExtractor;
       
   481             break;
       
   482         case XA_OBJECTID_CAMERADEVICE:
       
   483             itf = m_MOCameraObject;
       
   484             break;
       
   485         case 10:
       
   486             /*Extension Object Defined own id as 10*/
       
   487             itf = m_MOExtnObject;
       
   488             break;
       
   489         default:
       
   490             itf = NULL;
       
   491             break;
       
   492         }
       
   493     return itf;
       
   494     }
       
   495 
       
   496 TInt COpenMAXALTestModule::StoreInterface(TInt interface, void* id)
       
   497     {
       
   498     TInt status(KErrNone);
       
   499     switch(interface)
       
   500         {
       
   501         case 1:
       
   502 /*            XA_IID_NULL;*/
       
   503             break;
       
   504         case 2:
       
   505 /*            XA_IID_OBJECT;*/
       
   506             break;
       
   507         case 3:
       
   508 /*            XA_IID_CONFIGEXTENSION;*/
       
   509             break;
       
   510         case 4:
       
   511             m_DIMItf = XADynamicInterfaceManagementItf(id);
       
   512 /*            XA_IID_DYNAMICINTERFACEMANAGEMENT;*/
       
   513             break;
       
   514         case 5:
       
   515             m_EngineItf = XAEngineItf(id);
       
   516             break;
       
   517         case 6:
       
   518 /*            XA_IID_THREADSYNC;*/
       
   519             break;
       
   520         case 7:
       
   521 /*            XA_IID_PLAY;*/
       
   522             break;
       
   523         case 8:
       
   524 /*            XA_IID_PLAYBACKRATE;*/
       
   525             break;
       
   526         case 9:
       
   527 /*            XA_IID_PREFETCHSTATUS;*/
       
   528             break;
       
   529         case 10:
       
   530 /*            XA_IID_SEEK;*/
       
   531             break;
       
   532         case 11:
       
   533 /*            XA_IID_VOLUME;*/
       
   534             break;
       
   535         case 12:
       
   536 /*            XA_IID_IMAGECONTROLS;*/
       
   537             break;
       
   538         case 13:
       
   539 /*            XA_IID_IMAGEEFFECTS;*/
       
   540             break;
       
   541         case 14:
       
   542 /*            XA_IID_VIDEOPOSTPROCESSING;*/
       
   543             break;
       
   544         case 15:
       
   545             m_RecordItf = XARecordItf(id);
       
   546             break;
       
   547         case 16:
       
   548 /*            XA_IID_SNAPSHOT;*/
       
   549             break;
       
   550         case 17:
       
   551 /*            XA_IID_METADATAEXTRACTION;*/
       
   552             break;
       
   553         case 18:
       
   554             m_MetadataInsertionItf = XAMetadataInsertionItf(id);
       
   555 /*            XA_IID_METADATAINSERTION;*/
       
   556             break;
       
   557         case 19:
       
   558 /*            XA_IID_METADATATRAVERSAL;*/
       
   559             break;
       
   560         case 20:
       
   561 /*            XA_IID_DYNAMICSOURCE;*/
       
   562             break;
       
   563         case 21:
       
   564 /*            XA_IID_CAMERACAPABILITIES;*/
       
   565             break;
       
   566         case 22:
       
   567 /*            XA_IID_CAMERA;*/
       
   568             break;
       
   569         case 23:
       
   570             m_AIODevCapItf = XAAudioIODeviceCapabilitiesItf(id);
       
   571 /*            XA_IID_AUDIOIODEVICECAPABILITIES;*/
       
   572             break;
       
   573         case 24:
       
   574 /*            XA_IID_DEVICEVOLUME;*/
       
   575             break;
       
   576         case 25:
       
   577 /*            XA_IID_EQUALIZER;*/
       
   578             break;
       
   579         case 26:
       
   580 /*            XA_IID_OUTPUTMIX;*/
       
   581             break;
       
   582         case 27:
       
   583 /*            XA_IID_RADIO;*/
       
   584             break;
       
   585         case 28:
       
   586 /*            XA_IID_RDS;*/
       
   587             break;
       
   588         case 29:
       
   589 /*            XA_IID_VIBRA;*/
       
   590             break;
       
   591         case 30:
       
   592 /*            XA_IID_LED;*/
       
   593             break;
       
   594         case 31:
       
   595 /*            XA_IID_AUDIODECODERCAPABILITIES;*/
       
   596             break;
       
   597         case 32:
       
   598             m_AudEncItf = XAAudioEncoderItf(id);
       
   599 /*            XA_IID_AUDIOENCODER;*/
       
   600             break;
       
   601         case 33:
       
   602             m_AEncCapItf = XAAudioEncoderCapabilitiesItf(id);
       
   603 /*            XA_IID_AUDIOENCODERCAPABILITIES;*/
       
   604             break;
       
   605         case 34:
       
   606 /*            XA_IID_IMAGEENCODERCAPABILITIES;*/
       
   607             break;
       
   608         case 35:
       
   609 /*            XA_IID_IMAGEDECODERCAPABILITIES;*/
       
   610             break;
       
   611         case 36:
       
   612 /*            XA_IID_IMAGEENCODER;*/
       
   613             break;
       
   614         case 37:
       
   615 /*            XA_IID_VIDEODECODERCAPABILITIES;*/
       
   616             break;
       
   617         case 38:
       
   618 /*            XA_IID_VIDEOENCODER;*/
       
   619             break;
       
   620         case 39:
       
   621 /*            XA_IID_VIDEOENCODERCAPABILITIES;*/
       
   622             break;
       
   623         case 40:
       
   624 /*            XA_IID_STREAMINFORMATION;*/
       
   625             break;
       
   626         default:
       
   627             break;
       
   628             
       
   629         }
       
   630     return status;
       
   631     }
       
   632 
       
   633 
       
   634 // -----------------------------------------------------------------------------
       
   635 // COpenMAXALTestModule::?member_function
       
   636 // ?implementation_description
       
   637 // (other items were commented in a header).
       
   638 // -----------------------------------------------------------------------------
       
   639 //
       
   640 /*
       
   641 TInt COpenMAXALTestModule::?member_function(
       
   642    CItemParser& aItem )
       
   643    {
       
   644 
       
   645    ?code
       
   646 
       
   647    }
       
   648 */
       
   649 
       
   650 // ========================== OTHER EXPORTED FUNCTIONS =========================
       
   651 // None
       
   652 
       
   653 //  [End of File] - Do not remove