 |
CUGL 1.3
Cornell University Game Library
|
41 #ifndef __CU_AUDIO_WAVE_FORM_H__
42 #define __CU_AUDIO_WAVE_FORM_H__
44 #include <cugl/assets/CUJsonValue.h>
195 #pragma mark Constructors
230 bool init(Uint8 channels, Uint32 rate);
250 bool init(Uint8 channels, Uint32 rate,
Type type,
float frequency);
258 virtual void dispose()
override;
260 #pragma mark Static Constructors
269 static std::shared_ptr<AudioWaveform>
alloc() {
270 std::shared_ptr<AudioWaveform> result = std::make_shared<AudioWaveform>();
271 return (result->init() ? result :
nullptr);
285 static std::shared_ptr<AudioWaveform>
alloc(Uint8 channels, Uint32 rate) {
286 std::shared_ptr<AudioWaveform> result = std::make_shared<AudioWaveform>();
287 return (result->init(channels,rate) ? result :
nullptr);
308 static std::shared_ptr<AudioWaveform>
alloc(Uint8 channels, Uint32 rate,
Type type,
float frequency) {
309 std::shared_ptr<AudioWaveform> result = std::make_shared<AudioWaveform>();
310 return (result->init(channels,rate,type,frequency) ? result :
nullptr);
336 static std::shared_ptr<AudioWaveform>
allocWithData(
const std::shared_ptr<JsonValue>& data);
338 #pragma mark Generator Attributes
404 virtual Sint64
getLength()
const override;
447 Uint32
generate(
float* buffer, Uint32 frames, Uint64 offset,
float last);
458 virtual std::shared_ptr<audio::AudioNode>
createNode()
override;