Om
1.0.0
A universal framework for multimedia simulation
|
A class that opaquely provides an IR from an external source. More...
#include <omSoundConvolution.h>
Public Attributes | |
Function< void(Index channel, Index offset, Size numSamples, Sample32f *samples)> | readIR |
Write a range of IR samples for the specified channel to the given pointer. More... | |
UserData | data |
An object that stores an opaque pointer to delegate data. More... | |
A class that opaquely provides an IR from an external source.
The delegate should provide as many IR samples as specified in the IRRequest's length.
Function<void ( Index channel, Index offset, Size numSamples, Sample32f* samples )> om::sound::base::Convolution::IRDelegate::readIR |
Write a range of IR samples for the specified channel to the given pointer.
The delegate should generate the requested number of IR samples starting at the given offset index from the start of the IR and write them to the output buffer.
The convolution system will always request parts of the IR in sequential order and will always read each channel in sequential order for a given range of IR samples. However, not every part of the IR may be requested if it is not possible to update those regions due to pending interpolation for a previous update operation. Thus, computation can be saved since not every part of the IR needs to be computed. This functionality is most useful in applications where the IR is changing constantly, such as in sound propagation systems.
UserData om::sound::base::Convolution::IRDelegate::data |
An object that stores an opaque pointer to delegate data.