Home Information Classes Download Usage Mail List Requirements Links Tutorial

# WvOut Class Reference

STK audio data output base class. More...

`#include <WvOut.h>`

Inheritance diagram for WvOut:

List of all members.

## Public Member Functions

| WvOut ()
| Default constructor.
| WvOut (const char *fileName, unsigned int nChannels=1, FILE_TYPE type=WVOUT_WAV, Stk::STK_FORMAT format=STK_SINT16)
| Overloaded constructor used to specify a file name, type, and data format with this object.
virtual | ~WvOut ()
| Class destructor.
void | openFile (const char *fileName, unsigned int nChannels=1, WvOut::FILE_TYPE type=WVOUT_WAV, Stk::STK_FORMAT format=STK_SINT16)
| Create a file of the specified type and name and output samples to it in the given data format.
void | closeFile (void)
| If a file is open, write out samples in the queue and then close it.
unsigned long | getFrames (void) const
| Return the number of sample frames output.
MY_FLOAT | getTime (void) const
| Return the number of seconds of data output.
virtual void | tick (const MY_FLOAT sample)
| Output a single sample to all channels in a sample frame.
virtual void | tick (const MY_FLOAT *vector, unsigned int vectorSize)
| Output each sample in vector to all channels in vectorSize sample frames.
virtual void | tickFrame (const MY_FLOAT *frameVector, unsigned int frames=1)
| Output the frameVector of sample frames of the given length.

## Static Public Attributes

const FILE_TYPE | WVOUT_RAW
const FILE_TYPE | WVOUT_WAV
const FILE_TYPE | WVOUT_SND
const FILE_TYPE | WVOUT_AIF
const FILE_TYPE | WVOUT_MAT

## Detailed Description

STK audio data output base class.

This class provides output support for various audio file formats. It also serves as a base class for "realtime" streaming subclasses.

WvOut writes samples to an audio file. It supports multi-channel data in interleaved format. It is important to distinguish the tick() methods, which output single samples to all channels in a sample frame, from the tickFrame() method, which takes a pointer to multi-channel sample frame data.

WvOut currently supports WAV, AIFF, AIFC, SND (AU), MAT-file (Matlab), and STK RAW file formats. Signed integer (8-, 16-, and 32-bit) and floating- point (32- and 64-bit) data types are supported. STK RAW files use 16-bit integers by definition. MAT-files will always be written as 64-bit floats. If a data type specification does not match the specified file type, the data type will automatically be modified. Uncompressed data types are not supported.

Currently, WvOut is non-interpolating and the output rate is always Stk::sampleRate().

by Perry R. Cook and Gary P. Scavone, 1995 - 2002.

Definition at line 44 of file WvOut.h.

## Constructor & Destructor Documentation

WvOut::WvOut | ( | const char * | fileName,
|  | unsigned int | nChannels = 1,
|  | FILE_TYPE | type = WVOUT_WAV,
|  | Stk::STK_FORMAT | format = STK_SINT16
| ) |

| Overloaded constructor used to specify a file name, type, and data format with this object. An StkError is thrown for invalid argument values or if an error occurs when initializing the output file.

## Member Function Documentation

void WvOut::openFile | ( | const char * | fileName,
|  | unsigned int | nChannels = 1,
|  | WvOut::FILE_TYPE | type = WVOUT_WAV,
|  | Stk::STK_FORMAT | format = STK_SINT16
| ) |

| Create a file of the specified type and name and output samples to it in the given data format. An StkError is thrown for invalid argument values or if an error occurs when initializing the output file.

virtual void WvOut::tick | ( | const MY_FLOAT | sample | ) | `[virtual]`

| Output a single sample to all channels in a sample frame. An StkError is thrown if a file write error occurs. Reimplemented in RtWvOut, and TcpWvOut.

virtual void WvOut::tick | ( | const MY_FLOAT * | vector,
|  | unsigned int | vectorSize
| ) | `[virtual]`

| Output each sample in vector to all channels in vectorSize sample frames. An StkError is thrown if a file write error occurs. Reimplemented in RtWvOut, and TcpWvOut.

virtual void WvOut::tickFrame | ( | const MY_FLOAT * | frameVector,
|  | unsigned int | frames = 1
| ) | `[virtual]`

| Output the frameVector of sample frames of the given length. An StkError is thrown if a file write error occurs. Reimplemented in RtWvOut, and TcpWvOut.

## Member Data Documentation

const FILE_TYPE WvOut::WVOUT_RAW `[static]`

| STK RAW file type. Definition at line 50 of file WvOut.h.

const FILE_TYPE WvOut::WVOUT_WAV `[static]`

| WAV file type. Definition at line 51 of file WvOut.h.

const FILE_TYPE WvOut::WVOUT_SND `[static]`

| SND (AU) file type. Definition at line 52 of file WvOut.h.

const FILE_TYPE WvOut::WVOUT_AIF `[static]`

| AIFF file type. Definition at line 53 of file WvOut.h.

const FILE_TYPE WvOut::WVOUT_MAT `[static]`

| Matlab MAT-file type. Definition at line 54 of file WvOut.h.

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

- WvOut.h

The Synthesis ToolKit in C++ (STK)
©1995-2004 Perry R. Cook and Gary P. Scavone. All Rights Reserved.