/// <summary> /// Gets an array of all blueprints used to generate this class and its parents. 0th elements is the BP used to generate InClass /// </summary> /// <param name="inClass">The class to get the blueprint lineage for</param> /// <param name="outBlueprintParents">Array with the blueprints used to generate this class and its parents. 0th = this, Nth = least derived BP-based parent</param> /// <returns>true if there were no status errors in any of the parent blueprints, otherwise false</returns> public static bool GetBlueprintHierarchyFromClass(UClass inClass, UBlueprint[] outBlueprintParents) { using (TArrayUnsafe <UBlueprint> outBlueprintParentsUnsafe = new TArrayUnsafe <UBlueprint>()) { bool result = Native_UBlueprint.GetBlueprintHierarchyFromClass( inClass == null ? IntPtr.Zero : inClass.Address, outBlueprintParentsUnsafe.Address); outBlueprintParents = outBlueprintParentsUnsafe.ToArray(); return(result); } }
/// <summary> /// Get the Blueprint object that generated the supplied class /// </summary> /// <param name="inClass"></param> /// <returns></returns> public static UBlueprint GetBlueprintFromClass(UClass inClass) { return(GCHelper.Find <UBlueprint>(Native_UBlueprint.GetBlueprintFromClass(inClass == null ? IntPtr.Zero : inClass.Address))); }