Unload は、プラグインがキャッシュからアンロードされるときに呼び出されます。
ユーザがプラグイン ツリーでプラグインを右クリックし、[キャッシュ済み]チェックをオフにすると、プラグインはキャッシュからアンロードされます。 この操作はプラグイン(.dll/.so ファイルまたはスクリプト ファイル)をメモリからアンロードするものであり、Softimage からアンロードするわけではありません。 Plugin および PluginItem オブジェクトはまだ Softimage 内に存在しており、プラグインは依然として登録されています。
プラグインがキャッシュされていない場合は、プラグイン項目(コマンドなど)が呼び出されるたびに、プラグインのロードとアンロードが繰り返されます。 この動作により、Reload コールバックと Unload コールバックが発生します。
Softimage は Unload コールバックから戻った後に、コンテキストに格納されているユーザ データを解放します。 また、Term から戻った後にもユーザ データを解放します。
カスタム プロパティを除くすべてのプラグイン項目。
public class <plugin-item_name> { public bool Unload( Context in_context ) { ... } } |
CStatus <plugin-item_name>_Unload( CRef& in_context ) { ... } |
function <plugin-item_name>_Unload( in_context ) { ... } |
def <plugin-item_name>_Unload( in_context ): ... |
Function <plugin-item_name>_Unload( in_context ) ... End Function |
sub <plugin-item_name>_Unload { my $in_context = shift; } |
<plugin-item_name> は、XSILoadPlugin で指定されているパーサ名です。この名前に含まれるスペースはアンダースコアに置き換えられます。
パラメータ | Language | タイプ | 詳細 |
---|---|---|---|
in_context | スクリプティングおよび C# | コンテキスト | Context.Source はプラグイン項目を返します。 |
C++ | CRef& | Context オブジェクトへのリファレンス。 |