The Battle for Wesnoth  1.19.1+dev
Classes | Namespaces | Typedefs | Enumerations | Functions
picture.hpp File Reference
#include "map/location.hpp"
#include "terrain/translation.hpp"
#include <optional>
Include dependency graph for picture.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


class  image::locator
 Generic locator abstracting the location of an image. More...
struct  image::locator::value
struct  image::manager
 Image cache manager. More...


 Functions to load and save images from/to disk.


typedef cache_type< surfaceimage::surface_cache
typedef cache_type< textureimage::texture_cache
typedef cache_type< bool > image::bool_cache
typedef std::basic_string< signed char > image::light_string
 Type used to store color information of central and adjacent hexes. More...
typedef std::map< light_string, surfaceimage::lit_surface_variants
 Type used to pair light possibilities with the corresponding lit surface. More...
typedef std::map< light_string, textureimage::lit_texture_variants
typedef cache_type< lit_surface_variants > image::lit_surface_cache
 Lit variants for each locator. More...
typedef cache_type< lit_texture_variants > image::lit_texture_cache


enum  image::TYPE { image::UNSCALED , image::HEXED , image::TOD_COLORED , image::NUM_TYPES }
 Used to specify the rendering format of images. More...
enum class  image::scale_quality { image::nearest , image::linear }
enum class  image::save_result { image::success , image::unsupported_format , image::save_failed , image::no_image }


std::ostream & image::operator<< (std::ostream &s, const locator &l)
light_string image::get_light_string (int op, int r, int g, int b)
 Returns the light_string for one light operation. More...
void image::flush_cache ()
 Purges all image caches. More...
void image::set_color_adjustment (int r, int g, int b)
 Changes Time of Day color tint for all applicable image types. More...
surface image::get_surface (const locator &i_locator, TYPE type=UNSCALED, bool skip_cache=false)
 Returns an image surface suitable for software manipulation. More...
texture image::get_texture (const locator &i_locator, TYPE type=UNSCALED, bool skip_cache=false)
 Returns an image texture suitable for hardware-accelerated rendering. More...
texture image::get_texture (const image::locator &i_locator, scale_quality quality, TYPE type, bool skip_cache)
 Returns a texture for the corresponding image. More...
surface image::get_lighted_image (const image::locator &i_locator, const light_string &ls)
 Caches and returns an image with a lightmap applied to it. More...
texture image::get_lighted_texture (const image::locator &i_locator, const light_string &ls)
surface image::get_hexmask ()
 Retrieves the standard hexagonal tile mask. More...
point image::get_size (const locator &i_locator, bool skip_cache=false)
 Returns the width and height of an image. More...
bool image::is_in_hex (const locator &i_locator)
 Checks if an image fits into a single hex. More...
bool image::is_empty_hex (const locator &i_locator)
 Checks if an image is empty after hex masking. More...
bool image::exists (const locator &i_locator)
 Returns true if the given image actually exists, without loading it. More...
void image::precache_file_existence (const std::string &subdir="")
 Precache the existence of files in a binary path subdirectory (e.g. More...
bool image::precached_file_exists (const std::string &file)
save_result image::save_image (const locator &i_locator, const std::string &filename)
save_result image::save_image (const surface &surf, const std::string &filename)