Exemple #1
0
        //called when data for any output pin is requested
        public void Evaluate(int SpreadMax)
        {
            FNameOutput.SliceCount  = SpreadMax;
            FEntryOutput.SliceCount = SpreadMax;

            if (FInput.IsChanged)
            {
                for (int i = 0; i < SpreadMax; i++)
                {
                    var enumname = FInput[i].Name;
                    FNameOutput[i] = enumname;

                    var entries = new List <string>();

                    int enumcount = EnumManager.GetEnumEntryCount(enumname);

                    for (int j = 0; j < enumcount; j++)
                    {
                        entries.Add(EnumManager.GetEnumEntry(enumname, j));
                    }

                    FEntryOutput[i].AssignFrom(entries);
                }
            }
        }
Exemple #2
0
        InterimTextureInfo()
        {
            var count = EnumManager.GetEnumEntryCount("TextureFormat");

            for (int i = 0; i < count; i++)
            {
                var entry = EnumManager.GetEnumEntry("TextureFormat", i);
                if (entry.Name == "A8R8G8B8")
                {
                    FEnumEntry = entry;
                    break;
                }
            }
        }
Exemple #3
0
        //called when data for any output pin is requested
        public void Evaluate(int SpreadMax)
        {
            FNameOutput.SliceCount  = SpreadMax;
            FEntryOutput.SliceCount = SpreadMax;

            var anyEnumChanged = false;
            var inputEnums     = FInput.ToSpread().ToList();

            foreach (var changedEnum in FChangedEnums)
            {
                if (inputEnums.Any(e => e.Name == changedEnum))
                {
                    anyEnumChanged = true;
                    break;
                }
            }

            if (FInput.IsChanged || anyEnumChanged)
            {
                FChangedEnums.Clear();

                for (int i = 0; i < SpreadMax; i++)
                {
                    var enumname = FInput[i].Name;
                    FNameOutput[i] = enumname;

                    var entries = new List <string>();

                    int enumcount = EnumManager.GetEnumEntryCount(enumname);

                    for (int j = 0; j < enumcount; j++)
                    {
                        entries.Add(EnumManager.GetEnumEntry(enumname, j));
                    }

                    FEntryOutput[i].AssignFrom(entries);
                }
            }
        }