Version
menu_open
link

include/AK/SoundEngine/Common/AkQueryParameters.h

Go to the documentation of this file.
00001 // Copyright (c) 2006 Audiokinetic Inc. / All Rights Reserved
00002 // AkQueryParameters.h
00003 
00006 
00007 
00008 #ifndef _AK_QUERYPARAMS_H_
00009 #define _AK_QUERYPARAMS_H_
00010 
00011 #include <AK/SoundEngine/Common/AkSoundEngineExport.h>
00012 #include <AK/SoundEngine/Common/AkTypes.h>
00013 #include <AK/SoundEngine/Common/AkCommonDefs.h>
00014 #include <AK/Tools/Common/AkArray.h>
00015 
00017 struct AkPositioningInfo
00018 {
00019     AkReal32            fCenterPct;         
00020     AkPannerType        pannerType;         
00021     AkPositionSourceType posSourceType;     
00022     bool                bUpdateEachFrame;   
00023     bool                bUseSpatialization; 
00024     bool                bUseAttenuation;    
00025 
00026     bool                bUseConeAttenuation; 
00027     AkReal32            fInnerAngle;        
00028     AkReal32            fOuterAngle;        
00029     AkReal32            fConeMaxAttenuation; 
00030     AkLPFType           LPFCone;            
00031     AkLPFType           HPFCone;            
00032 
00033     AkReal32            fMaxDistance;       
00034     AkReal32            fVolDryAtMaxDist;   
00035     AkReal32            fVolAuxGameDefAtMaxDist;    
00036     AkReal32            fVolAuxUserDefAtMaxDist;    
00037     AkLPFType           LPFValueAtMaxDist;  
00038     AkLPFType           HPFValueAtMaxDist;  
00039 };
00040 
00042 struct AkObjectInfo
00043 {
00044     AkUniqueID  objID;      
00045     AkUniqueID  parentID;   
00046     AkInt32     iDepth;     
00047 };
00048 
00049 // Audiokinetic namespace
00050 namespace AK
00051 {
00052     // Audiokinetic sound engine namespace
00053     namespace SoundEngine
00054     {
00065 
00066         namespace Query
00067         {
00070 
00071 
00076             AK_EXTERNAPIFUNC( AKRESULT, GetPosition )( 
00077                 AkGameObjectID in_GameObjectID,             
00078                 AkSoundPosition& out_rPosition              
00079                 );
00080 
00082 
00085 
00086 
00091             AK_EXTERNAPIFUNC( AKRESULT, GetActiveListeners )(
00092                 AkGameObjectID in_GameObjectID,             
00093                 AkUInt32& out_ruListenerMask                
00094                 );
00095 
00100             AK_EXTERNAPIFUNC( AKRESULT, GetListenerPosition )( 
00101                 AkUInt32 in_uIndex,                         
00102                 AkListenerPosition& out_rPosition           
00103                 );
00104 
00110             AK_EXTERNAPIFUNC( AKRESULT, GetListenerSpatialization )(
00111                 AkUInt32 in_uIndex,                         
00112                 bool& out_rbSpatialized,                    
00113                 AK::SpeakerVolumes::VectorPtr & out_pVolumeOffsets, 
00114                 AkChannelConfig &out_channelConfig          
00115                 );
00116             
00118 
00119 
00122 
00123 
00132             enum RTPCValue_type
00133             {
00134                 RTPCValue_Default,      
00135                 RTPCValue_Global,       
00136                 RTPCValue_GameObject,   
00137                 RTPCValue_Unavailable   
00138             };
00139 
00145             AK_EXTERNAPIFUNC( AKRESULT, GetRTPCValue )( 
00146                 AkRtpcID in_rtpcID,                 
00147                 AkGameObjectID in_gameObjectID,     
00148                 AkRtpcValue& out_rValue,            
00149                 RTPCValue_type& io_rValueType       
00150                 );
00151 
00152 #ifdef AK_SUPPORT_WCHAR
00153 
00154 
00155 
00156 
00157 
00158             AK_EXTERNAPIFUNC( AKRESULT, GetRTPCValue )( 
00159                 const wchar_t* in_pszRtpcName,      
00160                 AkGameObjectID in_gameObjectID,     
00161                 AkRtpcValue& out_rValue,            
00162                 RTPCValue_type& io_rValueType       
00163                 );
00164 #endif //AK_SUPPORT_WCHAR
00165 
00171             AK_EXTERNAPIFUNC( AKRESULT, GetRTPCValue )( 
00172                 const char* in_pszRtpcName,         
00173                 AkGameObjectID in_gameObjectID,     
00174                 AkRtpcValue& out_rValue,            
00175                 RTPCValue_type& io_rValueType       
00176                 );
00177 
00182             AK_EXTERNAPIFUNC( AKRESULT, GetSwitch )( 
00183                 AkSwitchGroupID in_switchGroup,             
00184                 AkGameObjectID  in_gameObjectID,            
00185                 AkSwitchStateID& out_rSwitchState           
00186                 );
00187 
00188 #ifdef AK_SUPPORT_WCHAR
00189 
00190 
00191 
00192 
00193             AK_EXTERNAPIFUNC( AKRESULT, GetSwitch )( 
00194                 const wchar_t* in_pstrSwitchGroupName,          
00195                 AkGameObjectID in_GameObj,                  
00196                 AkSwitchStateID& out_rSwitchState           
00197                 );
00198 #endif //AK_SUPPORT_WCHAR
00199 
00204             AK_EXTERNAPIFUNC( AKRESULT, GetSwitch )( 
00205                 const char* in_pstrSwitchGroupName,         
00206                 AkGameObjectID in_GameObj,                  
00207                 AkSwitchStateID& out_rSwitchState           
00208                 );
00209 
00214             AK_EXTERNAPIFUNC( AKRESULT, GetState )( 
00215                 AkStateGroupID in_stateGroup,               
00216                 AkStateID& out_rState                       
00217                 );
00218 
00219 #ifdef AK_SUPPORT_WCHAR
00220 
00221 
00222 
00223 
00224             AK_EXTERNAPIFUNC( AKRESULT, GetState )( 
00225                 const wchar_t* in_pstrStateGroupName,           
00226                 AkStateID& out_rState                       
00227                 );
00228 #endif //AK_SUPPORT_WCHAR
00229 
00234             AK_EXTERNAPIFUNC( AKRESULT, GetState )( 
00235                 const char* in_pstrStateGroupName,              
00236                 AkStateID& out_rState                       
00237                 );
00238 
00240 
00243 
00244 
00255             AK_EXTERNAPIFUNC( AKRESULT, GetGameObjectAuxSendValues )( 
00256                 AkGameObjectID      in_gameObjectID,        
00257                 AkAuxSendValue*     out_paAuxSendValues,    
00258 
00259 
00260                 AkUInt32&           io_ruNumSendValues      
00261 
00262                 );
00263 
00273             AK_EXTERNAPIFUNC( AKRESULT, GetGameObjectDryLevelValue )( 
00274                 AkGameObjectID      in_gameObjectID,        
00275                 AkReal32&           out_rfControlValue      
00276 
00277                 );
00278 
00284             AK_EXTERNAPIFUNC( AKRESULT, GetObjectObstructionAndOcclusion )(  
00285                 AkGameObjectID in_ObjectID,         
00286                 AkUInt32 in_uListener,              
00287                 AkReal32& out_rfObstructionLevel,       
00288                 AkReal32& out_rfOcclusionLevel          
00289                 );
00290 
00292 
00299             AK_EXTERNAPIFUNC( AKRESULT, QueryAudioObjectIDs )(
00300                 AkUniqueID in_eventID,              
00301                 AkUInt32& io_ruNumItems,            
00302                 AkObjectInfo* out_aObjectInfos      
00303                 );
00304 
00305 #ifdef AK_SUPPORT_WCHAR
00306 
00307 
00308 
00309 
00310 
00311 
00312             AK_EXTERNAPIFUNC( AKRESULT, QueryAudioObjectIDs )(
00313                 const wchar_t* in_pszEventName,     
00314                 AkUInt32& io_ruNumItems,            
00315                 AkObjectInfo* out_aObjectInfos      
00316                 );
00317 #endif //AK_SUPPORT_WCHAR
00318 
00325             AK_EXTERNAPIFUNC( AKRESULT, QueryAudioObjectIDs )(
00326                 const char* in_pszEventName,        
00327                 AkUInt32& io_ruNumItems,            
00328                 AkObjectInfo* out_aObjectInfos      
00329                 );
00330 
00333             AK_EXTERNAPIFUNC( AKRESULT, GetPositioningInfo )( 
00334                 AkUniqueID in_ObjectID,                     
00335                 AkPositioningInfo& out_rPositioningInfo     
00336                 );
00337 
00344             typedef AkArray<AkGameObjectID, AkGameObjectID, ArrayPoolDefault, 32> AkGameObjectsList;
00345 
00352             AK_EXTERNAPIFUNC( AKRESULT, GetActiveGameObjects )( 
00353                 AkGameObjectsList& io_GameObjectList    
00354                 );
00355 
00358             AK_EXTERNAPIFUNC( bool, GetIsGameObjectActive )( 
00359                 AkGameObjectID in_GameObjId 
00360                 );
00361 
00365             struct GameObjDst
00366             {
00368                 GameObjDst()
00369                     : m_gameObjID( AK_INVALID_GAME_OBJECT )
00370                     , m_dst( -1.0f )
00371                 {}
00372 
00374                 GameObjDst( AkGameObjectID in_gameObjID, AkReal32 in_dst )
00375                     : m_gameObjID( in_gameObjID )
00376                     , m_dst( in_dst )
00377                 {}
00378 
00379                 AkGameObjectID  m_gameObjID;    
00380                 AkReal32        m_dst;          
00381             };
00382 
00386             typedef AkArray<GameObjDst, const GameObjDst&, ArrayPoolDefault, 32> AkRadiusList;
00387 
00424             AK_EXTERNAPIFUNC( AKRESULT, GetMaxRadius )(
00425                 AkRadiusList & io_RadiusList    
00426                 );
00427 
00448             AK_EXTERNAPIFUNC( AkReal32, GetMaxRadius )(
00449                 AkGameObjectID in_GameObjId 
00450                 );
00451 
00456             AK_EXTERNAPIFUNC( AkUniqueID, GetEventIDFromPlayingID )(
00457                 AkPlayingID in_playingID 
00458                 );
00459 
00464             AK_EXTERNAPIFUNC( AkGameObjectID, GetGameObjectFromPlayingID )(
00465                 AkPlayingID in_playingID 
00466                 );
00467 
00474             AK_EXTERNAPIFUNC( AKRESULT, GetPlayingIDsFromGameObject )(
00475                 AkGameObjectID in_GameObjId,        
00476                 AkUInt32& io_ruNumIDs,              
00477                 AkPlayingID* out_aPlayingIDs        
00478                 );
00479 
00481             AK_EXTERNAPIFUNC( AKRESULT, GetCustomPropertyValue )(
00482                 AkUniqueID in_ObjectID,     
00483                 AkUInt32 in_uPropID,            
00484                 AkInt32& out_iValue             
00485                 );
00486 
00488             AK_EXTERNAPIFUNC( AKRESULT, GetCustomPropertyValue )(
00489                 AkUniqueID in_ObjectID,     
00490                 AkUInt32 in_uPropID,            
00491                 AkReal32& out_fValue            
00492                 );
00493 
00494         } //namespace Query
00495     } //namespace SoundEngine
00496 } //namespace AK
00497 
00498 #endif // _AK_QUERYPARAMS_H_

Was this page helpful?

Need Support?

Questions? Problems? Need more info? Contact us, and we can help!

Visit our Support page

Tell us about your project. We're here to help.

Register your project and we'll help you get started with no strings attached!

Get started with Wwise