目次に戻る
一覧ページに戻る
CPartsSI_Initialize
2002/08/28 update.
C-Partsの初期化処理を行います。

書式

  void CPartsSI_Initialize(scene_interface *scene);

解説


C-Partsの初期化処理を行います。
Shadeの(オーバーライドした)各インターフェースの「scene_opened」で、必ず呼び出すようにしてください。
こうすることにより、Shade起動時にC-Partsの初期化処理が呼ばれることになります。
また、Shadeプラグインは常駐させておく(is_resident( )でtrueを返す)必要があります。

この「CPartsSI_Initialize」は、C-Partsの関数「CPartsInitialize」を内部で呼び出しています。
また、各OSでの差異を吸収しています。

Shade R5 + C-Parts Ver1.07では、各インターフェースのコンストラクタで「CPartsSI_Initialize」を呼び出すようにしていました。
しかし、Shade6にて、このあたりの仕様が変わったため「scene_opened」でC-Partsの初期化処理を呼び出すようにしております。





Shadeのplugin_interfaceでの記述例です。


struct plugin_component : plugin_interface {
    plugin_component () {
    }

    ~plugin_component () {
        //C-Partsの終了
        CPartsSI_Terminate();
    }

    virtual void scene_opened (sxbool &b, scene_interface *scene, void * = 0) {
      CPartsSI_Initialize(scene);
    }

    ....
};

「scene_opened」で「CPartsSI_Initialize」を、デストラクタで「CPartsSI_Terminate」を呼んでいます。


関連リンク


[CPartsSI.cpp]での関数一覧
CPartsSI_Terminate