ストレージオブジェクト
概要と主要な概念
ストレージオブジェクトとは、フローアイテムを保管するために使用される各種オブジェクトの親クラスです。フローアイテムは、スロットという2次元グリッド形式の保管場所に保管されます。これらのスロットは、ベイ番号、レベル番号、位置/スロット番号の順に整理されています。
ストレージオブジェクトは抽象クラスであるため、このクラスからインスタンスを直接作成することはありません。むしろ、ストレージオブジェクトは、ラック、フロアストレージ、グラビティフローラック、プッシュバックラック、ドライブインラッククラスの親クラスであるため、これらのいずれかのクラスのインスタンスを作成することで、本質的にストレージオブジェクトのインスタンスを作成することになります。
ストレージオブジェクトは固定リソースです。ただし、デフォルトでは、固定リソースの機能はオフになっています。有効にするには、[フロー]パネルを使用するか、「A」接続を使用して他の固定リソースを接続します。固定リソースロジックを有効にすると、ストレージオブジェクトは、フローアイテムを入力ポート経由で最大コンテンツの値に達するまで受け取ります。各フローアイテムがラックに入ると、ストレージオブジェクトは、そのアイテムについてMinimum Dwell Time関数を実行します。この関数は、そのフローアイテムの最短滞在時間を返します。ラックはその期間タイマーを起動します。タイマーが終了すると、ラックはフローアイテムをリリースします。
イベント
イベントの詳細については、「イベントリスニング」ページを参照してください。
ストレージオブジェクトは固定リソースであり、すべての固定リソースに共通の標準イベントを使用します。これらのイベントの説明については、「固定リソース - イベント」を参照してください。
ストレージオブジェクトには次の追加イベントがあります。
Minimum Dwell Time
このイベントは[Minimum Dwell Time]フィールドが評価されたときに発生します。ストレージオブジェクトの[固定リソースとして使用]チェックボックスがオンの場合にのみ評価されます。
次のパラメータがあります。
パラメータ | タイプ | 説明 |
---|---|---|
Item | オブジェクト | 入るアイテム。滞留時間が割り当てられます。 |
Port | 整数 | 入るアイテムの入力ポート番号 |
このイベントは指定されたアイテムの最短滞在時間を返します。
On End Dwell Time
このイベントは、アイテムが最短滞在時間に到達したときに発生します。このイベントの後、ストレージオブジェクトはアイテムをリリースします。ストレージオブジェクトの[固定リソースとして使用]チェックボックスがオンの場合にのみ評価されます。
次のパラメータがあります。
パラメータ | タイプ | 説明 |
---|---|---|
Item | オブジェクト | 滞留時間を完了したばかりのアイテム |
On Slot Assign
このイベントは、アイテムがこのオブジェクトの特定のスロットに割り当てられたときに発生します。つまり、アイテムのStorage.Item.assignedSlotプロパティが設定されたときです。
次のパラメータがあります。
パラメータ | タイプ | 説明 |
---|---|---|
Slot | Storage.Slot | 割り当てられたスロット |
Item | オブジェクト | 割り当てられたアイテム |
On Slot Entry
このイベントは、アイテムが特定のスロットに入ったときに発生します。基本的にエントリ時イベントと同じタイミングですが、スロットが割り当てられた後で実行されます。そのため、スロットはこのイベントのパラメータです。
次のパラメータがあります。
パラメータ | タイプ | 説明 |
---|---|---|
Slot | Storage.Slot | 関連付けられたスロット |
Item | オブジェクト | 入るアイテム |
On Slot Exit
このイベントは、アイテムが特定のスロットから出るときに発生します。基本的に終了時イベントと同じタイミングですが、出るスロットに明確に関連付けられている場合に実行されます。そのため、スロットはこのイベントのパラメータです。
次のパラメータがあります。
パラメータ | タイプ | 説明 |
---|---|---|
Slot | Storage.Slot | 関連付けられたスロット |
Item | オブジェクト | 出るアイテム |
Slot Assignment Strategy
このイベントは、各[Slot Assignment Strategy]フィールドが評価されるときに発生します。
次のパラメータがあります。
パラメータ | タイプ | 説明 |
---|---|---|
Item | ツリーノード | 入るアイテム。ベイまたはレベルが割り当てられます。 |
このフィールドの実行は、アイテムの正しい配置先スロットを検索するときと、Storage.Item.assignedSlotプロパティを設定してそのスロットにアイテムを割り当てるときに役立ちます。
状態
ストレージオブジェクトはどの状態も実装していません。コンテンツグラフを使用して統計を取得してください。
統計
ストレージオブジェクトはすべての固定リソースに共通の標準統計を使用します。これらの統計情報については、「固定リソース - 統計」を参照してください。
プロパティパネル
ストレージオブジェクトでは、次のプロパティパネルを使用します。
プロパティ
ストレージオブジェクトは、すべての固定リソースと、いくつかのプロパティを共有します。
ストレージオブジェクトは、さらに次のプロパティを使用します。
寸法プロパティ
ストレージオブジェクトは、その寸法に関するプロパティもいくつかサポートしています。これらのプロパティはベイ、レベル、スロットの数、それらのサイズ、パディングなどを定義します。オブジェクトのすべてのスロット、レベル、ベイが、そのプロパティについて同種なら、プロパティは単一の値として表すことができます。しかし、ベイ、レベル、スロット間に相違がある場合、そのプロパティの値は配列となります。
たとえば、NumLevelsプロパティについて考えてみます。ストレージオブジェクトに10のベイが含まれており、すべてのベイに5つのレベルがあるなら、オブジェクトのNumLevelsプロパティは5
という単一の値です。しかし、最初の5つのベイに3つのレベルがあり、後の5つのベイには6つのレベルがある場合、NumLevelsプロパティは配列となり、ベイごとに1つの要素が設定されます。この例では、NumLevelsの値は[3, 3, 3, 3, 3, 6, 6, 6, 6, 6]
になります。
NumLevelsプロパティは最大でも1次元の配列です。しかし、他のプロパティ(LevelSize、NumSlots、SlotSizeなど)は、ベイ、レベル、スロットが同種か異種かに応じて、2次元または3次元の配列になることがあります。
ストレージオブジェクトは、Dimensionsプロパティもサポートしています。これには、寸法に関連する他のすべてのプロパティが、マップに集約されて含まれます。
寸法に関連するプロパティには次のものがあります。
プロパティ |
---|
BaySize |
Dimensions |
LevelSize |
NumBays |
NumLevels |
NumSlots |
SlotPaddingBack |
SlotPaddingBottom |
SlotPaddingFront |
SlotPaddingLeft |
SlotPaddingRight |
SlotPaddingTop |
SlotSize |
SlotsPerBay |
StorableSlots |