Class ResourceDefinitionDatabase
  
  
  
    - Namespace
 - KSP.Sim.ResourceSystem
 
  - Assembly
 - Assembly-CSharp.dll
 
   
  
  
  
    public class ResourceDefinitionDatabase
   
  
    - Inheritance
 
    - 
      
      
ResourceDefinitionDatabase
     
  
  
    - Inherited Members
 
    - 
    
    
    
    
    
    
    
  
 
  
    - Extension Methods
 
    - 
  
  
  
  
  
  
 
  Constructors
  
  
  ResourceDefinitionDatabase()
  
  
  
  
  
    public ResourceDefinitionDatabase()
   
  Fields
  
  AIR_RESOURCE_NAME
  
  
  
  
  
    public const string AIR_RESOURCE_NAME = "IntakeAir"
   
  Field Value
  
    - string
 
    
  
  
  ELECTRICITY_RESOURCE_NAME
  
  
  
  
  
    public const string ELECTRICITY_RESOURCE_NAME = "ElectricCharge"
   
  Field Value
  
    - string
 
    
  
  
  RecipeToResourceMap
  
  
  
  
  
    public Dictionary<ResourceDefinitionID, List<ResourceDefinitionID>> RecipeToResourceMap
   
  Field Value
  
    - Dictionary<ResourceDefinitionID, List<ResourceDefinitionID>>
 
    
  
  
  ResourceToRecipeMap
  
  
  
  
  
    public Dictionary<ResourceDefinitionID, List<ResourceDefinitionID>> ResourceToRecipeMap
   
  Field Value
  
    - Dictionary<ResourceDefinitionID, List<ResourceDefinitionID>>
 
    
  
  Properties
  
  
  DataCount
  
  
  
  
  
    public int DataCount { get; }
   
  Property Value
  
    - int
 
    
  
  
  
  IsDefinitionDataFrozen
  
  
  
  
  
    public bool IsDefinitionDataFrozen { get; }
   
  Property Value
  
    - bool
 
    
  
  
  
  RecipeOverrideReportMode
  
  
  
  
  
    public ResourceSystemUtilities.ErrorReportMode RecipeOverrideReportMode { get; set; }
   
  Property Value
  
    - ResourceSystemUtilities.ErrorReportMode
 
    
  
  
  
  UndefinedResourceOnFreezeReportMode
  
  
  
  
  
    public ResourceSystemUtilities.ErrorReportMode UndefinedResourceOnFreezeReportMode { get; set; }
   
  Property Value
  
    - ResourceSystemUtilities.ErrorReportMode
 
    
  
  
  
  WriteWhenFrozenReportMode
  
  
  
  
  
    public ResourceSystemUtilities.ErrorReportMode WriteWhenFrozenReportMode { get; set; }
   
  Property Value
  
    - ResourceSystemUtilities.ErrorReportMode
 
    
  
  Methods
  
  
  AddOrUpdateDefinition(ResourceDefinition)
  
  
  
  
  
    public ResourceDefinitionID AddOrUpdateDefinition(ResourceDefinition resourceDefinition)
   
  Parameters
  
    resourceDefinition ResourceDefinition 
    
  
  Returns
  
    - ResourceDefinitionID
 
    
  
  
  
  AddOrUpdateDefinition(ResourceRecipeDefinition)
  
  
  
  
  
    public ResourceDefinitionID AddOrUpdateDefinition(ResourceRecipeDefinition recipeDefinition)
   
  Parameters
  
    recipeDefinition ResourceRecipeDefinition 
    
  
  Returns
  
    - ResourceDefinitionID
 
    
  
  
  
  ComputeEachMassOfResourceUnits(IEnumerable<ResourceUnitsPair>, ref List<ResourceMassPair>)
  
  
  
  
  
    public void ComputeEachMassOfResourceUnits(IEnumerable<ResourceUnitsPair> unitsOfResources, ref List<ResourceMassPair> massesOfResources)
   
  Parameters
  
    unitsOfResources IEnumerable<ResourceUnitsPair> 
    
    massesOfResources List<ResourceMassPair> 
    
  
  
  
  ComputeTotalMassOfResourceUnits(IEnumerable<ResourceUnitsPair>)
  
  
  
  
  
    public double ComputeTotalMassOfResourceUnits(IEnumerable<ResourceUnitsPair> unitsOfResources)
   
  Parameters
  
    unitsOfResources IEnumerable<ResourceUnitsPair> 
    
  
  Returns
  
    - double
 
    
  
  
  
  FreezeAndCacheDefinitionValues()
  
  
  
  
  
    public void FreezeAndCacheDefinitionValues()
   
  
  
  GetAllResourceIDs()
  
  
  
  
  
    public IEnumerable<ResourceDefinitionID> GetAllResourceIDs()
   
  Returns
  
    - IEnumerable<ResourceDefinitionID>
 
    
  
  
  
  GetDefinitionData(ResourceDefinitionID)
  
  
  
  
  
    public ResourceDefinitionData GetDefinitionData(ResourceDefinitionID resourceID)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
  
  Returns
  
    - ResourceDefinitionData
 
    
  
  
  
  GetIngredientsForRecipe(ResourceDefinitionID, out List<ResourceDefinitionID>)
  
  
  
  
  
    public bool GetIngredientsForRecipe(ResourceDefinitionID recipe, out List<ResourceDefinitionID> ingredients)
   
  Parameters
  
    recipe ResourceDefinitionID 
    
    ingredients List<ResourceDefinitionID> 
    
  
  Returns
  
    - bool
 
    
  
  
  
  GetRecipeIngredientUnits(ResourceDefinitionID, ref List<ResourceUnitsPair>, bool)
  
  
  
  
  
    public int GetRecipeIngredientUnits(ResourceDefinitionID resourceID, ref List<ResourceUnitsPair> unitsOfIngredients, bool clearList = true)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
    unitsOfIngredients List<ResourceUnitsPair> 
    
    clearList bool 
    
  
  Returns
  
    - int
 
    
  
  
  
  GetRecipeIngredientUnits(ResourceDefinitionID, double, ref List<ResourceUnitsPair>, bool)
  
  
  
  
  
    public int GetRecipeIngredientUnits(ResourceDefinitionID resourceID, double unitsOfResource, ref List<ResourceUnitsPair> unitsOfIngredients, bool clearList = true)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
    unitsOfResource double 
    
    unitsOfIngredients List<ResourceUnitsPair> 
    
    clearList bool 
    
  
  Returns
  
    - int
 
    
  
  
  
  GetRecipesForIngredient(ResourceDefinitionID, out List<ResourceDefinitionID>)
  
  
  
  
  
    public bool GetRecipesForIngredient(ResourceDefinitionID ingredient, out List<ResourceDefinitionID> recipes)
   
  Parameters
  
    ingredient ResourceDefinitionID 
    
    recipes List<ResourceDefinitionID> 
    
  
  Returns
  
    - bool
 
    
  
  
  
  GetResourceFlowMode(ResourceDefinitionID)
  
  
  
  
  
    public ResourceFlowMode GetResourceFlowMode(ResourceDefinitionID resourceID)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
  
  Returns
  
    - ResourceFlowMode
 
    
  
  
  
  GetResourceIDFromName(string)
  
  
  
  
  
    public ResourceDefinitionID GetResourceIDFromName(string resourceName)
   
  Parameters
  
    resourceName string 
    
  
  Returns
  
    - ResourceDefinitionID
 
    
  
  
  
  GetResourceMass(ResourceDefinitionID, double)
  
  
  
  
  
    public double GetResourceMass(ResourceDefinitionID resourceID, double unitsOfResource)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
    unitsOfResource double 
    
  
  Returns
  
    - double
 
    
  
  
  
  GetResourceNameFromID(ResourceDefinitionID)
  
  
  
  
  
    public string GetResourceNameFromID(ResourceDefinitionID resourceID)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
  
  Returns
  
    - string
 
    
  
  
  
  GetResourceThermalMass(ResourceDefinitionID, double)
  
  
  
  
  
    public double GetResourceThermalMass(ResourceDefinitionID resourceID, double unitsOfResource)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
    unitsOfResource double 
    
  
  Returns
  
    - double
 
    
  
  
  
  GetResourceUnitMass(ResourceDefinitionID)
  
  
  
  
  
    public double GetResourceUnitMass(ResourceDefinitionID resourceID)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
  
  Returns
  
    - double
 
    
  
  
  
  IsResourceRecipe(ResourceDefinitionID)
  
  
  
  
  
    public bool IsResourceRecipe(ResourceDefinitionID resourceID)
   
  Parameters
  
    resourceID ResourceDefinitionID 
    
  
  Returns
  
    - bool
 
    
  
  
  
  IsValidResourceID(ResourceDefinitionID)
  
  
  
  
  
    public bool IsValidResourceID(ResourceDefinitionID definitionID)
   
  Parameters
  
    definitionID ResourceDefinitionID 
    
  
  Returns
  
    - bool
 
    
  
  
  
  MarkCacheAsDirty()
  
  
  
  
  
    public void MarkCacheAsDirty()
   
  
  
  UpdateCacheIfDirty(bool)
  
  
  
  
  
    public void UpdateCacheIfDirty(bool force = false)
   
  Parameters
  
    force bool