public void Add(string name, RNdObject array, Components.State.MemoryModeSet mode) { Parameter.Add(new ParameterSet() { Instance = new Function.ComputeParameter(name, array.Data, mode), Infomation = new ParameterSet.Infomations(array), }); }
private void ParamOfRNdMatrix(RNdObject obj) { if (Type != typeof(RNdMatrix)) { return; } var matrix = (RNdMatrix)obj; AreaSize = matrix.AreaSize; Channels = matrix.Channels; Width = matrix.Width; Height = matrix.Height; ArrayLength = Channels * AreaSize; CenterX = Width / 2; CenterY = Height / 2; }
private void ParamOfRNdArray(RNdObject obj) { if (Type != typeof(RNdArray)) { return; } var array = (RNdArray)obj; ArrayLength = array.Length; AreaSize = ArrayLength; Channels = 1; Width = 1; Height = ArrayLength; CenterX = Width / 2; CenterY = Height / 2; }
public ComputeParameter(string name, RNdObject data, Components.State.MemoryModeSet mode) { Name = name; Array = data; MemoryModeBase = mode; switch (mode) { case Components.State.MemoryModeSet.ReadOnly: MemoryMode = ComputeMemoryFlags.ReadOnly | ComputeMemoryFlags.CopyHostPointer; break; case Components.State.MemoryModeSet.WriteOnly: MemoryMode = ComputeMemoryFlags.WriteOnly | ComputeMemoryFlags.CopyHostPointer; break; case Components.State.MemoryModeSet.Parameter: MemoryMode = ComputeMemoryFlags.None; break; default: break; } }
public Infomations(RNdObject obj) { Type = obj.GetType(); ParamOfRNdArray(obj); ParamOfRNdMatrix(obj); }