ASTER::ACTION::ObjectControl::Reject + Destroy ( By Name )

フレームタイムを利用したタイマー処理が可能.

Reject ( 文章によって Cancel とか Terminate と記述にブレがあり、統一する必要性 )


パラメータ .1

Reject 対象は登録で利用されたモーショングループ名を指定。

e.g. "test1" » モーショングループ名 “test1” が Reject + Destroy 対象.

e.g. "" » 空文字の送信、全登録インスタンスを Reject + Destroy 対象とする.


パラメータ .2

処理が実行されるまでの遅延をフレームタイムで設定する.

フレームベースのタイマー機能.

アプリケーションが 60 FPS で動いている場合、

e.g. 60 と入力すれば約一秒後、reject + destroy 実行.

即時に登録解除する場合、

e.g. 0 と入力します.


注意点.1

Destroy Flag が立っているオブジェクトは実際に破壊される直前の状態なので、まだ破壊されていない。このタイミングでオブジェクトインスタンスをコントローラへ再登録しようとすると破壊フラグが立っていても登録試行できてしまうため、これに起因したエラーや警告が出る可能性があります。




注意点.2

Reject はモーションコントローラにおける最上位系の命令です。下位の他命令が発行されても影響を受けず、一度発行された命令に対する上書き更新や実行停止・キャンセルが効きません。

すでに Reject 命令と同種の命令が対象オブジェクトに対して発行されている場合、後から発行された Reject 命令は無効化されます。




注意点.3

Reject 命令はグループ名を指定して登録解除を試行する「 By Name 」系と、オブジェクトインスタンスのメモリアドレスを検索して登録解除を試行する「 Direct 」系、二種類があります。

この二種類に Destroy 機能を持たせた命令が加わると Reject 命令は合計四種類、「 By Name 」で遅延実行の数値が 0 かつ全登録インスタンスが対象の場合「完全即時消去」という命令が発行され、これを加えると五種類になります。

五種類すべてが権限的に同等、先に発行された命令が優先権を持ちます。



  Type List
                                                 + Immediate  + - - - + Destroy
                                                 |
             + - - - + Reject ( Directly ) - - - + Time Delay + - - - + Destroy
Reject - - - |
             + - - - + Reject ( By Name  ) - - - + Time Delay + - - - + Destroy 
                     |                           |
                     |                           + Immediate  + - - - + Destroy
                     |
                     + Reject (   ALL   )  - - - + Immediate  + - - - + Destroy ( 完全即時消去 )