Version Wwise

include/AK/Plugin/AllPluginsRegistrationHelpers.h

Go to the documentation of this file.
00001 
00002 //
00003 // Copyright (c) 2006 Audiokinetic Inc. / All Rights Reserved
00004 //
00006 
00007 #ifndef _AK_ALLPLUGINSREGISTRATIONHELPERS_H_
00008 #define _AK_ALLPLUGINSREGISTRATIONHELPERS_H_
00009 
00010 #include <AK/Plugin/AllPluginsFactories.h>
00011 #if defined AK_MOTION
00012 #include <AK/MotionEngine/Common/AkMotionEngine.h>
00013 #endif
00014 
00015 
00016 namespace AK
00017 {
00018     namespace SoundEngine
00019     {
00020 
00021         #if !defined (AK_WII_FAMILY_HW) && !defined(AK_3DS) && !defined (AK_VITA_HW)
00022             #define AK_SOFTWARE_EFFECT_PLATFORM
00023         #endif
00024 
00026         #define AK_CHECK_ERROR( __FUNCCALL__ )  \
00027         {                                           \
00028             AKRESULT eResult = (__FUNCCALL__);      \
00029             if ( eResult != AK_Success )            \
00030                 eFinal = eResult;                   \
00031         }
00032 
00035         static AKRESULT RegisterAllEffectPlugins()
00036         {
00037             AKRESULT eFinal = AK_Success;
00038 #if defined(AK_SOFTWARE_EFFECT_PLATFORM)
00039 
00040             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00041                 AkPluginTypeEffect, 
00042                 AKCOMPANYID_AUDIOKINETIC, 
00043                 AKEFFECTID_COMPRESSOR,
00044                 CreateCompressorFX,
00045                 CreateCompressorFXParams ) );
00046 
00047             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00048                 AkPluginTypeEffect, 
00049                 AKCOMPANYID_AUDIOKINETIC, 
00050                 AKEFFECTID_EXPANDER,
00051                 CreateExpanderFX,
00052                 CreateExpanderFXParams ) );
00053 
00054             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00055                 AkPluginTypeEffect, 
00056                 AKCOMPANYID_AUDIOKINETIC, 
00057                 AKEFFECTID_PEAKLIMITER,
00058                 CreatePeakLimiterFX,
00059                 CreatePeakLimiterFXParams ) );
00060 
00061             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00062                 AkPluginTypeEffect, 
00063                 AKCOMPANYID_AUDIOKINETIC, 
00064                 AKEFFECTID_MATRIXREVERB,
00065                 CreateMatrixReverbFX,
00066                 CreateMatrixReverbFXParams ) );
00067 
00068             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00069                 AkPluginTypeEffect, 
00070                 AKCOMPANYID_AUDIOKINETIC, 
00071                 AKEFFECTID_ROOMVERB,
00072                 CreateRoomVerbFX,
00073                 CreateRoomVerbFXParams ) );
00074 
00075             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00076                 AkPluginTypeEffect, 
00077                 AKCOMPANYID_AUDIOKINETIC, 
00078                 AKEFFECTID_DELAY,
00079                 CreateDelayFX,
00080                 CreateDelayFXParams ) );
00081 
00082             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00083                 AkPluginTypeEffect, 
00084                 AKCOMPANYID_AUDIOKINETIC, 
00085                 AKEFFECTID_FLANGER,
00086                 CreateFlangerFX,
00087                 CreateFlangerFXParams ) );
00088 
00089             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00090                 AkPluginTypeEffect, 
00091                 AKCOMPANYID_AUDIOKINETIC, 
00092                 AKEFFECTID_TREMOLO,
00093                 CreateTremoloFX,
00094                 CreateTremoloFXParams ) );
00095 
00096             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00097                 AkPluginTypeEffect, 
00098                 AKCOMPANYID_AUDIOKINETIC, 
00099                 AKEFFECTID_GUITARDISTORTION,
00100                 CreateGuitarDistortionFX,
00101                 CreateGuitarDistortionFXParams ) );
00102 
00103             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00104                 AkPluginTypeEffect, 
00105                 AKCOMPANYID_AUDIOKINETIC, 
00106                 AKEFFECTID_PARAMETRICEQ,
00107                 CreateParametricEQFX,
00108                 CreateParametricEQFXParams ) );
00109 
00110             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00111                 AkPluginTypeEffect, 
00112                 AKCOMPANYID_AUDIOKINETIC, 
00113                 AKEFFECTID_METER,
00114                 CreateMeterFX,
00115                 CreateMeterFXParams ) );
00116 
00117             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00118                 AkPluginTypeEffect, 
00119                 AKCOMPANYID_AUDIOKINETIC, 
00120                 AKEFFECTID_STEREODELAY,
00121                 CreateStereoDelayFX,
00122                 CreateStereoDelayFXParams ) );
00123 
00124             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00125                 AkPluginTypeEffect, 
00126                 AKCOMPANYID_AUDIOKINETIC, 
00127                 AKEFFECTID_PITCHSHIFTER,
00128                 CreatePitchShifterFX,
00129                 CreatePitchShifterFXParams ) );
00130 
00131             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00132                 AkPluginTypeEffect, 
00133                 AKCOMPANYID_AUDIOKINETIC, 
00134                 AKEFFECTID_TIMESTRETCH,
00135                 CreateTimeStretchFX,
00136                 CreateTimeStretchFXParams ) );
00137             
00138             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00139                 AkPluginTypeEffect, 
00140                 AKCOMPANYID_AUDIOKINETIC, 
00141                 AKEFFECTID_HARMONIZER,
00142                 CreateHarmonizerFX,
00143                 CreateHarmonizerFXParams ) );
00144 
00145             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00146                 AkPluginTypeEffect, 
00147                 AKCOMPANYID_AUDIOKINETIC, 
00148                 AKEFFECTID_GAIN,
00149                 CreateGainFX,
00150                 CreateGainFXParams ) );
00151 
00152 #elif defined(AK_WII_FAMILY)
00153 
00154             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00155                 AkPluginTypeEffect, 
00156                 AKCOMPANYID_AUDIOKINETIC, 
00157                 AKEFFECTID_WII_STANDARD_REVERB,
00158                 CreateWiiReverbStd,
00159                 CreateWiiReverbStdFXParams ) );
00160 
00161             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00162                 AkPluginTypeEffect, 
00163                 AKCOMPANYID_AUDIOKINETIC, 
00164                 AKEFFECTID_WII_HIGH_QUALITY_REVERB,
00165                 CreateWiiReverbHi,
00166                 CreateWiiReverbHiFXParams ) );
00167 
00168             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00169                 AkPluginTypeEffect, 
00170                 AKCOMPANYID_AUDIOKINETIC, 
00171                 AKEFFECTID_WII_CHORUS,
00172                 CreateWiiChorus,
00173                 CreateWiiChorusFXParams ) );
00174 
00175             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00176                 AkPluginTypeEffect, 
00177                 AKCOMPANYID_AUDIOKINETIC, 
00178                 AKEFFECTID_WII_DELAY,
00179                 CreateWiiDelay,
00180                 CreateWiiDelayFXParams ) );
00181 
00182 #elif defined(AK_3DS)
00183 
00184             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00185                 AkPluginTypeEffect, 
00186                 AKCOMPANYID_AUDIOKINETIC, 
00187                 AKEFFECTID_3DS_REVERB,
00188                 Create3DSReverb,
00189                 Create3DSReverbFXParams ) );
00190 
00191             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00192                 AkPluginTypeEffect, 
00193                 AKCOMPANYID_AUDIOKINETIC, 
00194                 AKEFFECTID_3DS_DELAY,
00195                 Create3DSDelay,
00196                 Create3DSDelayFXParams ) );
00197 #endif
00198 
00199 #if defined(AK_VITA_HW)
00200             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin(
00201                 AkPluginTypeEffect, 
00202                 AKCOMPANYID_AUDIOKINETIC, 
00203                 AKEFFECTID_VITA_REVERB,
00204                 CreateVitaReverbFX,
00205                 CreateVitaReverbFXParams ) );
00206 
00207             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00208                 AkPluginTypeEffect, 
00209                 AKCOMPANYID_AUDIOKINETIC, 
00210                 AKEFFECTID_VITA_COMPRESSOR,
00211                 CreateVitaCompressorFX,
00212                 CreateVitaCompressorFXParams ) );
00213 
00214             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00215                 AkPluginTypeEffect, 
00216                 AKCOMPANYID_AUDIOKINETIC, 
00217                 AKEFFECTID_VITA_DELAY,
00218                 CreateVitaDelayFX,
00219                 CreateVitaDelayFXParams ) );
00220 
00221             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00222                 AkPluginTypeEffect, 
00223                 AKCOMPANYID_AUDIOKINETIC, 
00224                 AKEFFECTID_VITA_DISTORTION,
00225                 CreateVitaDistortionFX,
00226                 CreateVitaDistortionFXParams ) );
00227 
00228             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00229                 AkPluginTypeEffect, 
00230                 AKCOMPANYID_AUDIOKINETIC, 
00231                 AKEFFECTID_VITA_EQ,
00232                 CreateVitaEQFX,
00233                 CreateVitaEQFXParams ) );
00234 #endif
00235 
00236 #if defined(AK_PS4)
00237             // SCE Audio 3D
00238             AK::SoundEngine::RegisterPlugin( AkPluginTypeMixer, 
00239                                              AKCOMPANYID_AUDIOKINETIC, 
00240                                              AKEFFECTID_SCE_AUDIO3D,
00241                                              CreateSceAudio3dMixer,
00242                                              CreateSceAudio3dMixerParams );
00243 
00244             AK::SoundEngine::RegisterPlugin( AkPluginTypeEffect, 
00245                                              AKCOMPANYID_AUDIOKINETIC, 
00246                                              AKEFFECTID_SCE_AUDIO3D_ATTACHMENT, 
00247                                              NULL, 
00248                                              CreateSceAudio3dAttachment );
00249 
00250             AK::SoundEngine::RegisterPlugin( AkPluginTypeEffect, 
00251                                              AKCOMPANYID_AUDIOKINETIC, 
00252                                              AKEFFECTID_SCE_AUDIO3D_SINK_EFFECT, 
00253                                              CreateSceAudio3dSinkEffect, 
00254                                              CreateSceAudio3dSinkEffectParams );
00255 
00256 #endif
00257 
00258             return eFinal;
00259         }
00260 
00263         static AKRESULT RegisterAllSourcePlugins()
00264         {
00265             AKRESULT eFinal = AK_Success;
00266             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00267                 AkPluginTypeSource, 
00268                 AKCOMPANYID_AUDIOKINETIC, 
00269                 AKSOURCEID_SILENCE,
00270                 CreateSilenceSource,
00271                 CreateSilenceSourceParams ) );
00272 
00273             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00274                 AkPluginTypeSource, 
00275                 AKCOMPANYID_AUDIOKINETIC, 
00276                 AKSOURCEID_SINE,
00277                 CreateSineSource,
00278                 CreateSineSourceParams ) );
00279 
00280             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00281                 AkPluginTypeSource, 
00282                 AKCOMPANYID_AUDIOKINETIC, 
00283                 AKSOURCEID_TONE,
00284                 CreateToneSource,
00285                 CreateToneSourceParams ) );
00286 
00287 #if defined( AK_WIN ) && !defined( AK_USE_METRO_API )
00288             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00289                 AkPluginTypeSource, 
00290                 AKCOMPANYID_AUDIOKINETIC, 
00291                 AKSOURCEID_MP3,
00292                 CreateMP3Source,
00293                 CreateMP3SourceParams ) );
00294 #endif
00295 
00296 #if !defined( AK_VITA ) && !defined( AK_3DS )
00297             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin(
00298                 AkPluginTypeSource,
00299                 AKCOMPANYID_AUDIOKINETIC,
00300                 AKSOURCEID_AUDIOINPUT,
00301                 CreateAudioInputSource,
00302                 CreateAudioInputSourceParams ) );
00303 #endif
00304 
00305             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00306                 AkPluginTypeSource, 
00307                 AKCOMPANYID_AUDIOKINETIC, 
00308                 AKSOURCEID_SYNTHONE,
00309                 CreateSynthOne,
00310                 CreateSynthOneParams ) );
00311 
00312             return eFinal;
00313         }
00314 
00317         static AKRESULT RegisterConvolutionReverbPlugin()
00318         {
00319             AKRESULT eFinal = AK_Success;
00320 #ifdef AK_SOFTWARE_EFFECT_PLATFORM
00321         AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00322                 AkPluginTypeEffect, 
00323                 AKCOMPANYID_AUDIOKINETIC, 
00324                 AKEFFECTID_CONVOLUTIONREVERB,
00325                 CreateConvolutionReverbFX,
00326                 CreateConvolutionReverbFXParams ) );
00327 #endif
00328             return eFinal;
00329         }
00330 
00333         static AKRESULT RegisterMcDSPPlugins()
00334         {
00335             AKRESULT eFinal = AK_Success;
00336 #ifdef AK_SOFTWARE_EFFECT_PLATFORM
00337             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00338                 AkPluginTypeEffect, 
00339                 AKCOMPANYID_MCDSP, 
00340                 AKEFFECTID_MCDSPFUTZBOX,
00341                 CreateMcDSPFutzBoxFX,
00342                 CreateMcDSPFutzBoxFXParams ) );
00343 
00344             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00345                 AkPluginTypeEffect, 
00346                 AKCOMPANYID_MCDSP, 
00347                 AKEFFECTID_MCDSPML1,
00348                 CreateMcDSPML1FX,
00349                 CreateMcDSPML1FXParams ) );
00350 #endif
00351 
00352             return eFinal;
00353         }
00354 
00357         static AKRESULT RegisteriZotopePlugins()
00358         {
00359             AKRESULT eFinal = AK_Success;
00360 #if ( defined( AK_WIN ) && (!defined( AK_USE_METRO_API ) || _MSC_VER >= 1900)) || defined( AK_XBOX360 ) || defined( AK_PS3 ) || defined( AK_XBOXONE ) || defined( AK_PS4 )
00361             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00362                 AkPluginTypeEffect, 
00363                 AKCOMPANYID_IZOTOPE, 
00364                 IZEFFECTID_TRASHMULTIBANDDISTORTION,
00365                 CreateTrashMultibandDistortionFX,
00366                 CreateTrashMultibandDistortionFXParams ) );
00367 
00368             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00369                 AkPluginTypeEffect, 
00370                 AKCOMPANYID_IZOTOPE, 
00371                 IZEFFECTID_TRASHDISTORTION,
00372                 CreateTrashDistortionFX,
00373                 CreateTrashDistortionFXParams ) );
00374 
00375             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00376                 AkPluginTypeEffect, 
00377                 AKCOMPANYID_IZOTOPE, 
00378                 IZEFFECTID_TRASHFILTERS,
00379                 CreateTrashFiltersFX,
00380                 CreateTrashFiltersFXParams ) );
00381 
00382             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00383                 AkPluginTypeEffect, 
00384                 AKCOMPANYID_IZOTOPE, 
00385                 IZEFFECTID_TRASHDYNAMICS,
00386                 CreateTrashDynamicsFX,
00387                 CreateTrashDynamicsFXParams ) );
00388 
00389             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00390                 AkPluginTypeEffect, 
00391                 AKCOMPANYID_IZOTOPE, 
00392                 IZEFFECTID_TRASHDELAY,
00393                 CreateTrashDelayFX,
00394                 CreateTrashDelayFXParams ) );
00395 
00396             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00397                 AkPluginTypeEffect, 
00398                 AKCOMPANYID_IZOTOPE, 
00399                 IZEFFECTID_TRASHBOXMODELER,
00400                 CreateTrashBoxModelerFX,
00401                 CreateTrashBoxModelerFXParams ) );
00402 #endif
00403 #if ( defined( AK_WIN ) && (!defined( AK_USE_METRO_API ) || _MSC_VER >= 1900) ) || defined( AK_XBOX360 ) || defined( AK_XBOXONE ) || defined( AK_PS4 )
00404 
00405             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00406                 AkPluginTypeEffect, 
00407                 AKCOMPANYID_IZOTOPE, 
00408                 IZEFFECTID_HYBRIDREVERB,
00409                 CreateHybridReverbFX,
00410                 CreateHybridReverbFXParams ) );
00411 #endif
00412 
00413             return eFinal;
00414         }
00415 
00416         static AKRESULT RegisterCrankcaseAudioPlugins()
00417         {
00418             AKRESULT eFinal = AK_Success;
00419 
00420 #if ( defined( AK_WIN ) && (!defined( AK_USE_METRO_API ) || _MSC_VER >= 1900) ) || defined( AK_PS4 ) || defined( AK_XBOXONE ) || defined( AK_XBOX360 )
00421 
00422             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00423                 AkPluginTypeSource,
00424                 AKCOMPANYID_CRANKCASEAUDIO,
00425                 AKSOURCEID_REV_MODEL_PLAYER,
00426                 CreateREVModelPlayerSource,
00427                 CreateREVModelPlayerSourceParams ) );
00428 #endif
00429             return eFinal;
00430         }
00431 
00434         static AKRESULT RegisterSoundSeedPlugins()
00435         {
00436             AKRESULT eFinal = AK_Success;
00437 #ifdef AK_SOFTWARE_EFFECT_PLATFORM
00438             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00439                 AkPluginTypeEffect, 
00440                 AKCOMPANYID_AUDIOKINETIC, 
00441                 AKEFFECTID_SOUNDSEEDIMPACT,
00442                 CreateAkSoundSeedImpactFX,
00443                 CreateAkSoundSeedImpactFXParams ) );
00444 #endif
00445 
00446 #ifndef AK_3DS
00447             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00448                 AkPluginTypeSource, 
00449                 AKCOMPANYID_AUDIOKINETIC, 
00450                 AKSOURCEID_SOUNDSEEDWIND,
00451                 CreateSoundSeedWind,
00452                 CreateSoundSeedWindParams ) );
00453 
00454             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00455                 AkPluginTypeSource, 
00456                 AKCOMPANYID_AUDIOKINETIC, 
00457                 AKSOURCEID_SOUNDSEEDWOOSH,
00458                 CreateSoundSeedWoosh,
00459                 CreateSoundSeedWooshParams ) );
00460 #endif
00461 
00462             return eFinal;
00463         }
00464 
00465         static AKRESULT RegisterIOSONOPlugins()
00466         {
00467             AKRESULT eFinal = AK_Success;
00468 
00469             // IOSONO Proximity
00470 #if (defined(AK_WIN) && !defined(AK_USE_METRO_API)) || defined(AK_XBOXONE) || defined(AK_PS4)
00471             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00472                 AkPluginTypeMixer, 
00473                 AKCOMPANYID_IOSONO, 
00474                 IOSONOEFFECTID_PROXIMITY,
00475                 CreateIOSONOProximityMixer,
00476                 CreateIOSONOProximityMixerParams ) );
00477 
00478             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00479                 AkPluginTypeEffect, 
00480                 AKCOMPANYID_IOSONO,
00481                 IOSONOEFFECTID_PROXIMITY_ATTACHMENT, 
00482                 NULL,
00483                 CreateIOSONOProximityAttachmentParams ) );
00484 #endif
00485             return eFinal;
00486         }
00487 
00488         static AKRESULT RegisterAuroPlugins()
00489         {
00490             AKRESULT eFinal = AK_Success;
00491 
00492 #if (defined(AK_WIN) && !defined(AK_USE_METRO_API)) || defined(AK_PS4) || defined(AK_XBOXONE)
00493             // Auro Headphone
00494             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00495                 AkPluginTypeEffect, 
00496                 AKCOMPANYID_AUROTECHNOLOGIES, 
00497                 AKEFFECTID_AUROHEADPHONE,
00498                 CreateAuroHeadphoneFX,
00499                 CreateAuroHeadphoneFXParams ) );
00500             
00501             // Auro Panner
00502             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00503                 AkPluginTypeMixer, 
00504                 AKCOMPANYID_AUROTECHNOLOGIES, 
00505                 AKEFFECTID_AUROPANNER,
00506                 CreateAuroPannerMixer,
00507                 CreateAuroPannerMixerParams ) );
00508             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00509                 AkPluginTypeEffect, 
00510                 AKCOMPANYID_AUROTECHNOLOGIES,
00511                 AKEFFECTID_AUROPANNER_ATTACHMENT, 
00512                 NULL,
00513                 CreateAuroPannerMixerAttachmentParams ) );
00514 #endif
00515 
00516             return eFinal;
00517         }
00518 
00521         static AKRESULT RegisterAllCodecPlugins()
00522         {
00523             AKRESULT eFinal = AK_Success;
00524 #ifndef AK_3DS
00525             AK::SoundEngine::RegisterCodec(
00526                 AKCOMPANYID_AUDIOKINETIC,
00527                 AKCODECID_VORBIS,
00528                 CreateVorbisFilePlugin,
00529                 CreateVorbisBankPlugin );
00530 #endif
00531 
00532 #ifdef AK_XBOX360
00533             AK::SoundEngine::RegisterCodec(
00534                 AKCOMPANYID_AUDIOKINETIC,
00535                 AKCODECID_XWMA,
00536                 CreateXWMAFilePlugin,
00537                 CreateXWMABankPlugin );
00538 #endif
00539 
00540 #ifdef AK_APPLE
00541             AK::SoundEngine::RegisterCodec(
00542                 AKCOMPANYID_AUDIOKINETIC,
00543                 AKCODECID_AAC,
00544                 CreateAACFilePlugin,
00545                 CreateAACBankPlugin );
00546 #endif
00547 
00548 #ifdef AK_VITA
00549             AK::SoundEngine::RegisterCodec(
00550                 AKCOMPANYID_AUDIOKINETIC,
00551                 AKCODECID_ATRAC9,
00552                 CreateATRAC9FilePlugin,
00553                 CreateATRAC9BankPlugin );
00554 #endif
00555 
00556             return eFinal;
00557 
00558         }
00559 
00562         static AKRESULT RegisterAllRumblePlugins()
00563         {
00564             AKRESULT eFinal = AK_Success;
00565 #if defined AK_MOTION
00566 
00567             AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 
00568                 AkPluginTypeMotionSource,
00569                 AKCOMPANYID_AUDIOKINETIC,
00570                 AKSOURCEID_MOTIONGENERATOR,
00571                 AkCreateMotionGenerator,
00572                 AkCreateMotionGeneratorParams ) );
00573 
00574             AK::MotionEngine::RegisterMotionDevice( 
00575                 AKCOMPANYID_AUDIOKINETIC, 
00576                 AKMOTIONDEVICEID_RUMBLE,
00577                 AkCreateRumblePlugin );
00578 
00579 #endif
00580 
00581             return eFinal;
00582         }
00583 
00586         static AKRESULT RegisterAllBuiltInPlugins()
00587         {
00588             AKRESULT eFinal = AK_Success;
00589             AK_CHECK_ERROR( RegisterAllCodecPlugins() );
00590             AK_CHECK_ERROR( RegisterAllEffectPlugins() );
00591             AK_CHECK_ERROR( RegisterAllSourcePlugins() );
00592             AK_CHECK_ERROR( RegisterAllRumblePlugins() );
00593             return eFinal;
00594         }   
00595 
00598         static AKRESULT RegisterAllPlugins()
00599         {
00600             AKRESULT eFinal = AK_Success;
00601             // Built-in products
00602             AK_CHECK_ERROR( RegisterAllBuiltInPlugins() );
00603             // Products which require additional license
00604             AK_CHECK_ERROR( RegisterConvolutionReverbPlugin() );
00605             AK_CHECK_ERROR( RegisterSoundSeedPlugins() );
00606             AK_CHECK_ERROR( RegisterMcDSPPlugins() );
00607             AK_CHECK_ERROR( RegisteriZotopePlugins() );
00608             AK_CHECK_ERROR( RegisterCrankcaseAudioPlugins() );
00609             AK_CHECK_ERROR( RegisterIOSONOPlugins() )
00610             AK_CHECK_ERROR( RegisterAuroPlugins() )
00611             return eFinal;
00612         }
00613 
00614     } // SoundEngine
00615 } // AK
00616 
00617 #endif // _AK_ALLPLUGINSREGISTRATIONHELPERS_H_