Porytiles
Loading...
Searching...
No Matches
porytiles::InfraConfig Class Referenceabstract

Interface that defines a complete infra layer configuration. More...

#include <infra_config.hpp>

Inheritance diagram for porytiles::InfraConfig:
[legend]

Public Member Functions

virtual ~InfraConfig ()=default
 
virtual void add_provider (std::unique_ptr< ConfigProvider > provider)=0
 Prepends a ConfigProvider to the provider chain at highest priority.
 
ChainableResult< ConfigValue< std::string > > tileset_paths_primary_src (ConfigScopeType type, const std::string &scope) const
 
ChainableResult< ConfigValue< std::string > > tileset_paths_primary_bin (ConfigScopeType type, const std::string &scope) const
 
ChainableResult< ConfigValue< std::string > > tileset_paths_secondary_src (ConfigScopeType type, const std::string &scope) const
 
ChainableResult< ConfigValue< std::string > > tileset_paths_secondary_bin (ConfigScopeType type, const std::string &scope) const
 
ChainableResult< ConfigValue< std::size_t > > metatile_attr_size (ConfigScopeType type, const std::string &scope) const
 
ChainableResult< ConfigValue< bool > > tileset_animations_wire_anim_code (ConfigScopeType type, const std::string &scope) const
 

Protected Member Functions

virtual ChainableResult< ConfigValue< std::string > > tileset_paths_primary_src_validated (ConfigScopeType type, const std::string &scope) const
 
virtual ChainableResult< ConfigValue< std::string > > tileset_paths_primary_src_raw (ConfigScopeType type, const std::string &scope) const =0
 
virtual ChainableResult< ConfigValue< std::string > > tileset_paths_primary_bin_validated (ConfigScopeType type, const std::string &scope) const
 
virtual ChainableResult< ConfigValue< std::string > > tileset_paths_primary_bin_raw (ConfigScopeType type, const std::string &scope) const =0
 
virtual ChainableResult< ConfigValue< std::string > > tileset_paths_secondary_src_validated (ConfigScopeType type, const std::string &scope) const
 
virtual ChainableResult< ConfigValue< std::string > > tileset_paths_secondary_src_raw (ConfigScopeType type, const std::string &scope) const =0
 
virtual ChainableResult< ConfigValue< std::string > > tileset_paths_secondary_bin_validated (ConfigScopeType type, const std::string &scope) const
 
virtual ChainableResult< ConfigValue< std::string > > tileset_paths_secondary_bin_raw (ConfigScopeType type, const std::string &scope) const =0
 
virtual ChainableResult< ConfigValue< std::size_t > > metatile_attr_size_validated (ConfigScopeType type, const std::string &scope) const
 
virtual ChainableResult< ConfigValue< std::size_t > > metatile_attr_size_raw (ConfigScopeType type, const std::string &scope) const =0
 
virtual ChainableResult< ConfigValue< bool > > tileset_animations_wire_anim_code_validated (ConfigScopeType type, const std::string &scope) const
 
virtual ChainableResult< ConfigValue< bool > > tileset_animations_wire_anim_code_raw (ConfigScopeType type, const std::string &scope) const =0
 

Detailed Description

Interface that defines a complete infra layer configuration.

Definition at line 25 of file infra_config.hpp.

Constructor & Destructor Documentation

◆ ~InfraConfig()

virtual porytiles::InfraConfig::~InfraConfig ( )
virtualdefault

Member Function Documentation

◆ add_provider()

virtual void porytiles::InfraConfig::add_provider ( std::unique_ptr< ConfigProvider provider)
pure virtual

Prepends a ConfigProvider to the provider chain at highest priority.

Allows use cases to layer an override provider on top of the user's configuration for operations that run the compiler on Porytiles's own behalf. Implementations must invalidate any cached value resolutions so that subsequent reads consult the newly prepended provider.

Parameters
providerThe provider to prepend. Must be non-null.

Implemented in porytiles::LazyLayeredConfig.

◆ metatile_attr_size()

ChainableResult< ConfigValue< std::size_t > > porytiles::InfraConfig::metatile_attr_size ( ConfigScopeType  type,
const std::string &  scope 
) const
inline

Definition at line 75 of file infra_config.hpp.

◆ metatile_attr_size_raw()

virtual ChainableResult< ConfigValue< std::size_t > > porytiles::InfraConfig::metatile_attr_size_raw ( ConfigScopeType  type,
const std::string &  scope 
) const
protectedpure virtual

◆ metatile_attr_size_validated()

virtual ChainableResult< ConfigValue< std::size_t > > porytiles::InfraConfig::metatile_attr_size_validated ( ConfigScopeType  type,
const std::string &  scope 
) const
inlineprotectedvirtual

Definition at line 142 of file infra_config.hpp.

◆ tileset_animations_wire_anim_code()

ChainableResult< ConfigValue< bool > > porytiles::InfraConfig::tileset_animations_wire_anim_code ( ConfigScopeType  type,
const std::string &  scope 
) const
inline

Definition at line 83 of file infra_config.hpp.

◆ tileset_animations_wire_anim_code_raw()

virtual ChainableResult< ConfigValue< bool > > porytiles::InfraConfig::tileset_animations_wire_anim_code_raw ( ConfigScopeType  type,
const std::string &  scope 
) const
protectedpure virtual

◆ tileset_animations_wire_anim_code_validated()

virtual ChainableResult< ConfigValue< bool > > porytiles::InfraConfig::tileset_animations_wire_anim_code_validated ( ConfigScopeType  type,
const std::string &  scope 
) const
inlineprotectedvirtual

Definition at line 158 of file infra_config.hpp.

◆ tileset_paths_primary_bin()

ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_primary_bin ( ConfigScopeType  type,
const std::string &  scope 
) const
inline

Definition at line 51 of file infra_config.hpp.

◆ tileset_paths_primary_bin_raw()

virtual ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_primary_bin_raw ( ConfigScopeType  type,
const std::string &  scope 
) const
protectedpure virtual

◆ tileset_paths_primary_bin_validated()

virtual ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_primary_bin_validated ( ConfigScopeType  type,
const std::string &  scope 
) const
inlineprotectedvirtual

Definition at line 106 of file infra_config.hpp.

◆ tileset_paths_primary_src()

ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_primary_src ( ConfigScopeType  type,
const std::string &  scope 
) const
inline

Definition at line 43 of file infra_config.hpp.

◆ tileset_paths_primary_src_raw()

virtual ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_primary_src_raw ( ConfigScopeType  type,
const std::string &  scope 
) const
protectedpure virtual

◆ tileset_paths_primary_src_validated()

virtual ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_primary_src_validated ( ConfigScopeType  type,
const std::string &  scope 
) const
inlineprotectedvirtual

Definition at line 94 of file infra_config.hpp.

◆ tileset_paths_secondary_bin()

ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_secondary_bin ( ConfigScopeType  type,
const std::string &  scope 
) const
inline

Definition at line 67 of file infra_config.hpp.

◆ tileset_paths_secondary_bin_raw()

virtual ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_secondary_bin_raw ( ConfigScopeType  type,
const std::string &  scope 
) const
protectedpure virtual

◆ tileset_paths_secondary_bin_validated()

virtual ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_secondary_bin_validated ( ConfigScopeType  type,
const std::string &  scope 
) const
inlineprotectedvirtual

Definition at line 130 of file infra_config.hpp.

◆ tileset_paths_secondary_src()

ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_secondary_src ( ConfigScopeType  type,
const std::string &  scope 
) const
inline

Definition at line 59 of file infra_config.hpp.

◆ tileset_paths_secondary_src_raw()

virtual ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_secondary_src_raw ( ConfigScopeType  type,
const std::string &  scope 
) const
protectedpure virtual

◆ tileset_paths_secondary_src_validated()

virtual ChainableResult< ConfigValue< std::string > > porytiles::InfraConfig::tileset_paths_secondary_src_validated ( ConfigScopeType  type,
const std::string &  scope 
) const
inlineprotectedvirtual

Definition at line 118 of file infra_config.hpp.


The documentation for this class was generated from the following file: