libosmscout 0.1
Loading...
Searching...
No Matches
StyleConfig.cpp File Reference
#include <osmscoutmap/StyleConfig.h>
#include <set>
#include <algorithm>
#include <cmath>
#include <cstdint>
#include <osmscout/TypeConfig.h>
#include <osmscout/system/Assert.h>
#include <osmscout/log/Logger.h>
#include <osmscout/io/File.h>
#include <osmscoutmap/oss/Parser.h>
#include <osmscoutmap/oss/Scanner.h>
#include <iostream>

Namespaces

namespace  osmscout
 Original source: https://github.com/philipperemy/easy-encryption/blob/master/b64.h licensed under terms of MIT license.
 

Functions

template<class S , class A >
void osmscout::CalculateUsedTypes (const std::list< ConditionalStyle< S, A > > &conditionals, size_t maxLevel, std::vector< TypeInfoSet > &typeSets, StyleConfig::BuildDiagnostics &diagnostics)
 
template<class S , class A >
static void osmscout::CollectReferencedTypes (const TypeConfig &typeConfig, const std::list< ConditionalStyle< S, A > > &conditionals, StyleConfig::LookupPositions &positions)
 The positions of the types the given conditionals name: positions.positions[typeIndex] is the dense position of that type among the referenced ones, or noPosition, and positions.count is the number of referenced types (spec style-configuration, requirement "Style-configuration build cost follows the referenced styles").
 
template<class S , class A >
std::shared_ptr< S > osmscout::GetFeatureStyle (const StyleResolveContext &context, const std::vector< std::list< StyleSelector< S, A > > > &styleSelectors, const FeatureValueBuffer &buffer, const Projection &projection)
 Get the style data based on the given features of an object, a given style (S) and its style attributes (A).
 
template<class S , class A >
void osmscout::GetMaxLevelInConditionals (const std::list< ConditionalStyle< S, A > > &conditionals, size_t &maxLevel)
 
template<class S , class A >
bool osmscout::HasStyle (const std::vector< std::vector< std::list< StyleSelector< S, A > > > > &styleSelectors, const size_t level)
 
template<class Table >
static const Table::value_type * osmscout::LookupRow (const Table &table, const StyleConfig::LookupPositions &positions, size_t typeIndex)
 The selectors of a family table for the given type index, or nullptr when the loaded sheet does not reference that type.
 
template<class S , class A >
void osmscout::SortInConditionals (const std::string &family, const std::list< ConditionalStyle< S, A > > &conditionals, size_t maxLevel, const StyleConfig::LookupPositions &positions, std::vector< std::vector< std::list< StyleSelector< S, A > > > > &selectors, StyleConfig::BuildDiagnostics &diagnostics)
 
template<class S , class A >
void osmscout::SortInConditionalsBySlot (const std::string &family, const std::list< ConditionalStyle< S, A > > &conditionals, size_t maxLevel, const StyleConfig::LookupPositions &positions, std::vector< std::vector< std::vector< std::list< StyleSelector< S, A > > > > > &selectors, StyleConfig::BuildDiagnostics &diagnostics)
 
static size_t osmscout::TypeSetBytes (const std::vector< TypeInfoSet > &typeSets)
 The bytes the per-level type sets of one family retain: the set objects themselves plus the storage each of them allocates for its bitmap over the defined types and its contained types.