OpenTTD Source: DeterministicSpriteGroup Struct Reference

OpenTTD Source 15.0-RC2

Data Fields | Protected Member Functions
DeterministicSpriteGroup Struct Reference
Inheritance diagram for DeterministicSpriteGroup:

## Data Fields
VarSpriteGroupScope | var_scope {}
DeterministicSpriteGroupSize | size {}
std::vector< DeterministicSpriteGroupAdjust > | adjusts {}
std::vector< DeterministicSpriteGroupRange > | ranges {}
DeterministicSpriteGroupResult | default_result
const SpriteGroup * | error_group = nullptr
Data Fields inherited from SpriteGroup
uint32_t | nfo_line = 0
Data Fields inherited from Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache >::PoolItem<&_spritegroup_pool >
Tindex | index
| Index of this pool item.

## Protected Member Functions
ResolverResult | Resolve (ResolverObject &object) const override
| Base sprite group resolver.

## Additional Inherited Members
Public Types inherited from Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache >::PoolItem<&_spritegroup_pool >
typedef struct Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache > | Pool
| Type of the pool this item is going to be part of.
Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache >::PoolItem<&_spritegroup_pool >
void * | operator new (size_t size)
| Allocates space for new Titem.
void * | operator new (size_t size, Tindex index)
| Allocates space for new Titem with given index.
void * | operator new (size_t, void *ptr)
| Allocates space for new Titem at given memory address.
void | operator delete (void *p, size_t size)
| Marks Titem as free.
Static Public Member Functions inherited from SpriteGroup
static ResolverResult | Resolve (const SpriteGroup *group, ResolverObject &object, bool top_level=true)
| ResolverObject (re)entry point.
Static Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache >::PoolItem<&_spritegroup_pool >
static bool | CanAllocateItem (size_t n=1)
| Helper functions so we can use PoolItem::Function() instead of _poolitem_pool.Function()
static bool | CleaningPool ()
| Returns current state of pool cleaning - yes or no.
static bool | IsValidID (auto index)
| Tests whether given index can be used to get valid (non-nullptr) Titem.
static Titem * | Get (auto index)
| Returns Titem with given index.
static Titem * | GetIfValid (auto index)
| Returns Titem with given index.
static size_t | GetPoolSize ()
| Returns first unused index.
static size_t | GetNumItems ()
| Returns number of valid items in the pool.
static void | PostDestructor (size_t index)
| Dummy function called after destructor of each member.
static Pool::IterateWrapper< Titem > | Iterate (size_t from=0)
| Returns an iterable ensemble of all valid Titem.

## Detailed Description

Definition at line 159 of file newgrf_spritegroup.h.

## Constructor & Destructor Documentation

## ◆ DeterministicSpriteGroup()

DeterministicSpriteGroup::DeterministicSpriteGroup | ( |  | ) |
| inline

Definition at line 160 of file newgrf_spritegroup.h.

## Member Function Documentation

## ◆ Resolve()

ResolverResult DeterministicSpriteGroup::Resolve | ( | ResolverObject & | object | ) | const
| overrideprotectedvirtual

Base sprite group resolver.

Implements SpriteGroup.

Definition at line 186 of file newgrf_spritegroup.cpp.

References GB(), DeterministicSpriteGroupAdjust::parameter, and SpriteGroup::Resolve().

## Field Documentation

## ◆ adjusts

std::vector<DeterministicSpriteGroupAdjust> DeterministicSpriteGroup::adjusts {}

Definition at line 164 of file newgrf_spritegroup.h.

## ◆ default_result

DeterministicSpriteGroupResult DeterministicSpriteGroup::default_result

Definition at line 168 of file newgrf_spritegroup.h.

## ◆ error_group

const SpriteGroup* DeterministicSpriteGroup::error_group = nullptr

Definition at line 170 of file newgrf_spritegroup.h.

## ◆ ranges

std::vector<DeterministicSpriteGroupRange> DeterministicSpriteGroup::ranges {}

Definition at line 165 of file newgrf_spritegroup.h.

## ◆ size

DeterministicSpriteGroupSize DeterministicSpriteGroup::size {}

Definition at line 163 of file newgrf_spritegroup.h.

## ◆ var_scope

VarSpriteGroupScope DeterministicSpriteGroup::var_scope {}

Definition at line 162 of file newgrf_spritegroup.h.

The documentation for this struct was generated from the following files:

- src/newgrf_spritegroup.h
- src/newgrf_spritegroup.cpp