Spaces:
Runtime error
Runtime error
File size: 2,885 Bytes
00437a9 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
using Photon.Deterministic;
using System;
namespace Quantum
{
public unsafe partial struct BTAgent
{
#region Int and FP Data
// Getter / Setters of node FP and Int32 data
public void AddFPData(Frame frame, FP fpValue)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
BTDataValue newDataValue = new BTDataValue();
*newDataValue.FPValue = fpValue;
nodesDataList.Add(newDataValue);
}
public void AddIntData(Frame frame, Int32 intValue)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
BTDataValue newDataValue = new BTDataValue();
*newDataValue.IntValue = intValue;
nodesDataList.Add(newDataValue);
}
public void SetFPData(Frame frame, FP value, Int32 index)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
*nodesDataList.GetPointer(index)->FPValue = value;
}
public void SetIntData(Frame frame, Int32 value, Int32 index)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
*nodesDataList.GetPointer(index)->IntValue = value;
}
public FP GetFPData(Frame frame, Int32 index)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
return *nodesDataList.GetPointer(index)->FPValue;
}
public Int32 GetIntData(Frame frame, Int32 index)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
return *nodesDataList.GetPointer(index)->IntValue;
}
#endregion
// -- THREADSAFE
#region THREADSAFE Int and FP Data
// Getter / Setters of node FP and Int32 data
public void AddFPData(FrameThreadSafe frame, FP fpValue)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
BTDataValue newDataValue = new BTDataValue();
*newDataValue.FPValue = fpValue;
nodesDataList.Add(newDataValue);
}
public void AddIntData(FrameThreadSafe frame, Int32 intValue)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
BTDataValue newDataValue = new BTDataValue();
*newDataValue.IntValue = intValue;
nodesDataList.Add(newDataValue);
}
public void SetFPData(FrameThreadSafe frame, FP value, Int32 index)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
*nodesDataList.GetPointer(index)->FPValue = value;
}
public void SetIntData(FrameThreadSafe frame, Int32 value, Int32 index)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
*nodesDataList.GetPointer(index)->IntValue = value;
}
public FP GetFPData(FrameThreadSafe frame, Int32 index)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
return *nodesDataList.GetPointer(index)->FPValue;
}
public Int32 GetIntData(FrameThreadSafe frame, Int32 index)
{
var nodesDataList = frame.ResolveList<BTDataValue>(BTDataValues);
return *nodesDataList.GetPointer(index)->IntValue;
}
#endregion
}
} |