From b3c84fcbbd1983676eb0eae2079042580f4c78e6 Mon Sep 17 00:00:00 2001 From: frosch Date: Sun, 22 Apr 2012 16:28:00 +0000 Subject: [PATCH] (svn r24163) -Codechange: Make various members of NewGRFClass private. --- src/newgrf_class.h | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/newgrf_class.h b/src/newgrf_class.h index 95c589d17a..a7b8099add 100644 --- a/src/newgrf_class.h +++ b/src/newgrf_class.h @@ -19,18 +19,25 @@ */ template struct NewGRFClass { - uint32 global_id; ///< Global ID for class, e.g. 'DFLT', 'WAYP', etc. - StringID name; ///< Name of this class. - uint count; ///< Number of stations in this class. - Tspec **spec; ///< Array of station specifications. +private: + uint count; ///< Number of specs in this class. + Tspec **spec; ///< Array of specifications. - /** The actual classes. */ + /** + * The actual classes. + * @note We store pointers to membes of this array in various places outside this class (e.g. to 'name' for GRF string resolving). + * Thus this must be a static array, and cannot be a self-resizing SmallVector or similar. + */ static NewGRFClass classes[Tmax]; - static void Reset(); /** Initialise the defaults. */ static void InsertDefaults(); +public: + uint32 global_id; ///< Global ID for class, e.g. 'DFLT', 'WAYP', etc. + StringID name; ///< Name of this class. + + static void Reset(); static Tid Allocate(uint32 global_id); static void Assign(Tspec *spec); static NewGRFClass *Get(Tid cls_id);