Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members

clAudio3D Class Reference

3D audio engine More...

#include <Audio3D.hh>

List of all members.

Public Member Functions

 clAudio3D ()
 ~clAudio3D ()
void Initialize (long)
 Initialize.

void Uninitialize ()
 Uninitialize.

void SetAngles (int, int, GDT)
 Set sound direction.

void Process (GDT *)
 Process interleaved data.

void Process (GDT *, GDT *)
 Process noninterleaved data.

long GetWindowSize ()
 Get size of processing window.


Private Member Functions

void CopyToLocal (GDT *, const float *)
void HeadingElevN40 (int)
void HeadingElevN30 (int)
void HeadingElevN20 (int)
void HeadingElevN10 (int)
void HeadingElev0 (int)
void HeadingElev10 (int)
void HeadingElev20 (int)
void HeadingElev30 (int)
void HeadingElev40 (int)
void HeadingElev50 (int)
void HeadingElev60 (int)
void HeadingElev70 (int)
void HeadingElev80 (int)
void HeadingElev90 ()
void Prepare (bool)
void ProcessDistance (GDT *, GDT *, long)

Private Attributes

bool bInitialized
long lWindowSize
long lFFTSize
long lSpectSize
GDT fDistance
GDT fAmp
GDT * fpLeftFilt
GDT * fpRightFilt
GCDT * spLeftFilt
GCDT * spRightFilt
clAlloc LeftData
clAlloc RightData
clAlloc LeftFilt
clAlloc RightFilt
clAlloc CLeftFilt
clAlloc CRightFilt
clDSPOp DSP
clFilter FilterLeft
clFilter FilterRight


Detailed Description

3D audio engine

Definition at line 38 of file Audio3D.hh.


Constructor & Destructor Documentation

clAudio3D::clAudio3D  ) 
 

Definition at line 298 of file Audio3D.cc.

References bInitialized.

clAudio3D::~clAudio3D  ) 
 

Definition at line 304 of file Audio3D.cc.

References bInitialized, and Uninitialize().


Member Function Documentation

void clAudio3D::CopyToLocal GDT *  ,
const float * 
[private]
 

Definition at line 27 of file Audio3D.cc.

References GDT, and lFFTSize.

Referenced by HeadingElev0(), HeadingElev90(), and Initialize().

void clAudio3D::HeadingElevN40 int   )  [inline, private]
 

Definition at line 60 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElevN30 int   )  [inline, private]
 

Definition at line 61 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElevN20 int   )  [inline, private]
 

Definition at line 62 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElevN10 int   )  [inline, private]
 

Definition at line 63 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev0 int   )  [private]
 

Definition at line 42 of file Audio3D.cc.

References CopyToLocal(), fpLeftFilt, fpRightFilt, and Prepare().

Referenced by SetAngles().

void clAudio3D::HeadingElev10 int   )  [inline, private]
 

Definition at line 65 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev20 int   )  [inline, private]
 

Definition at line 66 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev30 int   )  [inline, private]
 

Definition at line 67 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev40 int   )  [inline, private]
 

Definition at line 68 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev50 int   )  [inline, private]
 

Definition at line 69 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev60 int   )  [inline, private]
 

Definition at line 70 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev70 int   )  [inline, private]
 

Definition at line 71 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev80 int   )  [inline, private]
 

Definition at line 72 of file Audio3D.hh.

Referenced by SetAngles().

void clAudio3D::HeadingElev90  )  [private]
 

Definition at line 238 of file Audio3D.cc.

References CopyToLocal(), fpLeftFilt, fpRightFilt, and Prepare().

Referenced by SetAngles().

void clAudio3D::Prepare bool   )  [private]
 

Definition at line 246 of file Audio3D.cc.

References DSP, fAmp, fpLeftFilt, fpRightFilt, GDT, lSpectSize, spLeftFilt, and spRightFilt.

Referenced by HeadingElev0(), HeadingElev90(), and Initialize().

void clAudio3D::ProcessDistance GDT *  ,
GDT *  ,
long 
[private]
 

Definition at line 283 of file Audio3D.cc.

References fDistance, and GDT.

Referenced by Process().

void clAudio3D::Initialize long   ) 
 

Initialize.

Note:
Reinitialization without Uninitialize() is allowed
Parameters:
lSize Size of window

Definition at line 310 of file Audio3D.cc.

References bInitialized, CLeftFilt, CopyToLocal(), CRightFilt, DSP, FilterLeft, FilterRight, fpLeftFilt, fpRightFilt, GCDT, GDT, LeftData, LeftFilt, lFFTSize, lSpectSize, lWindowSize, Prepare(), RightData, RightFilt, spLeftFilt, spRightFilt, and Uninitialize().

Referenced by clBeamAudioUI::AllocateBuffers().

void clAudio3D::Uninitialize  ) 
 

Uninitialize.

Definition at line 334 of file Audio3D.cc.

References bInitialized, DSP, FilterLeft, and FilterRight.

Referenced by Initialize(), and ~clAudio3D().

void clAudio3D::SetAngles int  ,
int  ,
GDT 
 

Set sound direction.

Note:
Heading and pitch in degrees, distance 0 - 1
Parameters:
iHeading Heading (deg)
iPitch Pitch (deg)
fDist Distance

Definition at line 343 of file Audio3D.cc.

References fDistance, HeadingElev0(), HeadingElev10(), HeadingElev20(), HeadingElev30(), HeadingElev40(), HeadingElev50(), HeadingElev60(), HeadingElev70(), HeadingElev80(), HeadingElev90(), HeadingElevN10(), HeadingElevN20(), HeadingElevN30(), and HeadingElevN40().

Referenced by clBeamAudioUI::OnGdkInput().

void clAudio3D::Process GDT *   ) 
 

Process interleaved data.

Parameters:
fpData New data

Definition at line 363 of file Audio3D.cc.

References DSP, fAmp, FilterLeft, FilterRight, GDT, LeftData, lWindowSize, ProcessDistance(), RightData, spLeftFilt, and spRightFilt.

Referenced by clBeamAudioUI::Process3D().

void clAudio3D::Process GDT *  ,
GDT * 
 

Process noninterleaved data.

Parameters:
fpLeftData Left channel data
fpRightData Right channel data

Definition at line 396 of file Audio3D.cc.

References DSP, fAmp, FilterLeft, FilterRight, lWindowSize, ProcessDistance(), spLeftFilt, and spRightFilt.

long clAudio3D::GetWindowSize  )  [inline]
 

Get size of processing window.

Returns:
Size of processing window

Definition at line 119 of file Audio3D.hh.

References lWindowSize.

Referenced by clBeamAudioUI::Process3D().


Member Data Documentation

bool clAudio3D::bInitialized [private]
 

Definition at line 40 of file Audio3D.hh.

Referenced by clAudio3D(), Initialize(), Uninitialize(), and ~clAudio3D().

long clAudio3D::lWindowSize [private]
 

Definition at line 41 of file Audio3D.hh.

Referenced by GetWindowSize(), Initialize(), and Process().

long clAudio3D::lFFTSize [private]
 

Definition at line 42 of file Audio3D.hh.

Referenced by CopyToLocal(), and Initialize().

long clAudio3D::lSpectSize [private]
 

Definition at line 43 of file Audio3D.hh.

Referenced by Initialize(), and Prepare().

GDT clAudio3D::fDistance [private]
 

Definition at line 44 of file Audio3D.hh.

Referenced by ProcessDistance(), and SetAngles().

GDT clAudio3D::fAmp [private]
 

Definition at line 45 of file Audio3D.hh.

Referenced by Prepare(), and Process().

GDT* clAudio3D::fpLeftFilt [private]
 

Definition at line 46 of file Audio3D.hh.

Referenced by HeadingElev0(), HeadingElev90(), Initialize(), and Prepare().

GDT* clAudio3D::fpRightFilt [private]
 

Definition at line 47 of file Audio3D.hh.

Referenced by HeadingElev0(), HeadingElev90(), Initialize(), and Prepare().

GCDT* clAudio3D::spLeftFilt [private]
 

Definition at line 48 of file Audio3D.hh.

Referenced by Initialize(), Prepare(), and Process().

GCDT* clAudio3D::spRightFilt [private]
 

Definition at line 49 of file Audio3D.hh.

Referenced by Initialize(), Prepare(), and Process().

clAlloc clAudio3D::LeftData [private]
 

Definition at line 50 of file Audio3D.hh.

Referenced by Initialize(), and Process().

clAlloc clAudio3D::RightData [private]
 

Definition at line 51 of file Audio3D.hh.

Referenced by Initialize(), and Process().

clAlloc clAudio3D::LeftFilt [private]
 

Definition at line 52 of file Audio3D.hh.

Referenced by Initialize().

clAlloc clAudio3D::RightFilt [private]
 

Definition at line 53 of file Audio3D.hh.

Referenced by Initialize().

clAlloc clAudio3D::CLeftFilt [private]
 

Definition at line 54 of file Audio3D.hh.

Referenced by Initialize().

clAlloc clAudio3D::CRightFilt [private]
 

Definition at line 55 of file Audio3D.hh.

Referenced by Initialize().

clDSPOp clAudio3D::DSP [private]
 

Definition at line 56 of file Audio3D.hh.

Referenced by Initialize(), Prepare(), Process(), and Uninitialize().

clFilter clAudio3D::FilterLeft [private]
 

Definition at line 57 of file Audio3D.hh.

Referenced by Initialize(), Process(), and Uninitialize().

clFilter clAudio3D::FilterRight [private]
 

Definition at line 58 of file Audio3D.hh.

Referenced by Initialize(), Process(), and Uninitialize().


The documentation for this class was generated from the following files:
Generated on Sun Oct 26 19:12:11 2003 for HASAS by doxygen 1.3.3