AnalyzerSettings.cs 1.2 KB

123456789101112131415161718192021222324252627
  1. using UnityEngine;
  2. using JetBrains.Annotations;
  3. using System.Collections.Generic;
  4. // This class holds the settings data. By using a ScriptableObject, we can easily
  5. // save and load the settings as an asset in the project.
  6. namespace IntelligentProjectAnalyzer.Analyzer
  7. {
  8. public class AnalyzerSettings : ScriptableObject
  9. {
  10. [Header("Type Analysis Settings")]
  11. [SerializeField]
  12. private List<string> mCustomSystemTypes = new();
  13. [Header("Custom Analysis Settings")]
  14. [SerializeField] private bool mAnalyzeScripts = true;
  15. [SerializeField] private bool mAnalyzePrefabs = true;
  16. [SerializeField] private bool mAnalyzeScriptableObjects = true;
  17. [SerializeField] private bool mAnalyzeMiscellaneous = true;
  18. [UsedImplicitly] public IReadOnlyList<string> CustomSystemTypes => mCustomSystemTypes;
  19. [UsedImplicitly] public bool AnalyzeScripts => mAnalyzeScripts;
  20. [UsedImplicitly] public bool AnalyzePrefabs => mAnalyzePrefabs;
  21. [UsedImplicitly] public bool AnalyzeScriptableObjects => mAnalyzeScriptableObjects;
  22. [UsedImplicitly] public bool AnalyzeMiscellaneous => mAnalyzeMiscellaneous;
  23. }
  24. }