Esempio n. 1
0
        public Parameter AddCustomParameter(string name, Type type, ParameterType param_type)
        {
            Parameter instance = (Parameter)ObjectBase.CreateInstance(type, name.IsNullOrEmpty() ? "new " + type.GetTypeName() : name);

            switch (param_type)
            {
            case ParameterType.None:
                variableParameters.Add(instance);
                inputParameters.Add(instance);
                outputParameters.Add(instance);
                return(instance);

            case ParameterType.Variable:
                variableParameters.Add(instance);
                return(instance);

            case ParameterType.Input:
                inputParameters.Add(instance);
                return(instance);

            case ParameterType.Output:
                outputParameters.Add(instance);
                return(instance);

            default:
                goto case ParameterType.None;
            }
        }
Esempio n. 2
0
 public void FixNullGraphInstace(bool add_default_nodes = false)
 {
     if (!m_graph)
     {
         m_graph = ObjectBase.CreateInstance <Graph>();
         if (add_default_nodes)
         {
             m_graph.AddNode <StartEvent>();
             m_graph.AddNode <UpdateEvent>(new Vector2(0.0f, 240.0f));
         }
         m_graph.OnGraphAdd();
     }
 }
Esempio n. 3
0
        public VariableObject <T> AddVariable <T>(int key, string name)
        {
            VariableObject v;

            if (properties.TryGetValue(key, out v))
            {
                v.name = name;
                return((VariableObject <T>)v);
            }
            VariableObject <T> instance = ObjectBase.CreateInstance <VariableObject <T> >(name);

            properties[key] = instance;
            return(instance);
        }
Esempio n. 4
0
        public VariableObject <T> AddVariable <T>(Parameter <T> parameter)
        {
            VariableObject v;

            if (properties.TryGetValue(parameter.id, out v))
            {
                v.name      = parameter.name;
                v.is_public = parameter.is_public;
                return((VariableObject <T>)v);
            }
            VariableObject <T> instance = ObjectBase.CreateInstance <VariableObject <T> >(parameter.id, parameter.name, parameter.is_public);

            properties[parameter.id] = instance;
            return(instance);
        }