Alexandria.Engines.Unreal.State.CallFactory C# (CSharp) Method

CallFactory() public method

public CallFactory ( string packageName, string className, string objectName ) : RootObject
packageName string
className string
objectName string
return Alexandria.Engines.Unreal.Core.RootObject
        public RootObject CallFactory(string packageName, string className, string objectName)
        {
            Dictionary<string, Dictionary<string, Type>> packages;
            Dictionary<string, Type> types;
            Type type;

            if (FactoryTypes.TryGetValue(packageName, out packages)) {
                if (packages.TryGetValue(className, out types)) {
                    if (types.TryGetValue(objectName, out type)) {
                        return (RootObject)type.GetConstructor(Type.EmptyTypes).Invoke(null);
                    }
                }
            }

            throw new Exception("There is no factory defined for " + packageName + ":" + className + ":" + objectName + ".");
        }

Usage Example

Exemplo n.º 1
0
 /// <summary></summary>
 public override RootObject ResolveNewObject()
 {
     return(State.CallFactory(ClassPackageName, ClassName, Name));
 }