﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	severity	resolution	keywords	cc
11	動的リンクライブラリのサンプルプログラムを作成する	村山 俊之	村山 俊之	"「C++のためのAPIデザイン」 Sec.6.9「シンボルのエクスポート」に記述のある内容を修得するためのサンプルプログラムを作成する。

=== サンプルプログラムの内容 ===

==== 概要 ====

Wave ファイル出力ライブラリ。

==== 方針 ====

`int32_t` 型整数の配列を受け取って Wave ファイルを出力する。

Wave ファイルの形式は通常の無圧縮 Windows Wave 形式のみとし、以下より選択できるものとする。

 * モノラルまたはステレオ
 * 量子化数 16/24bits
 * サンプリングレート 8/22.05/44.1/48

==== 設計 ====

 * `AudioOutput` ... オーディオ出力関連の抽象インタフェースクラス
   * `open()` ... 出力リソースを開く (出力開始のためにデバイスを準備する)。
   * `close()` ... 出力リソースを閉じる (出力完了に伴う処理を実施する)。
   * `outputWave(int ch, size_t size, const int32_t[] wave) ... 指定したチャンネルに波形を出力する。
 * `AudioFileExporter` ... オーディオファイル出力に特化した抽象インタフェースクラス
   * `setFileName(std::string && name) ... ファイル名を設定する。
 * `WindowsWaveExporter` ... Windows Wave 形式ファイル出力クラス
"	タスク	accepted	通常	API開発手法習得	技術調査	極めて重大			
