自己インストールプラグインの概要

 
 
 

自己インストール プラグインは、XSILoadPlugin という名前の関数を実装するスクリプト ファイルまたはコンパイルされた .dll/.so です。

Softimage を起動すると、Application¥Plugins などの特定のフォルダで、XSILoadPlugin を実装するプラグインが検索されます。 Softimage は、自己インストールするプラグインを発見すると、プラグインをロードして、その XSILoadPlugin 関数を呼び出します。

XSILoadPlugin は、いくつかのプラグインプロパティ(プラグインの名前やヘルプ ファイルの格納場所など)を設定してから、プラグインが実装する項目を登録します。 プラグイン項目には、コマンド、イベント、フィルタ、メニュー、プロパティだけでなく、カスタム ディスプレイ、ビューポート モード、ビューポート コールバック(グラフィック シーケンサ)があります。

たとえば、この XSILoadPlugin はコマンドとメニューを登録します。

// JScript
function XSILoadPlugin( in_pluginRegistrar )
{
	in_pluginRegistrar.Author = "Command Wizard";
	in_pluginRegistrar.Name = "My Commands";
	
	// Register command
	in_pluginRegistrar.RegisterCommand("MyCommand","MyCommand");
	
	// Register a custom menu
	in_pluginRegistrar.RegisterMenu( siMenuMainHelpID, "MyHelp_Menu", false, false );
	
	in_pluginRegistrar.RegisterMenu(siMenuTbGetPropertyID,"MyProperty_Menu",false,false);
	
	return true;
}

XSILoadPlugin で登録されるプラグイン項目ごとに、自己登録するプラグインは複数のコールバック関数も実装します。 たとえば、プラグインが "MyCommand" という名前のコマンドを登録する場合、プラグインは、Execute コールバックと、おそらくは Init コールバックも、コマンドに対して提供します。

// JScript
// Init and Execute callbacks for the custom command named "MyCommand"
function MyCommand_Init() {
	// Add arguments to the command
}

function MyCommand_Execute() {
	// Implement the command
}

自己インストールするプラグインは、XSIUnloadPlugin 関数も実装できます。 Softimage はプラグインのアンロード時に常にXSIUnloadPlugin を呼び出します(たとえば、プラグイン マネージャを使ってアンロードする場合や Softimage を終了する場合)。 XSIUnloadPlugin を使用すると、XSILoadPlugin によって割り当てられたリソースをクリーンアップできます。