- メインページ
- ネームスペース
- クラス
- ファイル

- 構成
- 構成メンバ

# クラス osc::COscillator

`#include <osci.h>`

すべてのメンバ一覧

## Public メソッド
| COscillator (int freq)
virtual void | setFreq (int freq)
virtual void | run (shortfract i[], shortfract q[], int count)=0
virtual void | run (shortfract i[], count)=0
## Protected 変数
unsigned int | phase
unsigned int | frequency

## 説明

抽象発信器クラス 発信器クラスの親となる抽象クラス。現在の位相と周波数を内部に保持する。 位相は2πを32bit符号なし整数にマッピングする。すなわち1周期を40億ステップ に分解する。 周波数は1サンプルに変化する量(dθ/dt)で指定する。32bit符号なし数である。

## コンストラクタとデストラクタ

osc::COscillator::COscillator | ( | int | freq | ) |

コンストラクタ 周波数を指定する。内部位相は0になる。サンプル周波数 をfsとし、希望する周波数をfrとすると、コンストラクタに渡すべき値 freqは、 freq=fr*(2^32)/fs で得ることができる

## 関数

virtual void osc::COscillator::setFreq | ( | int | freq | ) | `[virtual]`

周波数の再設定 内部位相を変更せずに周波数を再設定する。

virtual void osc::COscillator::run | ( | shortfract | i[],
|  | shortfract | q[],
|  | int | count |
| ) |  |  | `[pure virtual]`

信号の生成 param i コサイン波信号の出力配列 param q サイン波信号の出力配列 param count それぞれの配列に出力するサンプル数

発信器の内部位相をもとに、コサイン波とサイン波を生成する。

virtual void osc::COscillator::run | ( | shortfract | i[],
|  | count |  |
| ) |  |  | `[pure virtual]`

信号の生成 param i コサイン波信号の出力配列 param count 配列に出力するサンプル数

発信器の内部位相をもとに、コサイン波を生成する。

## 変数

unsigned int osc::COscillator::phase`[protected]`

内部位相 内部位相は32ビット符号なし数である。この位相はrunメソッドで更新 していく。

unsigned int osc::COscillator::frequency`[protected]`

周波数 周波数は32ビット符号なし数である。周波数はコンストラクタで指定 するほかsetFreqメソッドで再設定することもできる。

このクラスの説明は次のファイルから生成されました:

- C:/My Shared Folder/rensai/2007_08_oscillator/program/oscillator/osci.h