// Postprocess on all assets once an automatic import has completed static void PostprocessAllAssets(string[] importedAssets, string[] addedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromPathAssets) { object[] args = { importedAssets, deletedAssets, movedAssets, movedFromPathAssets }; foreach (var assetPostprocessorClass in GetCachedAssetPostprocessorClasses()) { MethodInfo method = assetPostprocessorClass.GetMethod("OnPostprocessAllAssets", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static); if (method != null) { InvokeMethod(method, args); } } Profiler.BeginSample("SyncVS.PostprocessSyncProject"); #pragma warning disable 618 if (ScriptEditorUtility.GetScriptEditorFromPath(CodeEditor.CurrentEditorInstallation) == ScriptEditorUtility.ScriptEditor.Other || ScriptEditorUtility.GetScriptEditorFromPath(CodeEditor.CurrentEditorInstallation) == ScriptEditorUtility.ScriptEditor.SystemDefault) { CodeEditorProjectSync.PostprocessSyncProject(importedAssets, addedAssets, deletedAssets, movedAssets, movedFromPathAssets); } else { ///@TODO: we need addedAssets for SyncVS. Make this into a proper API and write tests SyncVS.PostprocessSyncProject(importedAssets, addedAssets, deletedAssets, movedAssets, movedFromPathAssets); } Profiler.EndSample(); }
// Postprocess on all assets once an automatic import has completed static void PostprocessAllAssets(string[] importedAssets, string[] addedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromPathAssets) { object[] args = { importedAssets, deletedAssets, movedAssets, movedFromPathAssets }; foreach (var assetPostprocessorClass in GetCachedAssetPostprocessorClasses()) { MethodInfo method = assetPostprocessorClass.GetMethod("OnPostprocessAllAssets", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static); if (method != null) { method.Invoke(null, args); } } ///@TODO: we need addedAssets for SyncVS. Make this into a proper API and write tests SyncVS.PostprocessSyncProject(importedAssets, addedAssets, deletedAssets, movedAssets, movedFromPathAssets); }
// Postprocess on all assets once an automatic import has completed static void PostprocessAllAssets(string[] importedAssets, string[] addedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromPathAssets) { bool profile = Profiler.enabled; object[] args = { importedAssets, deletedAssets, movedAssets, movedFromPathAssets }; foreach (var assetPostprocessorClass in GetCachedAssetPostprocessorClasses()) { MethodInfo method = assetPostprocessorClass.GetMethod("OnPostprocessAllAssets", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static); if (method != null) { InvokeMethod(method, args); } } Profiler.BeginSample("SyncVS.PostprocessSyncProject"); ///@TODO: we need addedAssets for SyncVS. Make this into a proper API and write tests SyncVS.PostprocessSyncProject(importedAssets, addedAssets, deletedAssets, movedAssets, movedFromPathAssets); Profiler.EndSample(); }
private static void PostprocessAllAssets(string[] importedAssets, string[] addedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromPathAssets) { object[] parameters = new object[] { importedAssets, deletedAssets, movedAssets, movedFromPathAssets }; foreach (Type current in EditorAssemblies.SubclassesOf(typeof(AssetPostprocessor))) { MethodInfo method = current.GetMethod("OnPostprocessAllAssets", BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic); if (method != null) { method.Invoke(null, parameters); } } SyncVS.PostprocessSyncProject(importedAssets, addedAssets, deletedAssets, movedAssets, movedFromPathAssets); }