Inheritance |
|
このクラスには、PDG内のワークアイテムに関する情報にアクセスする方法が備わっています。
pdg.Nodeオブジェクトにもそのノードが所有しているワークアイテムにアクセスするためのメソッドが備わっています。 pdg.Graph.workItemByNameメソッドを使えば名前によってワークアイテムを照会することができ、 pdg.Graph.workItemByIdメソッドを使えばIDによってワークアイテムを照会することができます。
また、pdg.Nodeオブジェクトにもそのノードが所有しているワークアイテムにアクセスする方法が備わっています。
メソッド ¶
addEnvironmentVar(str)
ワークアイテムの環境に環境変数を追加します。
このメソッドは廃止されました。
代わりにpdg.WorkItem.addAttribを使用してアトリビュートを追加し、そのアトリビュートにpdg.attribFlag.EnvExport
フラグを設定してください。
addError(error_message, fail_task=False, timestamp=True)
エラーメッセージをワークアイテムの内部In-Processログに追加します。
ワークアイテムがPython ScriptまたはPython Processorで実行されていて、且つ、fail_tasks
がTrue
の場合、そのワークアイテムの実行も中断されます。
timestamp
がTrue
の場合、ログメッセージの頭に現在のタイムスタンプが付きます。
addEventHandler(handler, filter:
pdg.EventType, pass_handler=False)
→ pdg.PyEventHandler
受信するイベントのタイプの値を持ったイベントハンドラーをワークアイテムに追加します。
このhandler
には、pdg.Eventタイプの引数を受け取るCallableを指定してください。
pass_handler
がTrueの場合、このハンドラー自体がこの関数の1番目の引数に渡されます。
Falseの場合、イベントオブジェクトのみがこの関数に渡されます。
addEventHandler(handle, event_types:
pdg.EventType, pass_handler=False)
→ pdg.PyEventHandler
受信するイベントのタイプのリストを持ったイベントハンドラーをワークアイテムに追加します。
このhandler
には、pdg.Eventタイプの引数を受け取るCallableを指定してください。
pass_handler
がTrueの場合、このハンドラー自体がこの関数の1番目の引数に渡されます。
pass_handler
がFalseの場合、イベントオブジェクトのみがこの関数に渡されます。
addExpectedResultData(path, tag="", own=True)
このメソッドは廃止されました。代わりにpdg.WorkItem.addExpectedOutputFileを使用してください。
addExpectedOutputFile(path, tag="", own=True)
必要な出力ファイルを、指定したファイルタグを付けてワークアイテムに追加します。
path
は、ワークアイテムがクックした時に生成するファイルの文字列パスです。
オプションのown
パラメータは、ワークアイテムがそのファイルを所有するかどうかを示します。
PDGは、ディスクから出力ファイルを削除する時にこのパラメータを使用します。
addExpectedOutputFiles(paths, tag="", own=True)
必要な出力ファイルのリストを、指定したファイルタグを付けてワークアイテムに追加します。
paths
は、ワークアイテムがクックした時に生成するファイルの文字列パスのリストです。
オプションのown
パラメータは、ワークアイテムがそのファイルを所有するかどうかを示します。
PDGは、ディスクから出力ファイルを削除する時にこのパラメータを使用します。
このメソッドは、大量のファイルのリストに対してループでpdg.WorkItem.addExpectedOutputFileをコールするよりも効率が良いです。
addMessage(log_message, timestamp=True)
メッセージをワークアイテムの内部In-Processログに追加します。
timestamp
がTrue
の場合、ログメッセージの頭に現在のタイムスタンプが付きます。
addOutputFile(path, tag="", checksum=0, own=True)
指定したファイルタグとchecksum
値を持つ出力ファイルをワークアイテムに追加します。
path
は、ディスク上のファイルの文字列パスです。
オプションのown
パラメータは、ワークアイテムがそのファイルを所有するかどうかを示します。
PDGは、ディスクから出力ファイルを削除する時にこのパラメータを使用します。
addOutputFiles(paths, tag="", checksums=[], own=True)
指定したファイルタグを持つ出力ファイルのリストをワークアイテムに追加します。
paths
は、ディスク上のファイルの文字列パスのリストで、checksums
は各ファイルのチェックサム値のリストです。
checksums
リストが空っぽの場合、デフォルト値の0
がすべてのファイルで使用されます。
tag
には、すべてのファイルパスで使用される単一文字列値、または、paths
リストの呼応する値にマッピングされた文字列値のリストのどちらかを指定することができます。
オプションのown
パラメータは、ワークアイテムがそのファイルを所有するかどうかを示します。
PDGは、ディスクから出力ファイルを削除する時にこのパラメータを使用します。
このメソッドは、大量のファイルのリストに対してループでpdg.WorkItem.addOutputFileをコールするよりも効率が良いです。
addResultData(path, tag="", checksum=0, own=True)
このメソッドは廃止されました。代わりにpdg.WorkItem.addOutputFileを使用してください。
addLog(log_type, message, stamp=True)
指定したpdg.workItemLogTypeのログメッセージをワークアイテムの内部In-Processログに追加します。
これは、addError
やaddMessage
などの特殊なログメソッドの汎用バージョンです。
addWarning(warning_message, timestam=True)
警告メッセージをワークアイテムの内部In-Processログに追加します。
timestamp
がTrue
の場合、ログメッセージの頭に現在のタイムスタンプが付きます。
cancel()
ワークアイテムが既にスケジューラによってスケジュールが組まれている場合、そのワークアイテムのクックをキャンセルします。 ワークアイテムがまだスケジュールに組まれていない場合、そのワークアイテムに関連付けられているスケジューラによって処理される時に最終的にそのクックがキャンセルされます。
checkSubItem()
→ bool
ワークアイテムのクックの準備が整っていればTrue
、そうでないならFalse
を返し、そのワークアイテムの依存関係が失敗すれば例外を投げます。
このメソッドは、バッチの一部であるワークアイテムにのみ有効です。
clearEnvironment()
ワークアイテムの環境をクリアして、親ワークアイテムから環境変数を継承しないようにします。
このメソッドは廃止されました。
代わりにpdg.attribFlag.EnvExport
フラグが設定されたアトリビュートを削除してください。
clearExpectedOutputFiles()
ワークアイテムから、必要とされる出力ファイルをクリアします。
clearExpectedOutputs()
このメソッドは廃止されました。代わりにpdg.WorkItem.clearExpectedOutputFilesを使用してください。
clearOutputFiles()
ワークアイテム上の出力ファイルすべてをクリアします。
clearResultData()
このメソッドは廃止されました。代わりにpdg.WorkItem.clearOutputFilesを使用してください。
cookSubItem(state=pdg.workItemState.CookedSuccess, duration=0)
ワークアイテムがIn-Processでクックされているバッチサブアイテムであれば、このメソッドを使用することで、そのワークアイテムが完了したことをPDGに伝えることができます。
そうすることで、そのワークアイテムに依存している下流のタスクの処理を開始することができます。
state
引数には、pdg.workItemState列挙型から完了状態のどれかを指定してください。
オプションのduration
引数は、ワークアイテムのクック期間を秒で指定します。
In-Processでクックされていないワークアイテム、または、バッチでクックされていないワークアイテムに対してこのメソッドをコールすると、例外が引き起こされます。
cookWarning(message)
このワークアイテムを所有しているノードに警告メッセージを追加します。
createJSONPatch(pretty_print=False)
→ str
プロセス外クック中に出力をレポートできるようにするために、ワークアイテムに追加されたアトリビュートと出力を含んだJSONオブジェクトを作成します。 このJSONデータは文字列として返されます。
dirty(delete, remove_outputs)
ワークアイテムをDirty(変更あり)にします。delete
をTrue
に設定すると、そのワークアイテムが削除されます。
remove_outputs
がTrue
の場合、このワークアイテムで生成されたディスク上の出力ファイルも削除されます。
ワークアイテムは、そのワークアイテムがアクティブに評価されている場合、または、Pythonコードをコールしたノードがそのワークアイテムを所有していない場合には、PythonからそのワークアイテムをDirty(変更あり)にすることはできません。 例えば、Python Processor TOP内の上流のワークアイテムまたはPython Script TOPで評価されているワークアイテムをDirty(変更あり)にしようとするのは無効です。
firstOutputFileForTag(tag)
→ str
指定したタグを持つ最初の出力のファイルパスを返します。
firstResultDataForTag(tag)
→ str
このメソッドは廃止されました。代わりにpdg.WorkItem.firstOutputFileForTagを使用してください。
envLookup(key)
→ int
, float
, or str
ワークアイテムの環境変数の値を返します。
このメソッドは廃止されました。
pdg.WorkItem.attribを使ってアトリビュートを検索し、pdg.attribType.EnvExport
フラグをチェックしてください。
hasEnvironmentVar(name)
→ bool
ワークアイテムに指定した環境変数が定義されいればTrue
を、そうでないならFalse
を返します。
この関数は廃止されました。
今では環境変数はアトリビュートとして実装されているので、アトリビュートを検索することで環境変数をチェックし、そのアトリビュートにpdg.attribFlag.EnvExport
フラグが設定されているかチェックすることができます。
hasDependency(work_item)
→ bool
このワークアイテムが他のワークアイテムに依存している場合はTrue
を返します。
invalidateCache()
このワークアイテムとその下流の依存関係のファイルキャッシュを無効にします。 これによって、キャッシュファイルがディスク上に存在していたとしても、キャッシュモードがAutomaticに設定されているノード内のワークアイテムが再クックされます。
localizePath(file_path)
→ str
ワークアイテムに関連付けられているスケジューラを使用して、任意のファイルパスをローカル化します。
loadJSONFile(file_path)
→ pdg.WorkItem
Static method
指定したJSONファイルパスからワークアイテムを読み込みます。
loadJSONString(json_string)
→ pdg.WorkItem
Static method
指定したJSON文字列データからワークアイテムを読み込みます。
loopBegin(int)
→ pdg.WorkItem
指定したループ深さにおけるループ開始親アイテムを返します。このアイテムがループ内に存在しない、または、深さが範囲外の場合はNone
を返します。
makeActive()
→ pdg.ActiveItemBlock
Pythonコンテキストマネージャを使用してパラメータを評価できるようにこのワークアイテムをアクティブにします。
このコンテキストマネージャブロックの存続期間中に評価されるすべてのパラメータは、@attribute
またはpdgattribute
関数値を計算する時にこのワークアイテムを使用します。
例:
with item.makeActive(): val = item.node["parm"].evaluateString()
numericAttribute(str)
→ int
or float
指定したアトリビュート文字列のアトリビュート値を返します。
ここには、foo
のようなアトリビュート名、または、foo.x
やfoo.2
のようにアトリビュート名とコンポーネントの接尾辞を指定することができます。
このメソッドは廃止されました。
代わりにitem.attrib(name)
を使ってアトリビュートを検索してattrib.asString()
をコールしてください。
outputFilesForTag(tag)
→ list
of pdg.File
指定したタグの出力ファイルエントリーを返します。 この出力ファイルはpdg.Fileオブジェクトとして返されます。
platformCommand(platform=pdg.platform.Undefined)
→ str
指定したpdg.platformのプラットフォーム固有のコマンドライン文字列を返します。
platform
を指定しなかった場合、現在のプラットフォームのコマンドが返されます。
prepareDirty(should_delete)
→ pdg.WorkItemDirty
ワークアイテムとその依存関係をDirty(変更あり)にする準備をしますが、グラフにはその操作を適用しません。 代わりに、そのDirty操作は後でグラフに適用できるようにpdg.WorkItemDirtyインスタンスに格納されます。
removeEventHandler(handler)
ワークアイテムからイベントハンドラーを削除します。
removeAllEventHandlers()
ワークアイテムからすべてのイベントハンドラーを削除します。
resultDataForTag(tag)
→ list
of pdg.File
このメソッドは廃止されました。代わりにpdg.WorkItem.outputFilesForTagを使用してください。
saveArrayJSONFile(file_path, work_items, pretty_print=False, global_attributes=False)
→ bool
Static method
ワークアイテムのリストをJSONファイルに保存し、成功すればTrue
を返します。
このメソッドは、file_path
内の中間ディレクトリがまだ存在していない場合、そのディレクトリの作成を試みます。
アクセス権限の問題やドライブがアクセス不可などが原因で中間ディレクトリの作成に失敗すると、このメソッドは即座にFalse
を返します。
saveArrayJSONString(work_items, pretty_print=False, global_attributes=False)
→ str
Static method
ワークアイテムのリストをJSONに保存し、それを文字列として返します。
saveJSONFile(file_path, pretty_print=False, global_attributes=False)
→ bool
ワークアイテムをJSONファイルに保存し、成功するとTrue
を返します。
このメソッドは、file_path
内の中間ディレクトリがまだ存在していない場合、そのディレクトリの作成を試みます。
アクセス権限の問題やドライブがアクセス不可などが原因で中間ディレクトリの作成に失敗すると、このメソッドは即座にFalse
を返します。
saveJSONString(pretty_print=False, global_attributes=False)
→ str
ワークアイテムをJSONに保存し、それを文字列として返します。
serializeData()
→ str
ワークアイテムのデータを文字列にシリアライズします。
serializeDataToFile(filepath)
ワークアイテムのデータをファイルにシリアライズします。
setCommand(command, shell=False)
ワークアイテムのコマンド値に、指定したコマンド文字列を設定します。
shell
をTrue
に設定することで、可能であればシステムシェルでワークアイテムを実行するようにスケジューラに伝えることができます。
例えば、ワークアイテムがLocal Schedulerを使用して実行されると、そのスケジューラは、ワークアイテムのワーカープロセスをSpawn(生成)する際にshell=True
引数を渡します。
システムシェルではコマンド文字列が実行されるので、環境変数とそのシェルが対応している構文機能を使用することができます。
しかし、シェル機能に依存させてしまうと、ワークアイテムのコマンド文字列がマルチプラットフォームで動作しなくなってしまうことになります。
setCookPercent(cook_percent: float)
ワークアイテムの完了率を更新し、その更新をリッスンできるイベントを発行します。
このイベントのpdg.EventTypeはWorkItemSetCookPercent
です。
cook_percent
: ワークアイテムの新しい完了率。
0
は開始されていないことを意味し、100
は完了を意味します。
setCustomState(custom_state)
ワークアイテムにカスタムステート文字列を設定します。 この文字列は、ワークアイテムアトリビュートパネル内の通常のステートの後に表示されます。 カスタムステートは、例えばワークアイテムがDirtyまたはクック終了になったことでワークアイテムのクック状態が変わる度にクリアされます。
setFrame(frame, step=1.0)
ワークアイテムにフレーム、オプションでフレームステップサイズを設定します。
setIsPostCook(is_postcook)
このワークアイテムがクックを終了した後にonPostCookTask
コールバックを実行するどうかを設定します。
このコールバックは、このワークアイテムを所有しているノードでonPostCookTask
実装が定義されている場合にのみ実行されます。
setLabel(label)
ワークアイテムに説明的なラベルを設定します。 このラベル文字列は固有である必要がないので、スペースや他の特殊文字を含めることができます。
setLoopInfo(loop_iteration, loop_number, loop_size, loop_lock=-1)
ワークアイテムにループの反復、回数、サイズを設定します。 これは、Feedback Beginノードの中でのみコールするのが安全です。
setPlatformCommands(linux_cmd, mac_cmd, windows_cmd, shell=False)
Linux、Windows、Macのプラットフォーム固有のコマンドライン文字列を設定します。
startSubItem(wait=True)
ワークアイテムがIn-Processでクックされているバッチサブアイテムであれば、このメソッドは、そのサブアイテムをクック状態に更新します。 デフォルトでは、このメソッドはサブアイテムのディペンデンシーもクックされるのを待機します。 これは、バッチがすべての入力アイテムを待機せずに即座に開始されるように構成するのに必要です。
このメソッドをコールすると、ワークアイテムがクックの準備が整った時にバッチの親に対してpdg.BatchWorkItem.setActiveBatchIndexも自動的にコールされます。
In-Processでクックされていないワークアイテム、または、バッチでクックされていないワークアイテムに対してこのメソッドをコールすると、例外が引き起こされます。
stringAttribute(name)
→ str
ワークアイテム上の文字列アトリビュート値を照会します。
ここには、foo
のようなアトリビュート名、または、foo.x
のようにアトリビュート名とコンポーネントの接尾辞を指定することができます。
このメソッドは廃止されました。
代わりにitem.attrib(name)
を使ってアトリビュートを検索してattrib.asString()
をコールしてください。
transferFiles(update_cache=True)
→ bool
pdg.attribFlag.TransferアトビリュートフラグがTrue
に設定されたワークアイテムファイルアトリビュートに対して手動でファイル転送ロジックを実行します。
カスタムファイル転送ハンドラーが登録されていれば、そのハンドラーを使用してファイルがコピーされ、登録されていなければ、デフォルトスケジューラのロジックを使用してファイルが作業ディレクトリにコピーされます。
この関数は、すべてのファイルのコピーに成功するとTrue
、どれかエラーが起きるとFalse
を返します。
update_cache
がTrue
の場合、ファイル転送時に、pdg.attribFlag.InputFileが設定されたファイルアトリビュートがチェックされます。
入力ファイルアトリビュートは、それを含むNodeのテーブルに追加され、今後のクック中に追跡されます。
クック中に入力ファイルが修正された場合、このワークアイテムの出力キャッシュも無効になります。
update_cache
がFalse
の場合、ディスク上のファイルが更新されても、ワークアイテムのキャッシュは無効になりません。
updateOutputFile(index, file, tag, checksum, own)
指定したインデックスの出力ファイルを更新します。
updateResultData(index, file, tag, checksum, own)
このメソッドは廃止されました。代わりにpdg.WorkItem.updateOutputFileを使用してください。
batchIndex
: int
Property
ワークアイテムがバッチ内のワークアイテムの場合、このプロパティには、そのバッチ内でのそのワークアイテムのインデックスが含まれます。
batchParent
: pdg.BatchWorkItem
Property
このワークアイテムがバッチ内のワークアイテムの場合はそのバッチの親を返します。バッチで ない 場合はNone
を返します。
command
: str
Property
ワークアイテムのコマンド文字列。
cookType
: pdg.workItemCookType
Property
ワークアイテムのクックタイプ。 これは、ワークアイテムがIn-ProcessまたはOut-of-Processのどちらで実行されているかを判断します。
cookDuration
: int
Property
ワークアイテムがクックされた際のそのワークアイテムのクック期間を示したパフォーマンス統計情報を返します。
cookPercent
: float
Property
ワークアイテムアトリビュートパネルで表示されるワークアイテムのクックの進捗状況(パーセンテージ)。
0
の場合、まだ開始されていないことを意味します。
100
の場合、完了したことを意味します。
pdg.WorkItem.setCookPercentを使用して設定します。
設定しなかった場合、-1
です。
customState
: str
Property
pdg.WorkItem.setCustomStateを使用して設定されたワークアイテムのカスタムステート。
data
: pdg.WorkItemData
Property
ワークアイテムのデータオブジェクト。ここには、そのワークアイテムのアトリビュート値が格納されています。
dependencies
: list
of pdg.WorkItem
Property
このワークアイテムが依存しているワークアイテムのリスト。
dependents
: list
of pdg.WorkItem
Property
このワークアイテムに依存しているワークアイテムのリスト。
dependencyState
: pdg.workItemState
Property
すべての依存関係の中で 最低 にクックされた依存関係状態を返します。
すべての依存関係のクックが成功すると、このプロパティはpdg.workItemState.CookedSuccess
に設定されます。
どれかの依存関係がキャンセルされると、dependencyState
は失敗がない限りはpdg.workItemState.CookedCancel
になりますが、どれが失敗するとpdg.workItemState.CookedFail
になります。
environment
: dict
of int
, float
, and str
Property
ワークアイテムの環境変数を変数名と値でマップした辞書。
executionType
: pdg.workItemExecutionType
Property
ワークアイテムの実行タイプ。 例えば、通常のワークアイテムなのか、または、シミュレーショントラッカーのような長時間実行型のプロセスなのかどうか。
expectedInputFiles
: list
of pdg.File
Property
必要ファイルを含むすべての入力のリスト。これらはpdg.Fileオブジェクトとして格納されています。
expectedOutputFiles
: list
of pdg.File
Property
ワークアイテムが必要とする出力ファイルのリスト。 これらのファイルがpdg.Fileオブジェクトとして格納されます。
expectedInputResultData
: list
of pdg.File
Property
このプロパティは廃止されました。代わりにpdg.WorkItem.expectedInputFilesを使用してください。
expectedResultData
: list
of pdg.File
Property
このプロパティは廃止されました。代わりにpdg.WorkItem.expectedOutputFilesを使用してください。
frame
: float
Property
ワークアイテムに関係のあるフレーム値。
frameStep
: float
Property
ワークアイテムに関係のあるフレームステップサイズ。
hasCommand
: bool
Property
ワークアイテムにコマンドセットがあれば、このプロパティはTrue
に設定されます。
なければ、このプロパティはFalse
になります。
hasCookPercent
: bool
Property
ワークアイテムにクック進捗率があれば、このプロパティはTrue
に設定されます。
なければ、このプロパティはFalse
になります。
hasCustomState
: bool
Property
ワークアイテムにカスタムステートがあれば、このプロパティはTrue
に設定されます。
なければ、このプロパティはFalse
になります。
hasFrame
: bool
Property
ワークアイテムにフレームが設定されている場合はTrue
に設定され、そうでない場合はFalse
に設定されます。
hasWarnings
: bool
Property
ワークアイテムの内部ログバッファに最低でも1つの警告メッセージがあれば、このプロパティはTrue
に設定されます。
なければ、このプロパティはFalse
になります。
hasLabel
: bool
Property
ワークアイテムにカスタムラベルがあれば、このプロパティはTrue
に設定されます。
なければ、このプロパティはFalse
になります。
hasPlatformCommand
: bool
Property
ワークアイテムにプラットフォーム固有のコマンドセットがあれば、このプロパティはTrue
に設定されます。
なければ、このプロパティはFalse
になります。
id
: int
Property
ワークアイテムのID。これは、そのワークアイテムを含んだpdg.GraphContext内で固有です。
index
: index
Property
ワークアイテムのソート/順番のインデックス。
inputFiles
: list
of pdg.File
Property
このワークアイテムの入力ファイルのリスト。このワークアイテムのすべての依存関係から収集された出力ファイルがリストに入ります。
inputResultData
: list
of pdg.File
Property
このプロパティは廃止されました。代わりにpdg.WorkItem.inputFilesを使用してください。
isBatch
: bool
Property
ワークアイテムがpdg.BatchWorkItemなら、このプロパティはTrue
に設定されます。
そうでないなら、False
になります。
isCooked
: bool
Property
ワークアイテムがクック状態ならTrue
、そうでないならFalse
に設定されます。
isFrozen
: bool
Property
ワークアイテムがフリーズされている場合(ロックされたノード内にワークアイテムがある場合)、True
に設定されます。
isInProcess
: bool
Property
このワークアイテムがアクティブスケジューラを使用して子プロセスとしてクックされているのではなくIn-ProcessでクックされていればTrue
に設定されます。
それ以外の場合はFalse
に設定されます。
isNoGenerate
: bool
Property
このワークアイテムが下流のノードで子アイテムを何も生成して いない 場合はTrue
に設定されます。
isOutOfProcess
: bool
Property
このワークアイテムがOut-Of-ProcessでクックされていればTrue
に設定されます。
Note
ワークアイテムがまったくクックされて いない 場合、isInProcess
とisOutOfProcess
のどちらともFalse
が返されます。
例えば、Attribute Create TOPノード内のワークアイテムがクック されていなければ 、どちらともFalse
を返します。
ワークアイテムのcookType
プロパティは、名前のとおりでそのワークアイテムのクック方法を示したpdg.workItemCookType列挙エントリーを返します。
isPartition
: bool
Property
このワークアイテムが静的または動的なパーティションの場合はTrue
に設定されます。
isPostCook
: bool
Property
このワークアイテムが完了としてマークされた後にPostCookフックを実行する場合はTrue
に設定され、そうでない場合はFalse
に設定されます。
isStatic
: bool
Property
ワークアイテムが静的(これが通常のワークアイテム)の場合はTrue
に設定されます。
isSuccessful
: bool
Property
クックに成功したワークアイテムの状態がpdg.workItemState.CookedSuccess
またはpdg.workItemState.CookedCache
の場合にTrue
に設定されます。
isUnsuccessful
: bool
Property
クックに成功しなかったワークアイテムの状態がpdg.workItemState.CookedCancel
またはpdg.workItemState.CookedFail
の場合にTrue
に設定されます。
label
: str
Property
ワークアイテムのラベルを返します。
ワークアイテムにラベルがなければ、代わりにこのプロパティはname
値を返します。
loopDepth
: int
Property
ワークアイテムがループブロックの一部の場合、そのワークアイテムの入れ子化されたループの深さ。 これは0から始まります。 ワークアイテムがループの中にない場合、このプロパティは-1に設定されます。
loopIteration
: int
Property
ワークアイテムがループブロックの一部の場合、ワークアイテムの反復回数。 ワークアイテムがループの中にない場合、このプロパティは-1に設定されます。
loopLock
: int
Property
ループワークアイテムのサービスクライアントのロックに使用されているワークアイテムのID。 このワークアイテムがサービスベースのフィードバックループ内にない場合は、このプロパティは-1に設定されます。
loopNumber
: int
Property
ワークアイテムがループブロックの一部の場合、ワークアイテムのループ番号。 フィードバックループブロックには、独立した複数のワークアイテムグループを含めることができ、各グループが自身のループ番号を持ちます。 同じ番号のループ内のワークアイテムは、0からループサイズまでの固有の反復回数を持ちます。 ワークアイテムがループの中にない場合、このプロパティは-1に設定されます。
loopSize
: int
Property
ワークアイテムを含んだループのサイズ。ワークアイテムがループブロックの中にない場合は-1です。
logMessages
: str
Property
ワークアイテムのIn-ProcessログのRaw文字列データ。 このデータには、pdg.WorkItem.addMessageのコールで追加されたメッセージが含まれています。
name
: str
Property
ワークアイテムの固有名。これは、pdg.GraphContext内では固有ではありません。
partitionItems
: list
of pdg.WorkItem
Property
ワークアイテムがパーティションの場合、このリストには、そのパーティションが依存しているワークアイテムが格納されています。 そうでない場合、このリストは空っぽです。
priority
: int
Property
ワークアイテムの優先度。0が最高優先度です。
resultData
: list
of pdg.File
Property
このプロパティは廃止されました。代わりにpdg.WorkItem.outputFilesを使用してください。
shouldRunInShell
: bool
Property
ワークアイテムコマンドをスケジューラで実行する際にそれをシステムシェルで実行するかどうか。 現在のところ、これはLocal Schedulerにのみ対応しています。
tempDir
: str
Property
このワークアイテムを所有しているノードに割り当てられているスケジューラに関連付けられている一時ファイルディレクトリ。
Methods from pdg.AttributeOwner ¶
addAttrib(name, type:
pdg.attribType, overwrite=
pdg.attribOverwrite.Match, error_level=
pdg.attribErrorLevel.Error)
→ pdg.AttributeFile or pdg.AttributeFloat or pdg.AttributeInt or pdg.AttributePyObject or pdg.AttributeString
指定した名前とタイプのアトリビュートを追加します。
オプションのoverwrite
引数にpdg.attribOverwrite列挙の値を設定することで、オブジェクトに既に同じname
のアトリビュートが存在した場合の挙動を制御することができます。
デフォルトでは、同じ名前で同じタイプのアトリビュートが既に存在した場合、既存のアトリビュートが返されます。
同じ名前で異なるタイプのアトリビュートが既に存在した場合、例外が発生します。
overwrite
引数にpdg.attribOverwrite.Alwaysを設定した場合、既存のアトリビュートが削除され、新しいtype
のアトリビュートに置換されます。
オプションのerror_level
引数を使用することで、PDGハンドルが失敗した場合の挙動を制御することができます。
デフォルトでは、失敗の原因を示したメッセージを出して例外が発生します。
代わりにpdg.attribErrorLevel.Warn列挙値を渡して、このオブジェクトがワークアイテムだった場合、そのワークアイテムを所有するノードにエラーメッセージが警告として追加されます。
または、pdg.attribErrorLevel.Quiet列挙値を渡すと、すべてのエラー報告が抑止されます。
error_level
引数にError
以外の値を設定した場合、このメソッドは、アトリビュートを追加できなかった時にNone
を返します。
attrib(name)
→ pdg.AttributeFile or pdg.AttributeFloat or pdg.AttributeInt or pdg.AttributePyObject or pdg.AttributeString
指定した名前のアトリビュートを返します。そのようなアトリビュートが存在しなければNone
を返します。
このアトリビュートは、pdg.attribTypeに載せているアトリビュートタイプのどれかになります。
このアトリビュートをattrib_owner.attrib[name]
として記述することもできます。
attribArray(name)
→ list
of int
, float
, str
or pdg.File
アトリビュートに格納されている配列を返します。
attribHash(include_internal=True, include_unowned=True, only_static=False)
→ int
すべてのアトリビュート値に基づいて計算されたハッシュ値を返します。 これは、クック間でオブジェクトを区別するのに役立ちます。
include_internal
引数は、そのハッシュ処理においてPDG自体(例えば、ワークアイテムの入力/出力ファイル、または、コマンド文字列)で定義されている内部アトリビュートを含めるのかどうかを決めます。
これがワークアイテムで、include_unowned
引数がFalse
の場合、そのハッシュ処理は、そのワークアイテムを所有しているノードによって修正または追加されたアトリビュートのみを考慮します。
それ以外の場合、すべてのアトリビュートが考慮されます。
これがワークアイテムで、only_static
引数がTrue
の場合、そのハッシュ処理は、そのワークアイテムが生成された時に作成されたアトリビュートのみを考慮します。
そのワークアイテムがスケジュールに組まれた時やクックされた時に追加/修正されたアトリビュートは、そのハッシュ処理には考慮されません。
attribMatch(pattern)
→ list
of str
指定したpdg.AttributePatternインスタンスにマッチしたアトリビュートの名前のリストを返します。
attribNames(type=pdg.attribType.Undefined)
→ list
of str
type
がpdg.attribType.Undefinedに設定されている場合、すべてのアトリビュートの名前のリストを返します。
それ以外の場合、指定したタイプのアトリビュートの名前のリストを返します。
attribValue(name, index=0)
→ int
, float
, str
or pdg.File
指定したインデックスにおけるアトリビュートの値を返します。
このアトリビュートをattrib_owner[name][index]
として記述することもできます。
attribValues(type=pdg.attribType.Undefined)
→ dict
of list
of int
, float
, and str
type
がpdg.attribType.Undefinedに設定されている場合、すべてのアトリビュート名とその値のマップを返します。
それ以外の場合、指定したタイプのすべてのアトリビュート名とその値のマップを返します。
attribType(name)
→ pdg.attribType
指定した名前のアトリビュートのタイプを返します。
その名前のアトリビュートが存在しなかった場合はpdg.attribType.Undefined
を返します。
clearAttribs()
すべてのアトリビュートをクリアして削除します。
eraseAttrib(name)
指定した名前のアトリビュートを消去します。
fileAttribValue(name, index=0)
→ pdg.File
指定したインデックスにおけるファイルアトリビュート値を返します。
floatAttribArray(name)
→ list
of float
浮動小数点アトリビュート配列を返します。
floatAttribValue(name, index=0)
→ float
指定したインデックスにおける浮動小数点アトリビュート値を返します。
hasAttrib(name)
→ bool
このオブジェクトが指定した名前のアトリビュートを持っていればTrue
を返します。
intAttribArray(name)
→ list
of int
整数アトリビュート配列を返します。
intAttribValue(name, index=0)
→ int
指定したインデックスにおける整数アトリビュート値を返します。
loadAttributes(file_path, collision_strategy)
→ bool
指定したJSONファイルからアトリビュートデータをこのオブジェクトに読み込みます。
collision_strategy
引数には、pdg.attribCollisionStrategyのどれかの列挙値を指定してください。
lockAttributes()
→ pdg.LockAttributesBlock
コンテキストマネージャを使用して、このアトリビュートをロックします。 コンテキストマネージャを使用している間は、他のスレッドがアトリビュートを修正してしまわないか心配することなく、そのアトリビュートを安全に修正することができます。
例:
with attrib_owner.lockAttributes(): attrib_owner.setIntAttrib("example", 10)
Note
onGenerate
やonPartition
などのPDGノードコールバック内でワークアイテムに対してこのメソッドを コールしないでください 。
PDGノードは、コールバックがすべてのワークアイテムに安全にアクセスできることを既に保証しています。
numAttribs(type=pdg.attribType.Undefined)
→ int
type
がpdg.attribType.Undefinedに設定されている場合、マップ内のアトリビュートの数を返します。
それ以外の場合、指定したタイプのアトリビュートの数を返します。
pyObjectAttribValue(name)
→ object
指定したアトリビュートに格納されているPythonオブジェクトを返します。
renameAttrib(src_name, dst_name, overwrite_existing=False)
→ bool
src_name
というアトリビュート名をdst_name
に変更します。
saveAttributes(file_path)
→ bool
このオブジェクトに格納されているアトリビュートデータをJSONとして、指定したファイルパスに保存します。
そのファイルパスが.gz
で終わっている場合、そのファイルはGZipを使用して圧縮されます。
それ以外の場合、そのファイルはプレーンテキストのJSONとして保存されます。
setAttribFlag(name, flag, value=True)
指定したアトリビュートに対してpdg.attribFlagを設定またはクリアします。
setFileAttrib(name, value, index=0, overwrite=
pdg.attribOverwrite.Match)
指定したインデックスにファイルアトリビュート値を設定します。 このアトリビュートが 存在しなかった 場合には作成されます。
オプションのoverwrite
引数は、同じname
で異なるタイプのアトリビュートが既に存在した場合の挙動を決めます。
詳細は、pdg.AttributeOwner.addAttribを参照してください。
setFloatAttrib(name, value, index=0, overwrite=
pdg.attribOverwrite.Match)
指定したインデックスに浮動小数点アトリビュート値を設定します。 このアトリビュートが 存在しなかった 場合には作成されます。
オプションのoverwrite
引数は、同じname
で異なるタイプのアトリビュートが既に存在した場合の挙動を決めます。
詳細は、pdg.AttributeOwner.addAttribを参照してください。
setIntAttrib(name, value, index=0, overwrite=
pdg.attribOverwrite.Match)
指定したインデックスに整数アトリビュート値を設定します。 このアトリビュートが 存在しなかった 場合には作成されます。
オプションのoverwrite
引数は、同じname
で異なるタイプのアトリビュートが既に存在した場合の挙動を決めます。
詳細は、pdg.AttributeOwner.addAttribを参照してください。
setPyObjectAttrib(name, value, overwrite=
pdg.attribOverwrite.Match)
Pythonオブジェクトアトリビュート値を設定します。 このアトリビュートは、そのオブジェクト上の参照カウントを増やして、そのアトリビュート自体が存在している間はそのオブジェクトが存在することを保証します。
オプションのoverwrite
引数は、同じname
で異なるタイプのアトリビュートが既に存在した場合の挙動を決めます。
詳細は、pdg.AttributeOwner.addAttribを参照してください。
setStringAttrib(name, value, index=0, overwrite=
pdg.attribOverwrite.Match)
指定したインデックスに文字列アトリビュート値を設定します。 このアトリビュートが 存在しなかった 場合には作成されます。
オプションのoverwrite
引数は、同じname
で異なるタイプのアトリビュートが既に存在した場合の挙動を決めます。
詳細は、pdg.AttributeOwner.addAttribを参照してください。
stringAttribArray(name)
→ list
of str
文字列アトリビュート配列を返します。
stringAttribValue(name, index=0)
→ str
指定したインデックスの文字列アトリビュート値を返します。
timeDependentAttribs()
→ list
of str
時間依存のアトリビュートのリストを返します。 このメソッドは、バッチの親の共有アトリビュートを所有しているバッチ内のワークアイテムに対して主に使用します。