Game Accessibility Library logo SourceForge.net Logo
Game Accessibility Suite: CAT/CATOpenALIntercept.h Source File

CATOpenALIntercept.h

Go to the documentation of this file.
00001 /// \file  CATOpenALIntercept.h
00002 /// \brief OpenAL function interception
00003 /// \ingroup CAT
00004 ///
00005 /// Copyright (c) 2007-2008 by Michael Ellison.
00006 /// See COPYING.txt for the \ref gaslicense License (MIT License).
00007 ///
00008 // $Author: mikeellison $
00009 // $Date: 2008-01-12 11:38:12 -0600 (Sat, 12 Jan 2008) $
00010 // $Revision:   $
00011 // $NoKeywords: $
00012 
00013 #ifndef _CATOpenALIntercept_H_
00014 #define _CATOpenALIntercept_H_
00015 
00016 #include "CATIntercept.h"
00017 #ifdef CAT_CONFIG_WIN32
00018 
00019 /// \class CATOpenALIntercept
00020 /// \brief OpenAL function interception
00021 /// \ingroup CAT
00022 class CATOpenALIntercept : public CATIntercept
00023 {
00024     public:
00025         CATOpenALIntercept();
00026         virtual ~CATOpenALIntercept();
00027 
00028         CATResult HookFunctions();
00029 
00030         // Hooked functions:
00031 
00032 
00033         static  void OnALSourcePlay(     CATHOOK*                     hookInst,
00034                                          CATUInt32                    sourceId);
00035         
00036         static  void OnALSourcePlayV(    CATHOOK*   hookInst,
00037                                          CATInt32   numSources,
00038                                          CATUInt32* sourceIds);
00039         
00040         static  void OnALSourceStop(     CATHOOK* hookInst,
00041                                          CATUInt32 sourceId);
00042 
00043         static  void OnALSourceStopV(    CATHOOK*   hookInst,
00044                                          CATInt32   numSources,
00045                                          CATUInt32* sourceIds);
00046         
00047         static  void OnALQueueBuffers(   CATHOOK*     hookInst,
00048                                          CATUInt32    sourceId,
00049                                          CATInt32     numEntries,
00050                                          CATUInt32*   bufferIds);
00051        
00052         static void OnALBufferData(       CATHOOK*     hookInst,
00053                                          CATUInt32    bufferId,
00054                                          CATUInt32    format,
00055                                          void*        data,
00056                                          CATInt32     size,
00057                                          CATInt32     frequency);
00058 
00059     protected:        
00060         HMODULE                     fOpenALDLL;
00061 };
00062 
00063 #endif // CAT_CONFIG_WIN32
00064 #endif // _CATOpenALIntercept_H_

Generated on Mon Feb 11 04:09:45 2008 for Game Accessibility Suite by doxygen 1.5.4