Porytiles
Loading...
Searching...
No Matches
layout_metadata_provider.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <set>
4
#include <string>
5
6
#include "
porytiles/utilities/result/chainable_result.hpp
"
7
8
namespace
porytiles
{
9
22
class
LayoutMetadataProvider
{
23
public
:
24
virtual
~LayoutMetadataProvider
() =
default
;
25
33
[[nodiscard]]
virtual
bool
exists
(
const
std::string &layout_name_or_id)
const
= 0;
34
42
[[nodiscard]]
virtual
ChainableResult<std::size_t>
width
(
const
std::string &layout_name_or_id)
const
= 0;
43
51
[[nodiscard]]
virtual
ChainableResult<std::size_t>
height
(
const
std::string &layout_name_or_id)
const
= 0;
52
60
[[nodiscard]]
virtual
ChainableResult<std::string>
primary_tileset
(
const
std::string &layout_name_or_id)
const
= 0;
61
69
[[nodiscard]]
virtual
ChainableResult<std::string>
70
secondary_tileset
(
const
std::string &layout_name_or_id)
const
= 0;
71
81
[[nodiscard]]
virtual
ChainableResult<std::set<std::string>
>
layout_names
()
const
= 0;
82
92
[[nodiscard]]
virtual
ChainableResult<std::set<std::string>
>
layout_ids
()
const
= 0;
93
};
94
95
}
// namespace porytiles
chainable_result.hpp
porytiles::ChainableResult
A result type that maintains a chainable sequence of errors for debugging and error reporting.
Definition
chainable_result.hpp:31
porytiles::LayoutMetadataProvider
Abstract interface for querying layout metadata by name.
Definition
layout_metadata_provider.hpp:22
porytiles::LayoutMetadataProvider::layout_ids
virtual ChainableResult< std::set< std::string > > layout_ids() const =0
Returns all layout IDs known to this provider.
porytiles::LayoutMetadataProvider::secondary_tileset
virtual ChainableResult< std::string > secondary_tileset(const std::string &layout_name_or_id) const =0
Determines the given layout's secondary tileset.
porytiles::LayoutMetadataProvider::width
virtual ChainableResult< std::size_t > width(const std::string &layout_name_or_id) const =0
Determines the given layout's width in metatiles.
porytiles::LayoutMetadataProvider::~LayoutMetadataProvider
virtual ~LayoutMetadataProvider()=default
porytiles::LayoutMetadataProvider::exists
virtual bool exists(const std::string &layout_name_or_id) const =0
Checks whether a layout exists in the backing store for the given layout name or ID.
porytiles::LayoutMetadataProvider::layout_names
virtual ChainableResult< std::set< std::string > > layout_names() const =0
Returns all layout names known to this provider.
porytiles::LayoutMetadataProvider::primary_tileset
virtual ChainableResult< std::string > primary_tileset(const std::string &layout_name_or_id) const =0
Determines the given layout's primary tileset.
porytiles::LayoutMetadataProvider::height
virtual ChainableResult< std::size_t > height(const std::string &layout_name_or_id) const =0
Determines the given layout's height in metatiles.
porytiles
Definition
app_config.hpp:12
porytiles
include
porytiles
domain
services
layout_metadata_provider.hpp
Generated by
1.9.8