From db894b0b3fa13413cdb76989cfcd2bb789243b77 Mon Sep 17 00:00:00 2001 From: frosch Date: Sun, 24 Nov 2013 14:41:19 +0000 Subject: (svn r26085) -Codechange: Pass ResolverObjects as reference instead of pointer since they are never NULL. --- src/newgrf_spritegroup.h | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'src/newgrf_spritegroup.h') diff --git a/src/newgrf_spritegroup.h b/src/newgrf_spritegroup.h index dc05fe4f1..da26c1a0e 100644 --- a/src/newgrf_spritegroup.h +++ b/src/newgrf_spritegroup.h @@ -57,6 +57,7 @@ enum SpriteGroupType { struct SpriteGroup; typedef uint32 SpriteGroupID; +struct ResolverObject; /* SPRITE_WIDTH is 24. ECS has roughly 30 sprite groups per real sprite. * Adding an 'extra' margin would be assuming 64 sprite groups per real @@ -69,7 +70,7 @@ struct SpriteGroup : SpriteGroupPool::PoolItem<&_spritegroup_pool> { protected: SpriteGroup(SpriteGroupType type) : type(type) {} /** Base sprite group resolver */ - virtual const SpriteGroup *Resolve(struct ResolverObject *object) const { return this; }; + virtual const SpriteGroup *Resolve(ResolverObject &object) const { return this; }; public: virtual ~SpriteGroup() {} @@ -89,7 +90,7 @@ public: * @param object information needed to resolve the group * @return the resolved group */ - static const SpriteGroup *Resolve(const SpriteGroup *group, ResolverObject *object) + static const SpriteGroup *Resolve(const SpriteGroup *group, ResolverObject &object) { return group == NULL ? NULL : group->Resolve(object); } @@ -115,7 +116,7 @@ struct RealSpriteGroup : SpriteGroup { const SpriteGroup **loading; ///< List of loading groups (can be SpriteIDs or Callback results) protected: - const SpriteGroup *Resolve(ResolverObject *object) const; + const SpriteGroup *Resolve(ResolverObject &object) const; }; /* Shared by deterministic and random groups. */ @@ -204,7 +205,7 @@ struct DeterministicSpriteGroup : SpriteGroup { const SpriteGroup *default_group; protected: - const SpriteGroup *Resolve(ResolverObject *object) const; + const SpriteGroup *Resolve(ResolverObject &object) const; }; enum RandomizedSpriteGroupCompareMode { @@ -228,7 +229,7 @@ struct RandomizedSpriteGroup : SpriteGroup { const SpriteGroup **groups; ///< Take the group with appropriate index: protected: - const SpriteGroup *Resolve(ResolverObject *object) const; + const SpriteGroup *Resolve(ResolverObject &object) const; }; @@ -301,8 +302,6 @@ struct IndustryProductionSpriteGroup : SpriteGroup { uint8 again; }; -struct ResolverObject; - /** * Interface to query and set values specific to a single #VarSpriteGroupScope (action 2 scope). * @@ -310,9 +309,9 @@ struct ResolverObject; * to different game entities from a #SpriteGroup-chain (action 1-2-3 chain). */ struct ScopeResolver { - ResolverObject *ro; ///< Surrounding resolver object. + ResolverObject &ro; ///< Surrounding resolver object. - ScopeResolver(ResolverObject *ro); + ScopeResolver(ResolverObject &ro); virtual ~ScopeResolver(); virtual uint32 GetRandomBits() const; -- cgit v1.2.3-54-g00ecf