複数のOutputSlotから単一のInputSlotへの接続
Posted: 2017/07/25 08:36
いつもお世話になっています。
Subjectの件、技術的に可能でしたら実装をご検討いただけないでしょうか。
Subjectの件、技術的に可能でしたら実装をご検討いただけないでしょうか。
更新タイムスタンプは現在保持していないため取得できません。ooee wrote:ひとつ気になったことがあるのですが、InputSlotの値が更新されたタイミング(時間)の取得は可能でしょうか?
もし可能なら、InputSlotの配列から一番新しく更新された値を取り出してOutputSlotに入れるというスクリプトを間にかませば、Subjectの内容が実現できそうだと思ったもので。
Code: Select all
[System.Serializable]
public class TimestampInt
{
public int value;
public float timestamp;
public TimestampInt(int value)
{
this.value = value;
this.timestamp = Time.time;
}
}
[System.Serializable]
public class OutputSlotTimestampInt : OutputSlot<TimestampInt>
{
}
[System.Serializable]
public class InputSlotTimestampInt : InputSlot<TimestampInt>
{
}
Code: Select all
public class TimestampIntBehaviour : StateBehaviour
{
public InputSlotTimestampInt input;
public OutputSlotTimestampInt output;
public override void OnStateBegin()
{
int value = 0;
TimestampInt data = null;
if (input.GetValue(ref data))
{
Debug.LogFormat("{0} : {1}", data.value, data.timestamp);
value = data.value;
}
output.SetValue(new TimestampInt(value+1));
}
}