ir::GPDSPNode class

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

GPDSPNode クラスは, すべてのノードの基底クラスです.

各種ノードを表す具象クラスは, GPDSPNode クラスを仮想継承し, fixate(), invalidate(), prepare(), process() 関数を実装します.

Derived classes

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

Constructors, destructors, conversion operators

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

Public functions

GPDSPError fixate(void) noexcept pure virtual
固定個数の入出力ターミナルを生成します.
void invalidate(void) noexcept pure virtual
演算結果を無効化し, 再演算を要求します.
GPDSPError prepare(void) noexcept pure virtual
演算前の準備をします.
GPDSPError process(void) noexcept pure virtual
演算を行います.

Function documentation

ir::GPDSPNode::~GPDSPNode(void) noexcept pure virtual

デストラクタです.

何もしません.

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

コンストラクタです.

何もしません.

GPDSPError ir::GPDSPNode::fixate(void) noexcept pure virtual

固定個数の入出力ターミナルを生成します.

Returns
GPDSPERROR_OK 正常
GPDSPERROR_WAIT [返却禁止]
GPDSPERROR_IGNORE [返却禁止]
GPDSPERROR_FRAGMENT [返却禁止]
GPDSPERROR_LOOP [返却禁止]
その他のエラー

GPDSPError ir::GPDSPNode::prepare(void) noexcept pure virtual

演算前の準備をします.

Returns
GPDSPERROR_OK 正常 (準備を完了)
GPDSPERROR_WAIT [返却禁止]
GPDSPERROR_IGNORE [返却禁止]
GPDSPERROR_FRAGMENT [返却禁止]
GPDSPERROR_LOOP [返却禁止]
その他のエラー

GPDSPError ir::GPDSPNode::process(void) noexcept pure virtual

演算を行います.

Returns
GPDSPERROR_OK 正常 (演算を完了)
GPDSPERROR_WAIT データフロー入力待ち
GPDSPERROR_IGNORE 演算対象外として無視
GPDSPERROR_FRAGMENT 一部の演算のみ完了
GPDSPERROR_LOOP [返却禁止]
その他のエラー