OpenTTD
Public Member Functions | Data Fields
CanalResolverObject Struct Reference

Resolver object for canals. More...

Inheritance diagram for CanalResolverObject:
ResolverObject

Public Member Functions

 CanalResolverObject (CanalFeature feature, TileIndex tile, CallbackID callback=CBID_NO_CALLBACK, uint32 callback_param1=0, uint32 callback_param2=0)
 Canal resolver constructor.
ScopeResolver * GetScope (VarSpriteGroupScope scope=VSG_SCOPE_SELF, byte relative=0)
 Get a resolver for the scope.
const SpriteGroup * ResolveReal (const RealSpriteGroup *group) const
 Get the real sprites of the grf.
- Public Member Functions inherited from ResolverObject
 ResolverObject (const GRFFile *grffile, CallbackID callback=CBID_NO_CALLBACK, uint32 callback_param1=0, uint32 callback_param2=0)
 Resolver constructor.
const SpriteGroup * Resolve ()
 Resolve SpriteGroup.
uint16 ResolveCallback ()
 Resolve callback.
uint32 GetReseedSum () const
 Returns the OR-sum of all bits that need reseeding independent of the scope they were accessed with.
void ResetState ()
 Resets the dynamic state of the resolver object.

Data Fields

CanalScopeResolver canal_scope
- Data Fields inherited from ResolverObject
ScopeResolver default_scope
 Default implementation of the grf scope.
CallbackID callback
 Callback being resolved.
uint32 callback_param1
 First parameter (var 10) of the callback.
uint32 callback_param2
 Second parameter (var 18) of the callback.
byte trigger
uint32 last_value
 Result of most recent DeterministicSpriteGroup (including procedure calls)
uint32 reseed [VSG_END]
 Collects bits to rerandomise while triggering triggers.
const GRFFile * grffile
 GRFFile the resolved SpriteGroup belongs to.
const SpriteGroup * root_spritegroup
 Root SpriteGroup to use for resolving.

Detailed Description

Resolver object for canals.

Definition at line 35 of file newgrf_canal.cpp.

Constructor & Destructor Documentation

CanalResolverObject::CanalResolverObject ( CanalFeature  feature,
TileIndex  tile,
CallbackID  callback = CBID_NO_CALLBACK,
uint32  callback_param1 = 0,
uint32  callback_param2 = 0 
)

Canal resolver constructor.

Parameters
featureWhich canal feature we want.
tileTile index of canal.
callbackCallback ID.
callback_param1First parameter (var 10) of the callback.
callback_param2Second parameter (var 18) of the callback.

Definition at line 126 of file newgrf_canal.cpp.

References WaterFeature::group, and ResolverObject::root_spritegroup.

Member Function Documentation

ScopeResolver* CanalResolverObject::GetScope ( VarSpriteGroupScope  scope = VSG_SCOPE_SELF,
byte  relative = 0 
)
inlinevirtual

Get a resolver for the scope.

Parameters
scopeScope to return.
relativeAdditional parameter for VSG_SCOPE_RELATIVE.
Returns
The resolver for the requested scope.

Reimplemented from ResolverObject.

Definition at line 41 of file newgrf_canal.cpp.

References VSG_SCOPE_SELF.

const SpriteGroup * CanalResolverObject::ResolveReal ( const RealSpriteGroup *  group) const
virtual

Get the real sprites of the grf.

Parameters
groupGroup to get.
Returns
The available sprite group.

Reimplemented from ResolverObject.

Definition at line 106 of file newgrf_canal.cpp.

References RealSpriteGroup::loaded, and RealSpriteGroup::num_loaded.


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