OpenTTD Source 20241224-master-gf74b0cf984
IndustryProductionSpriteGroup Struct Reference
Inheritance diagram for IndustryProductionSpriteGroup:
SpriteGroup Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_spritegroup_pool >

Data Fields

uint8_t version
 Production callback version used, or 0xFF if marked invalid.
 
uint8_t num_input
 How many subtract_input values are valid.
 
int16_t subtract_input [INDUSTRY_NUM_INPUTS]
 Take this much of the input cargo (can be negative, is indirect in cb version 1+)
 
CargoID cargo_input [INDUSTRY_NUM_INPUTS]
 Which input cargoes to take from (only cb version 2)
 
uint8_t num_output
 How many add_output values are valid.
 
uint16_t add_output [INDUSTRY_NUM_OUTPUTS]
 Add this much output cargo when successful (unsigned, is indirect in cb version 1+)
 
CargoID cargo_output [INDUSTRY_NUM_OUTPUTS]
 Which output cargoes to add to (only cb version 2)
 
uint8_t again
 
- Data Fields inherited from SpriteGroup
uint32_t nfo_line
 
SpriteGroupType type
 
- Data Fields inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_spritegroup_pool >
Tindex index
 Index of this pool item.
 

Additional Inherited Members

- Public Types inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_spritegroup_pool >
typedef struct Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero > Pool
 Type of the pool this item is going to be part of.
 
- Public Member Functions inherited from SpriteGroup
virtual SpriteID GetResult () const
 
virtual uint8_t GetNumResults () const
 
virtual uint16_t GetCallbackResult () const
 
- Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_spritegroup_pool >
void * operator new (size_t size)
 Allocates space for new Titem.
 
void * operator new (size_t size, size_t 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)
 Marks Titem as free.
 
- Static Public Member Functions inherited from SpriteGroup
static const SpriteGroupResolve (const SpriteGroup *group, ResolverObject &object, bool top_level=true)
 ResolverObject (re)entry point.
 
- Static Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::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 (size_t index)
 Tests whether given index can be used to get valid (non-nullptr) Titem.
 
static Titem * Get (size_t index)
 Returns Titem with given index.
 
static Titem * GetIfValid (size_t 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.
 
- Protected Member Functions inherited from SpriteGroup
 SpriteGroup (SpriteGroupType type)
 
virtual const SpriteGroupResolve (ResolverObject &object) const
 Base sprite group resolver.
 

Detailed Description

Definition at line 257 of file newgrf_spritegroup.h.

Constructor & Destructor Documentation

◆ IndustryProductionSpriteGroup()

IndustryProductionSpriteGroup::IndustryProductionSpriteGroup ( )
inline

Definition at line 258 of file newgrf_spritegroup.h.

Field Documentation

◆ add_output

uint16_t IndustryProductionSpriteGroup::add_output[INDUSTRY_NUM_OUTPUTS]

Add this much output cargo when successful (unsigned, is indirect in cb version 1+)

Definition at line 265 of file newgrf_spritegroup.h.

Referenced by IndustryProductionCallback().

◆ again

uint8_t IndustryProductionSpriteGroup::again

Definition at line 267 of file newgrf_spritegroup.h.

◆ cargo_input

CargoID IndustryProductionSpriteGroup::cargo_input[INDUSTRY_NUM_INPUTS]

Which input cargoes to take from (only cb version 2)

Definition at line 263 of file newgrf_spritegroup.h.

Referenced by IndustryProductionCallback().

◆ cargo_output

CargoID IndustryProductionSpriteGroup::cargo_output[INDUSTRY_NUM_OUTPUTS]

Which output cargoes to add to (only cb version 2)

Definition at line 266 of file newgrf_spritegroup.h.

Referenced by IndustryProductionCallback().

◆ num_input

uint8_t IndustryProductionSpriteGroup::num_input

How many subtract_input values are valid.

Definition at line 261 of file newgrf_spritegroup.h.

Referenced by IndustryProductionCallback().

◆ num_output

uint8_t IndustryProductionSpriteGroup::num_output

How many add_output values are valid.

Definition at line 264 of file newgrf_spritegroup.h.

Referenced by IndustryProductionCallback().

◆ subtract_input

int16_t IndustryProductionSpriteGroup::subtract_input[INDUSTRY_NUM_INPUTS]

Take this much of the input cargo (can be negative, is indirect in cb version 1+)

Definition at line 262 of file newgrf_spritegroup.h.

Referenced by IndustryProductionCallback().

◆ version

uint8_t IndustryProductionSpriteGroup::version

Production callback version used, or 0xFF if marked invalid.

Definition at line 260 of file newgrf_spritegroup.h.

Referenced by IndustryProductionCallback().


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