OpenTTD
Data Structures | Public Member Functions | Data Fields | Private Attributes
GrfProcessingState Struct Reference

Temporary data during loading of GRFs. More...

Data Structures

struct  SpriteSet
 Definition of a single Action1 spriteset. More...

Public Member Functions

void ClearDataForNextFile ()
 Clear temporary data before processing the next file in the current loading stage.
void AddSpriteSets (byte feature, SpriteID first_sprite, uint first_set, uint numsets, uint numents)
 Records new spritesets.
bool HasValidSpriteSets (byte feature) const
 Check whether there are any valid spritesets for a feature.
bool IsValidSpriteSet (byte feature, uint set) const
 Check whether a specific set is defined.
SpriteID GetSprite (byte feature, uint set) const
 Returns the first sprite of a spriteset.
uint GetNumEnts (byte feature, uint set) const
 Returns the number of sprites in a spriteset.

Data Fields

GrfLoadingStage stage
 Current loading stage.
SpriteID spriteid
 First available SpriteID for loading realsprites.
uint file_index
 File index of currently processed GRF file.
GRFFilegrffile
 Currently processed GRF file.
GRFConfiggrfconfig
 Config of the currently processed GRF file.
uint32 nfo_line
 Currently processed pseudo sprite number in the GRF.
byte grf_container_ver
 Container format of the current GRF file.
int skip_sprites
 Number of psuedo sprites to skip before processing the next one. (-1 to skip to end of file)
SpriteGroupspritegroups [MAX_SPRITEGROUP+1]

Private Attributes

std::map< uint, SpriteSetspritesets [GSF_END]
 Currently referenceable spritesets.

Detailed Description

Temporary data during loading of GRFs.

Definition at line 81 of file newgrf.cpp.

Member Function Documentation

void GrfProcessingState::AddSpriteSets ( byte  feature,
SpriteID  first_sprite,
uint  first_set,
uint  numsets,
uint  numents 
)
inline

Records new spritesets.

Parameters
featureGrfSpecFeature the set is defined for.
first_spriteSpriteID of the first sprite in the set.
first_setFirst spriteset to define.
numsetsNumber of sets to define.
numentsNumber of sprites per set to define.

Definition at line 131 of file newgrf.cpp.

References spritesets.

uint GrfProcessingState::GetNumEnts ( byte  feature,
uint  set 
) const
inline

Returns the number of sprites in a spriteset.

Parameters
featureGrfSpecFeature to query.
setSet to query.
Returns
Number of sprites in the set.

Definition at line 184 of file newgrf.cpp.

References IsValidSpriteSet(), and spritesets.

Referenced by CreateGroupFromGroupID(), and ReadSpriteLayoutSprite().

SpriteID GrfProcessingState::GetSprite ( byte  feature,
uint  set 
) const
inline

Returns the first sprite of a spriteset.

Parameters
featureGrfSpecFeature to query.
setSet to query.
Returns
First sprite of the set.

Definition at line 172 of file newgrf.cpp.

References IsValidSpriteSet(), and spritesets.

Referenced by CreateGroupFromGroupID(), and ReadSpriteLayoutSprite().

bool GrfProcessingState::HasValidSpriteSets ( byte  feature) const
inline

Check whether there are any valid spritesets for a feature.

Parameters
featureGrfSpecFeature to check.
Returns
true if there are any valid sets.
Note
Spritesets with zero sprites are valid to allow callback-failures.

Definition at line 147 of file newgrf.cpp.

References spritesets.

bool GrfProcessingState::IsValidSpriteSet ( byte  feature,
uint  set 
) const
inline

Check whether a specific set is defined.

Parameters
featureGrfSpecFeature to check.
setSet to check.
Returns
true if the set is valid.
Note
Spritesets with zero sprites are valid to allow callback-failures.

Definition at line 160 of file newgrf.cpp.

References spritesets.

Referenced by CreateGroupFromGroupID(), GetNumEnts(), GetSprite(), and ReadSpriteLayoutSprite().


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