ir::GPDSPOutputtableNode class

出力ターミナルを持つノードを表す抽象クラス

GPDSPOutputtableNode クラスは, 出力ターミナルを持つノードを表す抽象クラスです.

固定個数の出力ターミナルを持つ各種ノードを表す具象クラスは, GPDSPOutputtableNode クラスを継承して実装します.

Base classes

class GPDSPNode virtual
ノードを表すインターフェースクラス

Derived classes

class GPDSPAmplifyNode
増幅ノードを表す具象クラス
class GPDSPBufferInputNode
バッファ入力ノードを表す具象クラス
class GPDSPBufferNode
任意遅延ノードを表す具象クラス
class GPDSPConstantNode
定数ノードを表す具象クラス
class GPDSPDelayNode
単位遅延ノードを表す具象クラス
class GPDSPFlexOutputtableNode
可変個数の出力ターミナルを持つノードを表す抽象クラス
class GPDSPGateNode
制限ノードを表す具象クラス
class GPDSPGenerativeInputNode
外部入力ノードを表す具象クラス
class GPDSPGenerativeNode
生成的ノードを表す具象クラス
class GPDSPMultiplyNode
総積ノードを表す具象クラス
class GPDSPPeakNode
極値ノードを表す具象クラス
class GPDSPSignNode
符号ノードを表す具象クラス
class GPDSPSquareRootNode
平方根ノードを表す具象クラス
class GPDSPSumNode
総和ノードを表す具象クラス
class GPDSPWaveNode
波形ノードを表す抽象クラス

Constructors, destructors, conversion operators

GPDSPOutputtableNode(void) protected explicit noexcept
コンストラクタです.
~GPDSPOutputtableNode(void) noexcept protected pure virtual
デストラクタです.

Public functions

int getCountO(void) const noexcept
出力ターミナルの個数を取得します.
GPDSPError setNameO(int index, std::string const& what) noexcept
出力ターミナルの名前を設定します.
GPDSPError getNameO(int index, std::string* what) const noexcept
出力ターミナルの名前を取得します.
GPDSPError getValueO(int index, GPDSPFloat* value) const noexcept
出力ターミナルの値を取得します.
int findNameO(std::string const& what) const noexcept
引数に指定された名前を持つ出力ターミナルを検索します.
void invalidate(void) virtual noexcept
出力の演算結果を無効化し, 再演算を要求します.
GPDSPError fixate(void) noexcept pure virtual
固定個数の入出力ターミナルを生成します.
GPDSPError prepare(void) noexcept pure virtual
演算前の準備をします.
GPDSPError process(void) noexcept pure virtual
演算を行います.

Protected functions

GPDSPError setCountO(int count, std::string const& what) noexcept
出力ターミナルの個数と名前を設定します.
GPDSPError setValueO(int index, GPDSPFloat value) noexcept
出力ターミナルの値を設定します.
GPDSPError appendO(std::string const& what) noexcept
引数に指定された名前を持つ出力ターミナルを追加します.
GPDSPError insertO(int index, std::string const& what) noexcept
引数に指定された名前を持つ出力ターミナルを挿入します.
GPDSPError removeO(int index) noexcept
出力ターミナルを削除します.
void clearO(void) noexcept
すべての出力ターミナルを削除します.

Function documentation

ir::GPDSPOutputtableNode::GPDSPOutputtableNode(void) explicit protected noexcept

コンストラクタです.

何もしません.

ir::GPDSPOutputtableNode::~GPDSPOutputtableNode(void) noexcept pure virtual protected

デストラクタです.

管理しているリソースを解放します.

int ir::GPDSPOutputtableNode::getCountO(void) const noexcept

出力ターミナルの個数を取得します.

Returns 現在の個数

GPDSPError ir::GPDSPOutputtableNode::setNameO(int index, std::string const& what) noexcept

出力ターミナルの名前を設定します.

Parameters
index in ターミナル番号
what in 設定する名前
Returns
GPDSPERROR_OK 正常
GPDSPERROR_INVALID_RANGE 範囲外のパラメータ

GPDSPError ir::GPDSPOutputtableNode::getNameO(int index, std::string* what) const noexcept

出力ターミナルの名前を取得します.

Parameters
index in ターミナル番号
what out 名前の取得先 (NULL 可能)
Returns
GPDSPERROR_OK 正常
GPDSPERROR_INVALID_RANGE 範囲外のパラメータ

GPDSPError ir::GPDSPOutputtableNode::getValueO(int index, GPDSPFloat* value) const noexcept

出力ターミナルの値を取得します.

Parameters
index in ターミナル番号
value out 値の取得先 (NULL 可能)
Returns
GPDSPERROR_OK 正常
GPDSPERROR_WAIT データフロー入力待ち
GPDSPERROR_INVALID_RANGE 範囲外のパラメータ

int ir::GPDSPOutputtableNode::findNameO(std::string const& what) const noexcept

引数に指定された名前を持つ出力ターミナルを検索します.

同じ名前を持つ出力ターミナルが複数ある場合には, 最初に見つかった出力ターミナルを返却します.

Parameters
what in 検索する名前
Returns
-1 存在しない
その他 ターミナル番号

GPDSPError ir::GPDSPOutputtableNode::setCountO(int count, std::string const& what) protected noexcept

出力ターミナルの個数と名前を設定します.

Parameters
count in 設定する個数
what in 設定する名前
Returns
GPDSPERROR_OK 正常
GPDSPERROR_NO_MEMORY メモリが不足している

GPDSPError ir::GPDSPOutputtableNode::setValueO(int index, GPDSPFloat value) protected noexcept

出力ターミナルの値を設定します.

Parameters
index in ターミナル番号
value in 設定する値
Returns
GPDSPERROR_OK 正常
GPDSPERROR_INVALID_RANGE 範囲外のパラメータ

GPDSPError ir::GPDSPOutputtableNode::appendO(std::string const& what) protected noexcept

引数に指定された名前を持つ出力ターミナルを追加します.

Parameters
what in 追加する名前
Returns
GPDSPERROR_OK 正常
GPDSPERROR_NO_MEMORY メモリが不足している

GPDSPError ir::GPDSPOutputtableNode::insertO(int index, std::string const& what) protected noexcept

引数に指定された名前を持つ出力ターミナルを挿入します.

Parameters
index in 挿入する位置
what in 挿入する名前
Returns
GPDSPERROR_OK 正常
GPDSPERROR_NO_MEMORY メモリが不足している
GPDSPERROR_INVALID_RANGE 範囲外のパラメータ

GPDSPError ir::GPDSPOutputtableNode::removeO(int index) protected noexcept

出力ターミナルを削除します.

Parameters
index in ターミナル番号
Returns
GPDSPERROR_OK 正常
GPDSPERROR_INVALID_RANGE 範囲外のパラメータ