OGLMachineWinDxSound Class Reference
[VirtualMachine Related Documentations]

#include <OGLMachineWinDxSound.h>

Inherits OGLMachine.

List of all members.


Detailed Description

Defines a AzurVeda Machine for Windows systems, using OGLMachine and OpenGL for 3D rendering, and DirectSound for the sound server.

Definition at line 21 of file OGLMachineWinDxSound.h.

Public Types

enum  eVMResult { vmr_OK = 0, vmr_FAILED }
 error enum for InitMachine() More...
enum  InternalObject3DBuffer_InitBit { bOb3D_VertexNormal = 1, bOb3D_VertexUVMapping = 2, bOb3D_VertexRGBA = 4 }
 see VirtualMachine::NewObject3DBuffer() More...
enum  eMachineLocalization {
  eMachineLocalization_LocalisationNotImplemented = 0, eMachineLocalization_English, eMachineLocalization_French, eMachineLocalization_SpanishCastellano,
  eMachineLocalization_German, eMachineLocalization_Italian, eMachineLocalization_Polish, eMachineLocalization_Portuguese
}
 This enum spots a cultural langage. returned by GetCurrentWorldLocalizationEnum(). More...

Public Member Functions

 OGLMachineWinDxSound (void)
 Constructor.
virtual ~OGLMachineWinDxSound (void)
 Destructor.
virtual eVMResult InitMachine ()
 Init.
virtual void SwapMainScreenBuffer ()
 Swap buffer so that what was drawn is shown.
virtual void ProcessInterface ()
 Check the Process the message of the interface, in the real time:.
virtual void EnableMediaSound (SoundInterface *_pNoisyObject, bool _enable=true)
 Register a SoundInterface object that will then generate a mixed sound through SoundInterface::ProcessSoundInterupt() The sound will start instantly. if false, Unregister a media object previously registered with EnableMediaSound(). The sound stops instantly.
virtual void SetSoundCurrentTime (int _seconds, unsigned int _fraction)
 force a date to the clock passed to the sound objects.
virtual void GetCurrentSoundBufferImage (float **const _ppSoundBuffer, unsigned int *_pLength) const
 return an image of the current short sound buffer which is currently played. This is always a 2 float(stereo left,right) table. the play frequency of this sound signal is given by GetPlayFrequency() . The buffer size may vary in time and implementation, and this table is refresh on an undefined rate. It can be used by sound preview methods or live effects.
virtual void SetSoundVolume (float _newVolumeValue)
 tool: change main volume [0,1]. Yes, you can saturate when >1.
virtual float GetSoundVolume ()
 tool: get main volume value [0,1].
virtual float GetPlayFrequency ()
 Return the machine main play frequency, in herz, (tick per sec).
virtual eMachineLocalization GetCurrentWorldLocalizationEnum ()
 Return the language of the machine, as a simple enum. It can be used by exemple.
virtual bool FileRequester (const char *_pDisplayString, char *_pResultFileName, unsigned int _nameMaxLength)
 In edition mode, ask a file path to a file requester. the string format should vary, but will be compatible with LoadFile() and SaveFile().
virtual const char * LoadFile (const char *_pFilePath, unsigned int _pFileStart, unsigned int &_LoadByteLength, unsigned int _maximumSizeLoad=0xffffffff)
 load a file into a memory chunk. You can load all in one row, or stream. memory is to be deleted by the CALLER with operator: "delete [] pointer", for each succesfull call. return 0L if failed.
virtual bool SaveFile (const char *_pFilePath, const char *_chunkToWrite, unsigned int _ChunkLength, bool _append=false)
 write a file from a memory chunk. You can save all in one row, or stream.
virtual void Sleep (unsigned int _milliseconds)
 in edition mode, redirection of machine task wait.
virtual void NewObject3DBuffer (InternalObject3DBuffer **_ppVertexAndPolygonBufferOut, unsigned int _maxNbVertex, unsigned int _maxNbTriangle, unsigned int _extraMemberFlags)
 Ask the Creation of a new InternalObject3DBuffer you can then fill with InternalObject3DBuffer::GetFirstVertex() , InternalObject3DBuffer::GetFirstTriangle() and InternalObject3DBuffer::SetNumberOfActiveTriangle() . Then the object can be positionned with the matrix methods, and drawn with RenderMesh() The object shape can be dynamic and rebuilt, until a call to CompileAsStatic(). In edition mode, object has to be destroyed with DeleteObject3DBuffer().
virtual void NewObject3DBuffer (InternalObject3DBuffer **_ppVertexAndPolygonBufferOut, unsigned int _maxNbVertex, unsigned int _maxNbTriangle, unsigned int _extraMemberFlags)=0
 Ask the Creation of a new InternalObject3DBuffer you can then fill with InternalObject3DBuffer::GetFirstVertex() , InternalObject3DBuffer::GetFirstTriangle(). Important: All the vertex members and polygon index are inited to zero when built. and InternalObject3DBuffer::SetNumberOfActiveTriangle() . Then the object can be positionned with the matrix methods in VirtualMachine::InternalViewPort, and drawn with VirtualMachine::InternalViewPort::RenderMesh(). The object shape can be dynamic and rebuilt, until a call to VirtualMachine::InternalObject3DBuffer::CompileAsStatic(). In edition compilation mode, objects had to be destroyed with VirtualMachine::DeleteObject3DBuffer().
virtual void DeleteObject3DBuffer (InternalObject3DBuffer **_ppBufferToDestroy)=0
 Destroy objects previously created with NewObject3DBuffer().
virtual void NewTexture (InternalTexture **_ppTextureOut)
 Ask the Creation of a new InternalTexture, then used to render 3D objects with RenderMesh(). In edition mode, InternalTexture has to be destroyed with DeleteTexture().
virtual void NewTexture (InternalTexture **_ppTextureOut)=0
 Ask the Creation of a new InternalTexture, then used to render 3D objects with RenderMesh(). In edition mode, InternalTexture has to be destroyed with DeleteTexture().
virtual void DeleteTexture (InternalTexture **_ppTextureToDestroy)
 Destroy objects previously created with NewTexture().
virtual void DeleteTexture (InternalTexture **_ppTextureToDestroy)=0
 Destroy objects previously created with NewTexture().
virtual void NewViewPortChild (InternalViewPort **_ppViewPortOut, InternalViewPort *_pFatherViewPort=0L)
 Ask the Creation of a new InternalViewPort, that must be the child of another ViewPort, specified by _pFatherViewPort.if no father is specified, the new ViewPort will be the child of the default root ViewPort. To create another Root ViewPort, create a texture and use VirtualMedia::NewViewPortOnTexture(). In edition mode, each InternalViewPort has to be destroyed with DeleteViewPort().
virtual void NewViewPortChild (InternalViewPort **_ppViewPortOut, InternalViewPort *_pFatherViewPort=0L)=0
 Ask the Creation of a new InternalViewPort, that must be the child of another ViewPort, specified by _pFatherViewPort.if no father is specified, the new ViewPort will be the child of the default root ViewPort. To create another Root ViewPort, create a texture and use VirtualMedia::NewViewPortOnTexture(). In edition mode, each InternalViewPort has to be destroyed with DeleteViewPort().
virtual void NewViewPortOnTexture (InternalViewPort **_ppViewPortOut, InternalTexture *_pRootTexture, unsigned int _np2PixelWidth, unsigned int _np2PixelHeight, InternalTexture::TextureImageLayerEnum _layerToAffect)
 Ask the Creation of a new Root InternalViewPort, that will render on a texture image. specified by _pRootTexture. You got to create a texture first for parameter _pRootTexture. In edition mode, each InternalViewPort has to be destroyed with DeleteViewPort().
virtual void NewViewPortOnTexture (InternalViewPort **_ppViewPortOut, InternalTexture *_pRootTexture, unsigned int _np2PixelWidth, unsigned int _np2PixelHeight, InternalTexture::TextureImageLayerEnum _layerToAffect)=0
 Ask the Creation of a new Root InternalViewPort, that will render on a texture image. specified by _pRootTexture. You got to create a texture first for parameter _pRootTexture. In edition mode, each InternalViewPort has to be destroyed with DeleteViewPort().
virtual void DeleteViewPort (InternalViewPort **_ppViewPortToDestroy)
 Destroy any objects previously created with NewViewPortChild() or NewViewPortOnTexture().
virtual void DeleteViewPort (InternalViewPort **_ppViewPortToDestroy)=0
 Destroy any objects previously created with NewViewPortChild() or NewViewPortOnTexture(). If it has children, children are detached , not destoyed, but are invalid.
InternalViewPortGetDefaultViewPort ()
 Access to the default screen object created with InitMachine().
virtual void EnableMediaSound (SoundInterface *_pNoisyObject, bool _enable=true)
 Register a SoundInterface object that will then generate a mixed sound through SoundInterface::ProcessSoundInterupt(). The sound will start instantly. if false, Unregister a media object previously registered with EnableMediaSound(,true). The sound stops instantly. Note, that if you choose to use the BaseObject implementation, class VirtualMedia will manage the sound in its own way, and you will not need to use this method.
virtual void ShutTheFuckUp ()
 Now, AzurVeda virtual machine implements a very efficient BASS technology known as "ShutTheFuckUp" ! Yes, it will unregister all sound objects to silent the machine.
bool GetQuitMessage ()
 If true, means that the user want to quit:.

Static Public Member Functions

static void UpdateCircularSoundBuffer ()
 Method that update the cicular buffer. It is to be thrown by the main task message handling, for event GetSoundBufferEventHandle().

Static Public Attributes

static PFNGLACTIVETEXTUREARBPROC glActiveTextureARB
static PFNGLCLIENTACTIVETEXTUREARBPROC glClientActiveTextureARB
static bool m_RenderObjectExtension
static PFNGLGENRENDERBUFFERSEXTPROC glGenRenderbuffersEXT
static PFNGLGENFRAMEBUFFERSEXTPROC glGenFramebuffersEXT
static PFNGLBINDRENDERBUFFEREXTPROC glBindRenderbufferEXT
static PFNGLRENDERBUFFERSTORAGEEXTPROC glRenderbufferStorageEXT
static PFNGLDELETEFRAMEBUFFERSEXTPROC glDeleteFramebuffersEXT
static PFNGLDELETERENDERBUFFERSEXTPROC glDeleteRenderbuffersEXT
static PFNGLBINDFRAMEBUFFEREXTPROC glBindFramebufferEXT
static PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glFramebufferTexture2DEXT
static PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC glFramebufferRenderbufferEXT

Protected Member Functions

int ActivateScreen (RenderScreen *_pToActivate)
void SoundInit (HWND _window)
 protected sound init
void SoundExit ()
 protected sound exit
void InitLocalization ()
 init localization :

Protected Attributes

RenderScreen m_FullScreen
RenderScreen m_WindowScreen
RenderScreenm_pCurrentScreen
HWND m_hWnd
 handle to the window:
HDC m_DC
 window or screen drawing object
HGLRC m_hRC
 the OpenGL context:
const char * m_pMachineTitle
 keep display title from a context:
HINSTANCE m_hInstance
 Holds The Instance Of The Application.
bool m_active
 true when windows or screen is shown, so we got to draw:
volatile unsigned int m_Width
 screen dimension: can change when resizing:
volatile unsigned int m_Height
 screen dimension: can change when resizing:
float m_SoundVolume
 the current main sound volume of the machine.[0,1]
bool m_AskSwitchScreen
 a switch screen is to be done
unsigned int m_TotalPlaySize
 the total of amount played by a machine, in sample frequency. (to calculate cuurrent sound date.)
int m_LastStartPlayTime_SecondUnit
unsigned int m_LastStartPlayTime_SecondFrac
OGLMachineWinDxSoundm_pNextMachine
VirtualMachine::eMachineLocalization m_MachineLocalization
InternalViewPortm_pDefaultViewPort
 this is the default viewport, it stands the whole screen by default. Used by GetDefaultViewPort().
bool m_QuitMessage
 If true, means that the user want to quit. Updated by ProcessInterface().
SoundUpdateListCell * m_pFirstSoundObject
 start of the chained list of the sound object update method:

Static Protected Attributes

static bool m_OGLClassIsRegistered
 tell if vOpenGL class is registered.
static OGLMachineWinDxSoundm_LastInstance
 to be reached from process functions
static MiniDirectSoundm_pSoundManager
static unsigned int m_NumberOfMachine
static HANDLE m_dwNotifyThreadID
static volatile BOOL m_ThreadIsAlive
static DWORD m_dwDSBufferSize
 Figure out how big the DSound buffer should be 1 * 2 channel * sizeof(short).
static DWORD m_dwPrimaryFreq
 sec freq.
static double m_d32InvPrimaryFreq
 4Go/ freq for double -> lon long conversion.
static DWORD m_dwNextWriteOffset
 circular sound buffer: offset where to write.
static float *volatile m_pStaticSoundBuffer
 the m_dwDSBufferSize * 2 * sizeof(float) table passed to AzurVeda contextes:
static float *volatile m_pStaticSoundBuffer2
 another one for double buffer. We use dbf to read a previously done chunk and return the curve !
static volatile unsigned int m_LastSoundBufferLength
 the length on which the last sound buffer(2) was written
static OGLMachineWinDxSoundm_pFirstMachine
 link the machine to a static machine list
static volatile bool m_MachineIsLockedForSoundManagement
 true if MachineIsLockedForSoundManagement. so that we don't use a list that is worked on.
static volatile bool m_MachineIsLockedForSoundUpdate

Classes

class  MiniDirectSound
struct  RenderScreen


Constructor & Destructor Documentation

OGLMachineWinDxSound void   ) 
 

Constructor.

virtual ~OGLMachineWinDxSound void   )  [virtual]
 

Destructor.


Member Function Documentation

int ActivateScreen RenderScreen _pToActivate  )  [protected]
 

Returns:
0 OK, 1 ChangeDisplaySettings failed (fullscreen impossible)

virtual void DeleteTexture InternalTexture **  _ppTextureToDestroy  )  [virtual, inherited]
 

Destroy objects previously created with NewTexture().

Parameters:
_ppTextureToDestroy object to destroy, and set to 0L.

virtual void DeleteViewPort InternalViewPort **  _ppViewPortToDestroy  )  [virtual, inherited]
 

Destroy any objects previously created with NewViewPortChild() or NewViewPortOnTexture().

Parameters:
_ppViewPortToDestroy pointer to object to destroy, and set to 0L.

virtual void EnableMediaSound SoundInterface *  _pNoisyObject,
bool  _enable = true
[virtual]
 

Register a SoundInterface object that will then generate a mixed sound through SoundInterface::ProcessSoundInterupt() The sound will start instantly. if false, Unregister a media object previously registered with EnableMediaSound(). The sound stops instantly.

OVERRIDED to handle a lock when editing the machine list of for what have to be mixed, and have no mutex.

Parameters:
_pNoisyObject the object that can generate noise.
_enable true if you want to enable, false to disable.

virtual bool FileRequester const char *  _pDisplayString,
char *  _pResultFileName,
unsigned int  _nameMaxLength
[virtual]
 

In edition mode, ask a file path to a file requester. the string format should vary, but will be compatible with LoadFile() and SaveFile().

Parameters:
_pDisplayString a string to inform to what's the file for.
_pResultFileName the file path , returned.
_nameMaxLength the maximum buffer size to write.
Returns:
true if _pDisplayString valid.

Implements VirtualMachine.

virtual void GetCurrentSoundBufferImage float **const   _ppSoundBuffer,
unsigned int *  _pLength
const [virtual]
 

return an image of the current short sound buffer which is currently played. This is always a 2 float(stereo left,right) table. the play frequency of this sound signal is given by GetPlayFrequency() . The buffer size may vary in time and implementation, and this table is refresh on an undefined rate. It can be used by sound preview methods or live effects.

Parameters:
_ppSoundBuffer pointer on pointer on the buffer to return.
_pLength pointer on a unsigned int that return the length.

Implements VirtualMachine.

virtual eMachineLocalization GetCurrentWorldLocalizationEnum  )  [virtual]
 

Return the language of the machine, as a simple enum. It can be used by exemple.

Returns:
an enum integer.

Implements VirtualMachine.

virtual float GetPlayFrequency  )  [virtual]
 

Return the machine main play frequency, in herz, (tick per sec).

Returns:
freq (44100.0,22050.0,...)

Implements VirtualMachine.

virtual float GetSoundVolume  )  [virtual]
 

tool: get main volume value [0,1].

Returns:
VolumeValue [0,1]

Implements VirtualMachine.

void InitLocalization  )  [protected]
 

init localization :

virtual eVMResult InitMachine  )  [virtual]
 

Init.

Reimplemented from OGLMachine.

virtual const char* LoadFile const char *  _pFilePath,
unsigned int  _pFileStart,
unsigned int &  _LoadByteLength,
unsigned int  _maximumSizeLoad = 0xffffffff
[virtual]
 

load a file into a memory chunk. You can load all in one row, or stream. memory is to be deleted by the CALLER with operator: "delete [] pointer", for each succesfull call. return 0L if failed.

Parameters:
_pFilePath the path of the file to load
_pFileStart an offset of where to start reading the file. 0 if all file.
_LoadByteLength return the exact real length of what was read and returned, if OK.
_maximumSizeLoad the maximum length to read
Returns:
the memory chunk, or 0L if failed.

virtual void NewObject3DBuffer InternalObject3DBuffer **  _ppVertexAndPolygonBufferOut,
unsigned int  _maxNbVertex,
unsigned int  _maxNbTriangle,
unsigned int  _extraMemberFlags
[virtual, inherited]
 

Ask the Creation of a new InternalObject3DBuffer you can then fill with InternalObject3DBuffer::GetFirstVertex() , InternalObject3DBuffer::GetFirstTriangle() and InternalObject3DBuffer::SetNumberOfActiveTriangle() . Then the object can be positionned with the matrix methods, and drawn with RenderMesh() The object shape can be dynamic and rebuilt, until a call to CompileAsStatic(). In edition mode, object has to be destroyed with DeleteObject3DBuffer().

Parameters:
_ppVertexAndPolygonBufferOut the object returned, or 0L if failed.(no mem ?)
_maxNbVertex maximum number of vertex to fill.
_maxNbTriangle maximum number of Triangle to fill.
_extraMemberFlags or'ed bits (bOb3D_...) to activate extra vertex members.

virtual void NewTexture InternalTexture **  _ppTextureOut  )  [pure virtual, inherited]
 

Ask the Creation of a new InternalTexture, then used to render 3D objects with RenderMesh(). In edition mode, InternalTexture has to be destroyed with DeleteTexture().

Parameters:
_ppTextureOut the object returned, or 0L if failed.(no mem ?)

virtual void NewTexture InternalTexture **  _ppTextureOut  )  [virtual, inherited]
 

Ask the Creation of a new InternalTexture, then used to render 3D objects with RenderMesh(). In edition mode, InternalTexture has to be destroyed with DeleteTexture().

Parameters:
_ppTextureOut the object returned, or 0L if failed.(no mem ?)

virtual void NewViewPortChild InternalViewPort **  _ppViewPortOut,
InternalViewPort _pFatherViewPort = 0L
[virtual, inherited]
 

Ask the Creation of a new InternalViewPort, that must be the child of another ViewPort, specified by _pFatherViewPort.if no father is specified, the new ViewPort will be the child of the default root ViewPort. To create another Root ViewPort, create a texture and use VirtualMedia::NewViewPortOnTexture(). In edition mode, each InternalViewPort has to be destroyed with DeleteViewPort().

Parameters:
_ppViewPortOut the object returned, or 0L if failed.(no mem ?)
_pFatherViewPort the father viewport. If 0L, it uses the default root.

virtual void NewViewPortOnTexture InternalViewPort **  _ppViewPortOut,
InternalTexture *  _pRootTexture,
unsigned int  _np2PixelWidth,
unsigned int  _np2PixelHeight,
InternalTexture::TextureImageLayerEnum  _layerToAffect
[virtual, inherited]
 

Ask the Creation of a new Root InternalViewPort, that will render on a texture image. specified by _pRootTexture. You got to create a texture first for parameter _pRootTexture. In edition mode, each InternalViewPort has to be destroyed with DeleteViewPort().

Parameters:
_ppViewPortOut the object returned, or 0L if failed.(no mem ?)
_pRootTexture an InternalTexture. Can't be null.
_np2PixelWidth integer which can be 1,2,4,8,16,32,64,128,256,512 that stand for the square of the pixel width.
_np2PixelHeight integer which can be 1,2,4,8,16,32,64,128,256,512 that stand for the square of the pixel height.
_layerToAffect the texture layer (simple mapping, environment) where to render.

virtual void ProcessInterface  )  [virtual]
 

Check the Process the message of the interface, in the real time:.

Implements VirtualMachine.

virtual bool SaveFile const char *  _pFilePath,
const char *  _chunkToWrite,
unsigned int  _ChunkLength,
bool  _append = false
[virtual]
 

write a file from a memory chunk. You can save all in one row, or stream.

Parameters:
_pFilePath the path of the file to write
_chunkToWrite your memory chunk to save, as char *.
_ChunkLength the length of _chunkToWrite
_append if true, file is continued. if false, file is rewritten. default to false.
Returns:
true if OK, false if not.

Implements VirtualMachine.

virtual void SetSoundCurrentTime int  _seconds,
unsigned int  _fraction
[virtual]
 

force a date to the clock passed to the sound objects.

Parameters:
_seconds in second units.
_fraction the following after-the-point-units of _seconds, like if the whole were a 64 bits integer.

Implements VirtualMachine.

virtual void SetSoundVolume float  _newVolumeValue  )  [virtual]
 

tool: change main volume [0,1]. Yes, you can saturate when >1.

Parameters:
_newVolumeValue [0,1]

Implements VirtualMachine.

virtual void Sleep unsigned int  _milliseconds  )  [virtual]
 

in edition mode, redirection of machine task wait.

Parameters:
_milliseconds time to wait.

Implements VirtualMachine.

void SoundExit  )  [protected]
 

protected sound exit

void SoundInit HWND  _window  )  [protected]
 

protected sound init

Parameters:
_window 

virtual void SwapMainScreenBuffer  )  [virtual]
 

Swap buffer so that what was drawn is shown.

Implements OGLMachine.

static void UpdateCircularSoundBuffer  )  [static]
 

Method that update the cicular buffer. It is to be thrown by the main task message handling, for event GetSoundBufferEventHandle().


Member Data Documentation

bool m_active [protected]
 

true when windows or screen is shown, so we got to draw:

Definition at line 218 of file OGLMachineWinDxSound.h.

bool m_AskSwitchScreen [protected]
 

a switch screen is to be done

Definition at line 244 of file OGLMachineWinDxSound.h.

double m_d32InvPrimaryFreq [static, protected]
 

4Go/ freq for double -> lon long conversion.

Definition at line 267 of file OGLMachineWinDxSound.h.

HDC m_DC [protected]
 

window or screen drawing object

Definition at line 204 of file OGLMachineWinDxSound.h.

DWORD m_dwDSBufferSize [static, protected]
 

Figure out how big the DSound buffer should be 1 * 2 channel * sizeof(short).

Definition at line 261 of file OGLMachineWinDxSound.h.

DWORD m_dwNextWriteOffset [static, protected]
 

circular sound buffer: offset where to write.

Definition at line 272 of file OGLMachineWinDxSound.h.

DWORD m_dwPrimaryFreq [static, protected]
 

sec freq.

Definition at line 265 of file OGLMachineWinDxSound.h.

volatile unsigned int m_Height [protected]
 

screen dimension: can change when resizing:

Definition at line 222 of file OGLMachineWinDxSound.h.

HINSTANCE m_hInstance [protected]
 

Holds The Instance Of The Application.

Definition at line 216 of file OGLMachineWinDxSound.h.

HGLRC m_hRC [protected]
 

the OpenGL context:

Definition at line 206 of file OGLMachineWinDxSound.h.

HWND m_hWnd [protected]
 

handle to the window:

Definition at line 202 of file OGLMachineWinDxSound.h.

OGLMachineWinDxSound* m_LastInstance [static, protected]
 

to be reached from process functions

Definition at line 210 of file OGLMachineWinDxSound.h.

volatile unsigned int m_LastSoundBufferLength [static, protected]
 

the length on which the last sound buffer(2) was written

Definition at line 279 of file OGLMachineWinDxSound.h.

volatile bool m_MachineIsLockedForSoundManagement [static, protected]
 

true if MachineIsLockedForSoundManagement. so that we don't use a list that is worked on.

Definition at line 293 of file OGLMachineWinDxSound.h.

bool m_OGLClassIsRegistered [static, protected]
 

tell if vOpenGL class is registered.

Definition at line 208 of file OGLMachineWinDxSound.h.

InternalViewPort* m_pDefaultViewPort [protected, inherited]
 

this is the default viewport, it stands the whole screen by default. Used by GetDefaultViewPort().

Definition at line 840 of file VirtualMachine.h.

Referenced by VirtualMachine::GetDefaultViewPort().

OGLMachineWinDxSound* m_pFirstMachine [static, protected]
 

link the machine to a static machine list

Definition at line 288 of file OGLMachineWinDxSound.h.

SoundUpdateListCell* m_pFirstSoundObject [protected, inherited]
 

start of the chained list of the sound object update method:

Definition at line 852 of file VirtualMachine.h.

const char* m_pMachineTitle [protected]
 

keep display title from a context:

Definition at line 214 of file OGLMachineWinDxSound.h.

float* volatile m_pStaticSoundBuffer [static, protected]
 

the m_dwDSBufferSize * 2 * sizeof(float) table passed to AzurVeda contextes:

Definition at line 275 of file OGLMachineWinDxSound.h.

float* volatile m_pStaticSoundBuffer2 [static, protected]
 

another one for double buffer. We use dbf to read a previously done chunk and return the curve !

Definition at line 277 of file OGLMachineWinDxSound.h.

bool m_QuitMessage [protected, inherited]
 

If true, means that the user want to quit. Updated by ProcessInterface().

Definition at line 843 of file VirtualMachine.h.

Referenced by VirtualMachine::GetQuitMessage().

float m_SoundVolume [protected]
 

the current main sound volume of the machine.[0,1]

Definition at line 242 of file OGLMachineWinDxSound.h.

unsigned int m_TotalPlaySize [protected]
 

the total of amount played by a machine, in sample frequency. (to calculate cuurrent sound date.)

Definition at line 281 of file OGLMachineWinDxSound.h.

volatile unsigned int m_Width [protected]
 

screen dimension: can change when resizing:

Definition at line 220 of file OGLMachineWinDxSound.h.


The documentation for this class was generated from the following file:
      /\/\        4         N         k         !         N         D
                      _______  _ __ ___  _____            ___ _ _  ____
     ___________  __//___   /________  |/    / ___________\_______/    \
    /   _   _   \/   _     /    _   /      _/_/____/    _       __     /
   /    /   /       /     /    /    \      \/     /    /    \   \     /
  \\___/___/___/    ¯    _____/_____/       ______\___/_____/\________\\
               \________/_ ___ __ l____\      /elD!  
                 http://www.m4nkind.com \____/