hx3d  1
2D/3D Simple Game Framework
Public Member Functions | List of all members
hx3d::audio::Waveform Class Reference

Audio waveform displaying. More...

#include <waveform.hpp>

Public Member Functions

 Waveform ()
 Create an empty waveform with a refresh delay of 50. More...
 
 Waveform (const int refreshDelay)
 Create an empty waveform with a custom refresh delay. More...
 
virtual void update (const Sint16 *stream, const int length, const float delta) override
 Update the display. More...
 
- Public Member Functions inherited from hx3d::audio::Display
 Display ()
 Create an empty display with a refresh delay of 50. More...
 
 Display (const int refreshDelay)
 Create an empty display with a custom refresh delay. More...
 
void initialize (const unsigned int width, const unsigned int height)
 Initialize the display. More...
 
void setRefreshDelay (const int refreshDelay)
 Set the refresh delay. More...
 
virtual void onInitialization ()
 Use this to execute code after initialization. More...
 
- Public Member Functions inherited from hx3d::graphics::Sprite
 Sprite ()
 Create a sprite without texture. More...
 
void setTexture (const Ptr< Texture > &texture)
 Set the sprite texture. More...
 
void setTexture (Framebuffer &buffer)
 Set the sprite texture from a framebuffer color buffer. More...
 
void setTexture (TextureRegion &region)
 Set the sprite texture from a texture region. More...
 
Ptr< TexturegetTexture ()
 Get the sprite texture. More...
 
void scaleTexture ()
 Scale the texture coordinates following the texture size.
 
virtual void draw (Ptr< Shader > shader) override
 Draw the mesh using a shader. More...
 
- Public Member Functions inherited from hx3d::graphics::Mesh
void setTint (Color tint)
 Set the mesh tint. More...
 
ColorgetTint ()
 Get the mesh tint. More...
 
void updateColor ()
 Update the mesh color from the tint.
 
void setGeometry (Ptr< geom::BaseGeometry > geometry)
 Set the mesh geometry. More...
 
Ptr< geom::BaseGeometry > & getGeometry ()
 Get the mesh geometry. More...
 

Additional Inherited Members

- Public Attributes inherited from hx3d::graphics::Mesh
Transform transform
 Mesh transformation.
 
- Protected Member Functions inherited from hx3d::audio::Display
void drawBorders ()
 Draw white borders.
 
- Protected Attributes inherited from hx3d::audio::Display
graphics::Image _image
 Drawing image.
 
Timer _timer
 Refresh timer.
 
int _refreshDelay
 Refresh delay.
 
bool _initialized
 Is the display initialized ?
 
- Protected Attributes inherited from hx3d::graphics::Mesh
Color _tint
 Tint color.
 
Ptr< geom::BaseGeometry_geometry
 Current geometry.
 

Detailed Description

Audio waveform displaying.

Example code

// Inside a create function...
// Create a waveform
audio::Waveform waveform;
waveform.transform.position.x = 100;
waveform.transform.position.y = 100;
[...]
// Inside an update function...
// Get a signed short stream (see audio::S16Converter)
short* stream = s16converter.getS16Stream();
// Update the waveform
waveform.update(stream, s16converter.getSampleSize(), delta);
[...]
// Inside a render function...
// Display the waveform
batch.draw(waveform);

Definition at line 60 of file waveform.hpp.

Constructor & Destructor Documentation

hx3d::audio::Waveform::Waveform ( )

Create an empty waveform with a refresh delay of 50.

See also
initialize to construct the texture.

Definition at line 29 of file waveform.cpp.

hx3d::audio::Waveform::Waveform ( const int  refreshDelay)

Create an empty waveform with a custom refresh delay.

See also
initialize to construct the texture.
Parameters
refreshDelayRefresh delay

Definition at line 30 of file waveform.cpp.

Member Function Documentation

void hx3d::audio::Waveform::update ( const Sint16 *  stream,
const int  length,
const float  delta 
)
overridevirtual

Update the display.

Parameters
streamStream of amplitudes (between -32767 and 32767)
lengthLength of the stream
deltaDelta time

Implements hx3d::audio::Display.

Definition at line 33 of file waveform.cpp.


The documentation for this class was generated from the following files: