Data Structures
Here are the data structures with brief descriptions:
[detail level 123]
 NSQConvertThe Squirrel convert routines
 CAccelerationSlowdownParamsData structure for storing engine speed changes of an acceleration type
 CAction5TypeInformation about a single action 5 type
 CAdaptTAdapter wrapper for CCountedPtr like classes that can't be used directly by stl collections as item type
 CAfterNewGRFScanCallback structure of statements to be executed after the NewGRF scan
 CAIMain AI class
 CAIConfigWindowWindow to configure which AIs will start
 CAIDebugWindowWindow with everything an AI prints via ScriptLog
 CAIInfoAll static information from an AI like name, version, etc
 CAIInstanceRuntime information about an AI like a pointer to the squirrel vm and the current state
 CAILibraryAll static information from an AI library like name, version, etc
 CAIListWindowWindow that let you choose an available AI
 CAircraftAircraft, helicopters, rotors and their shadows belong to this class
 CAircraftCacheVariables that are cached to improve performance and such
 CAircraftVehicleInfoInformation about a aircraft vehicle
 CAirportAll airport-related information
 CAirportFTAInternal structure used in openttd - Finite sTate mAchine –> FTA
 CAirportFTAbuildupState machine input struct (from external file, etc.) Finite sTate mAchine –> FTA
 CAirportFTAClassFinite sTate mAchine (FTA) of an airport
 CAirportMovingDataA single location on an airport where aircraft can move to
 CAirportResolverObjectResolver object for airports
 CAirportScopeResolverResolver for the airport scope
 CAirportSpecDefines the data structure for an airport
 CAirportTileAnimationBaseHelper class for animation control
 CAirportTileIteratorIterator to iterate over all tiles belonging to an airport
 CAirportTileResolverObjectResolver for tiles of an airport
 CAirportTileScopeResolverScope resolver for handling the tiles of an airport
 CAirportTileSpecDefines the data structure of each individual tile of an airport
 CAirportTileTableTile-offset / AirportTileID pair
 CAirportTileTableIteratorIterator to iterate over all tiles belonging to an airport spec
 CAISettingsSettings related to the AI
 CAISettingsWindowWindow for settings the parameters of an AI
 CAllowedSubtagsData structure to store the allowed id/type combinations for action 14
 CAnimationBaseHelper class for a unified approach to NewGRF animation
 CAnimationInfoInformation about animation
 CAnimCursorA single sprite of a list of animated cursors
 CArrayDefinition of a simple array
 CArrayTHelper template class that provides C array length and item type
 CArrayT< T[N]>Helper template class that provides C array length and item type
 CAsymmetricScalerA scaler for asymmetric distribution
 CAutoDeleteSmallVectorSimple vector template class, with automatic delete
 CAutoFreePtrA smart pointer class that free()'s the pointer on destruction
 CAutoFreeSmallVectorSimple vector template class, with automatic free
 CAyStarAyStar search algorithm struct
 CAyStarNodeNode in the search
 CAyStarUserDataIndices into AyStar.userdata[]
 CBackupClass to backup a specific variable and restore it later
 CBaseConsistVarious front vehicle properties that are preserved when autoreplacing, using order-backup or switching front engines within a consist
 CBaseGraphicsAll data/functions related with replacing the base graphics
 CBaseMediaBase for all base media (graphics, sounds)
 CBaseMusicAll data/functions related with replacing the base music
 CBaseNetworkContentDownloadStatusWindowBase window for showing the download status of content
 CBasePersistentStorageArrayBase class for all persistent NewGRF storage arrays
 CBaseSetInformation about a single base set
 CBaseSetTextfileWindowWindow for displaying the textfile of a BaseSet
 CBaseSettingEntryData structure describing a single setting in a tab
 CBaseSoundsAll data/functions related with replacing the base sounds
 CBaseStationBase class for all station-ish types
 CBaseVehicleBase vehicle class
 CBinaryHeapBinary Heap
 CBitmapFileHeaderBMP File Header (stored in little endian)
 CBitmapInfoHeaderBMP Info Header (stored in little endian)
 CBlitterHow all blitters should look like
 CBlitter_32bppAnimThe optimised 32 bpp blitter with palette animation
 CBlitter_32bppBaseBase for all 32bpp blitters
 CBlitter_32bppOptimizedThe optimised 32 bpp blitter (without palette animation)
 CBlitter_32bppSimpleThe most trivial 32 bpp blitter (without palette animation)
 CBlitter_8bppBaseBase for all 8bpp blitters
 CBlitter_8bppOptimized8bpp blitter optimised for speed
 CBlitter_8bppSimpleMost trivial 8bpp blitter
 CBlitter_NullBlitter that does nothing
 CBlitterFactoryThe base factory, keeping track of all blitters
 CBootstrapAskForDownloadWindowThe window for the query
 CBootstrapBackgroundThe background for the game
 CBootstrapContentDownloadStatusWindowWindow for showing the download status of content
 CBridgeSpecStruct containing information about a single bridge type
 CBufferThe buffer for writing a single string
 CBuildAirToolbarWindowAirport build toolbar window handler
 CBuildBridgeDataCarriage for the data we need if we want to build a bridge
 CBuildBridgeWindowWindow class for handling the bridge-build GUI
 CBuildDocksToolbarWindowToolbar window for constructing water infrastructure
 CBuildIndustryWindowBuild (fund or prospect) a new industry,
 CBuildObjectWindowThe window used for building objects
 CBuildRailToolbarWindowRail toolbar management class
 CBuildRoadToolbarWindowRoad toolbar window handler
 CBuildTreesWindowThe build trees window
 CBuildVehicleWindowGUI for building vehicles
 CByteBlobBase class for simple binary blobs
 CByteReaderClass to read from a NewGRF file
 CCanalPropertiesCanal properties local to the NewGRF
 CCanalResolverObjectResolver object for canals
 CCanalScopeResolverScope resolver of a canal tile
 CCapacityAnnotationCapacity-based annotation for use in the Dijkstra algorithm
 CCargoArrayClass for storing amounts of cargo
 CCargoDataEntryA cargo data entry representing one possible row in the station view window's top part
 CCargoDeliveryAction of final delivery of cargo
 CCargoesFieldData about a single field in the IndustryCargoesWindow panel
 CCargoesRowA single row of CargoesField
 CCargoListSimple collection class for a list of cargo packets
 CCargoLoadAction of loading cargo from a station onto a vehicle
 CCargoMovementAbstract action for moving cargo from one list to another
 CCargoPacketContainer for cargo from the same location and time
 CCargoPaymentHelper class to perform the cargo payment
 CCargoRemovalAbstract action of removing cargo from a vehicle or a station
 CCargoRerouteAction of rerouting cargo between different cargo lists and/or next hops
 CCargoReservationAction of reserving cargo from a station to be loaded onto a vehicle
 CCargoResolverObjectResolver of cargo
 CCargoReturnAction of returning previously reserved cargo from the vehicle to the station
 CCargoShiftAction of shifting cargo from one vehicle to another
 CCargoSpecSpecification of a cargo type
 CCargoSuffixTransfer storage of cargo suffix information
 CCargoSummaryItemHelper struct for the cargo details information
 CCargoTransferAction of transferring cargo from a vehicle to a station
 CCaseContainer for the different cases of a string
 CCBinaryHeapTBinary Heap as C++ template
 CCBlobTBlob - simple dynamic T array
 CCCountedPtrCCountedPtr - simple reference counting smart pointer
 CCFollowTrackTTrack follower helper template class (can serve pathfinders and vehicle controllers)
 CCHashTableTClass CHashTableT<Titem, Thash_bits> - simple hash table of pointers allocated elsewhere
 CChatMessageContainer for a message
 CCheatInfo about each of the cheats
 CCheatEntryInformation of a cheat
 CCheatsWARNING! Do not remove entries in Cheats struct or change the order of the existing ones! Would break downward compatibility
 CCheatWindowGUI for the cheats
 CChunkHandlerHandlers and description of chunk
 CClearedObjectAreaKeeps track of removed objects during execution/testruns of commands
 CClientNetworkContentSocketHandlerSocket handler for the content server connection
 CClientNetworkGameSocketHandlerClass for handling the client side of the game connection
 CClientNetworkUDPSocketHandler*** Communication with servers (we are client) ***/
 CClientSettingsAll settings that are only important for the local client
 CCNodeList_HashTableTHash table based node list multi-container class
 CCocoaSubdriverGeneric display driver for cocoa On grounds to not duplicate some code, it contains a few variables which are not used by all device drivers
 CColourStructure to access the alpha, red, green, and blue channels from a 32 bit number
 CCommandDefine a command with the flags which belongs to it
 CCommandContainerStructure for buffering the build command when selecting a station to join
 CCommandCostCommon return value for all commands
 CCommandPacketEverything we need to know about a command to be able to execute it
 CCommandQueueA queue of CommandPackets
 CCompanyEconomyEntryStatistics about the economy
 CCompanyFinancesWindowWindow class displaying the company finances
 CCompanyInfrastructureWindowWindow with detailed information about the company's infrastructure
 CCompanyManagerFaceBitsInfoInformation about the valid values of CompanyManagerFace bitgroups as well as the sprites to draw
 CCompanyNewsInformationData that needs to be stored for company news messages
 CCompanyPropertiesStatically loadable part of Company pool item
 CCompanySettingsSettings that can be set per company
 CCompanyStationsWindowThe list of stations per company
 CCompanyWindowWindow with general information about a company
 CComponentHandlerA handler doing "something" on a link graph component
 CConsoleContentCallbackAsynchronous callback
 CConsoleFileListFile list storage for the console, for caching the last 'ls' command
 CConstructionSettingsSettings related to construction in-game
 CContentCallbackCallbacks for notifying others about incoming data
 CContentInfoContainer for all important information about a piece of content
 CContentListFilterDataFilter data for NetworkContentListWindow
 CContentTextfileWindowWindow for displaying the textfile of an item in the content list
 CCrashLogHelper class for creating crash logs
 CCrashLogOSXOSX implementation for the crash logger
 CCrashLogUnixUnix implementation for the crash logger
 CCrashLogWindowsWindows implementation for the crash logger
 CCSegmentCostCacheBaseBase class for segment cost cache providers
 CCSegmentCostCacheTCSegmentCostCacheT - template class providing hash-map and storage (heap) of Tsegment structures
 CCStrABlob based case sensitive ANSI/UTF-8 string
 CCurrencySpecSpecification of a currency
 CCursorVarsCollection of variables for cursor-display and -animation
 CCYapfBaseTCYapfBaseT - A-star type path finder base class
 CCYapfCostBaseBase implementation for cost accounting
 CCYapfCostShipTCost Provider module of YAPF for ships
 CCYapfDestinationTileTYAPF destination provider base class - used when destination is single tile / multiple trackdirs
 CCYapfFollowShipTNode Follower module of YAPF for ships
 CCYapfNodeKeyExitDirYapf Node Key that evaluates hash from (and compares) tile & exit dir
 CCYapfNodeTYapf Node base
 CCYapfOriginTileTYAPF origin provider base class - used when origin is one tile / multiple trackdirs
 CCYapfOriginTileTwoWayTYAPF origin provider base class - used when there are two tile/trackdir origins
 CCYapfRailNodeTYapf Node for rail YAPF
 CCYapfRailSegmentCached segment cost for rail YAPF
 CCYapfRailSegmentKeyKey for cached segment cost for rail YAPF
 CCYapfRoadNodeTYapf Node for road YAPF
 CCYapfSegmentCostCacheGlobalTCYapfSegmentCostCacheGlobalT - the yapf cost cache provider that adds the segment cost caching functionality to yapf
 CCYapfSegmentCostCacheLocalTCYapfSegmentCostCacheLocalT - the yapf cost cache provider that implements fake segment cost caching functionality for yapf
 CCYapfSegmentCostCacheNoneTCYapfSegmentCostCacheNoneT - the formal only yapf cost cache provider that implements PfNodeCacheFetch() and PfNodeCacheFlush() callbacks
 CCYapfShip_TypesTConfig struct of YAPF for ships
 CCYapfShipNodeTYapf Node for ships
 CCYapfTYAPF template that uses Ttypes template argument to determine all YAPF components (base classes) from which the actual YAPF is composed
 CDefSQClassThe template to define classes in Squirrel
 CDemandCalculatorCalculate the demands
 CDemandHandlerStateless, thread safe demand hander
 CDiagonalTileAreaRepresents a diagonal tile area
 CDiagonalTileIteratorIterator to iterate over a diagonal area of the map
 CDifficultySettingsSettings related to the difficulty of the game
 CDimensionDimensions (a width and height) of a rectangle in 2D
 CDisasterVehicleDisasters, like submarines, skyrangers and their shadows, belong to this class
 CDistanceAnnotationDistance-based annotation for use in the Dijkstra algorithm
 CDrawBuildingsTileStructThis structure is the same for both Industries and Houses
 CDrawIndustryAnimationStructThis is used to gather some data about animation drawing in the industry code Image_1-2-3 are in fact only offset in the sprites used by the industry
 CDrawIndustryCoordinatesSimple structure gathering x,y coordinates for industries animations
 CDrawPixelInfoData about how and where to blit pixels
 CDrawTileSeqStructA tile child sprite and palette to draw for stations etc, with 3D bounding box
 CDrawTileSpritesGround palette sprite of a tile, together with its sprite layout
 CDriverA driver for communicating with the user
 CDriverFactoryBaseBase for all driver factories
 CDropDownListCharStringItemList item containing a C char string
 CDropDownListCheckedItemDrop down list entry for showing a checked/unchecked toggle item
 CDropDownListCompanyItemDrop down list entry for showing a company entry, with companies 'blob'
 CDropDownListItemBase list item class from which others are derived
 CDropDownListParamStringItemString list item with parameters
 CDropDownListStringItemCommon string list item
 CDropdownWindowDrop-down menu window
 CDumpTargetClass that represents the dump-into-string target
 CEconomyData of the economy
 CEconomySettingsSettings related to the economy
 CEffectVehicleA special vehicle is one of the following:
 CEndGameWindowEnd game window shown at the end of the game
 CEngineInfoInformation about a vehicle
 CEngineOverrideManagerStores the mapping of EngineID to the internal id of newgrfs
 CEngineRenewStruct to store engine replacements
 CEntityIDMappingMaps an entity id stored on the map to a GRF file
 CEnumPropsTInformative template class exposing basic enumeration properties used by several other templates below
 CEnumPropsT< Axis >Helper information for extract tool
 CEnumPropsT< Colours >
 CEnumPropsT< DiagDirection >Allow incrementing of DiagDirection variables
 CEnumPropsT< Direction >Allow incrementing of Direction variables
 CEnumPropsT< DisallowedRoadDirections >Helper information for extract tool
 CEnumPropsT< DistributionType >
 CEnumPropsT< ExpensesType >Define basic enum properties for ExpensesType
 CEnumPropsT< LiveryScheme >Helper information for extract tool
 CEnumPropsT< ModifyOrderFlags >
 CEnumPropsT< ModifyTimetableFlags >
 CEnumPropsT< Owner >Define basic enum properties
 CEnumPropsT< RailType >Allow incrementing of Track variables
 CEnumPropsT< RoadBits >
 CEnumPropsT< RoadType >
 CEnumPropsT< RoadTypes >
 CEnumPropsT< SignalType >Helper information for extract tool
 CEnumPropsT< StationClassID >
 CEnumPropsT< StoryPageElementType >Define basic enum properties
 CEnumPropsT< TownLayout >
 CEnumPropsT< TownSize >
 CEnumPropsT< Track >Allow incrementing of Track variables
 CEnumPropsT< Trackdir >Define basic enum properties
 CEnumPropsT< TransportType >Helper information for extract tool
 CEnumPropsT< VehicleType >Helper information for extract tool
 CEnumPropsT< WaterClass >Helper information for extract tool
 CErrmsgWindowWindow class for displaying an error message window
 CErrorMessageDataThe data of the error message
 CExpensesListExpense list container
 CExtraPaletteValuesDescription of tables for the palette animation
 CFallbackParagraphLayoutClass handling the splitting of a paragraph of text into lines and visual runs
 CFBlitter_32bppAnimFactory for the 32bpp blitter with animation
 CFBlitter_32bppOptimizedFactory for the optimised 32 bpp blitter (without palette animation)
 CFBlitter_32bppSimpleFactory for the simple 32 bpp blitter
 CFBlitter_8bppOptimizedFactory for the 8bpp blitter optimised for speed
 CFBlitter_8bppSimpleFactory for the most trivial 8bpp blitter
 CFBlitter_NullFactory for the blitter that does nothing
 CFenceOffsetOffsets for drawing fences
 CFileHelper class to read a file
 CFileListList of file information
 CFileReaderYes, simply reading from a file
 CFileScannerHelper for scanning for files with a given name
 CFileStringReaderA reader that simply reads using fopen
 CFileToSaveLoadDeals with the type of the savegame, independent of extension
 CFileWriterYes, simply writing to a file
 CFilteringData structure describing what to show in the list (filter criteria)
 CFinalizeRefitActionAction for finalizing a refit
 CFindDepotDataHelper container to find a depot
 CFindTrainOnTrackInfoHelper struct for finding the best matching vehicle on a specific track
 CFioStructure for keeping several open files with just one data buffer
 CFiosFileScannerScanner to scan for a particular type of FIOS file
 CFiosItemDeals with finding savegames
 CFixedSizeArrayFixed size array Upon construction it preallocates fixed size block of memory for all items, but doesn't construct them
 CFlowEdgeIteratorIterator class for getting edges from a FlowStatMap
 CFlowMapperMap the path trees generated by the MCF solver into flows
 CFlowStatFlow statistics telling how much flow should be sent along a link
 CFlowStatMapFlow descriptions by origin stations
 CFMusicDriver_AllegroFactory for allegro's music player
 CFMusicDriver_BeMidiFactory for the BeOS midi player
 CFMusicDriver_DMusicFactory for the DirectX music player
 CFMusicDriver_LibTimidityFactory for the libtimidity driver
 CFMusicDriver_NullFactory for the null music player
 CFMusicDriver_OS2Factory for OS/2's music player
 CFMusicDriver_Win32Factory for Windows' music player
 CFontCacheFont cache for basic fonts
 CFontStateText drawing parameters, which can change while drawing a line, but are kept between multiple parts of the same text, e.g
 CFoundTownWindowFound a town window class
 CFreeTypeFontCacheFont cache for fonts that are based on a freetype font
 CFreeTypeSettingsSettings for the freetype fonts
 CFreeTypeSubSettingSettings for a single freetype font
 CFreeUnitIDGeneratorGenerates sequence of free UnitID numbers
 CFSoundDriver_AllegroFactory for the allegro sound driver
 CFSoundDriver_NullFactory for the null sound driver
 CFSoundDriver_SDLFactory for the SDL sound driver
 CFSoundDriver_Win32Factory for the sound driver for Windows
 CFVideoDriver_AllegroFactory for the allegro video driver
 CFVideoDriver_DedicatedFactory for the dedicated server video driver
 CFVideoDriver_NullFactory the null video driver
 CFVideoDriver_SDLFactory for the SDL video driver
 CFVideoDriver_Win32The factory for Windows' video driver
 CGameMain Game class
 CGameCreationSettingsSettings related to the creation of games
 CGameInfoAll static information from an Game like name, version, etc
 CGameInstanceRuntime information about a game script like a pointer to the squirrel vm and the current state
 CGameLibraryAll static information from an Game library like name, version, etc
 CGameSettingsAll settings together for the game
 CGameSettingsWindowWindow to edit settings of the game
 CGameStringsContainer for all the game strings
 CGenericResolverObjectResolver object for generic objects/properties
 CGenericScopeResolverScope resolver for generic objects and properties
 CGenWorldInfoProperties of current genworld process
 CGetNewVehiclePosResultPosition information of a vehicle after it moved
 CGetOptDataData storage for parsing command line options
 CGoalStruct about goals, current and completed
 CGoalListWindowWindow for displaying goals
 CGoalQuestionWindowAsk a question about a goal
 CGoodsEntryStores station stats for a single cargo
 CGraphEdgeIteratorIterator class for getting the edges in the order of their next_edge members
 CGraphicsSetAll data of a graphics set
 CGRFConfigInformation about GRF, used in the game and (part of it) in savegames
 CGRFErrorInformation about why GRF had problems during initialisation
 CGRFFileDynamic data of a loaded NewGRF
 CGRFFilePropsData related to the handling of grf files
 CGRFFilePropsBaseData related to the handling of grf files
 CGRFFileScannerHelper for scanning for files with GRF as extension
 CGRFIdentifierBasic data to distinguish a GRF
 CGRFListList of GRFs using array of pointers instead of linked list
 CGRFParameterInfoInformation about one grf parameter
 CGRFPresenceInformation about the presence of a Grf at a certain point during gamelog history Note about missing Grfs: Changes to missing Grfs are not logged including manual removal of the Grf
 CGrfProcessingStateTemporary data during loading of GRFs
 CGRFTempEngineDataTemporary engine data used when loading only
 CGRFTextElement of the linked list
 CGRFTextEntryHolder of the above structure
 CGRFTextWrapperReference counted wrapper around a GRFText pointer
 CGroundVehicleBase class for all vehicles that move through ground
 CGroundVehicleCacheCached, frequently calculated values
 CGroupGroup data
 CGroupStatisticsStatistics and caches on the vehicles in a group
 CGUIListList template of 'things' T to sort in a GUI
 CGUISettingsSettings related to the GUI and other stuff that is not saved in the savegame
 CHangarTileTableA list of all hangar tiles in an airport
 CHeaderWriterBase class for writing the header, i.e
 CHeightMapHeight map - allocated array of heights (MapSizeX() + 1) x (MapSizeY() + 1)
 CHotkeyAll data for a single hotkey
 CHotkeyListList of hotkeys for a window
 CHouseAnimationBaseHelper class for animation control
 CHouseClassMappingMakes class IDs unique to each GRF file
 CHouseResolverObjectResolver object to be used for houses (feature 07 spritegroups)
 CHouseScopeResolverScope resolver for houses
 CHTTPCallbackCallback for when the HTTP handler has something to tell us
 CIConsoleAlias–Aliases– Aliases are like shortcuts for complex functions, variable assignments, etc
 CIConsoleLineContainer for a single line of console output
 CICU_FONTINSTANCEContainer with information about a font
 CICUParagraphLayoutWrapper for doing layouts with ICU
 CIcuStringIteratorString iterator using ICU as a backend
 CIndustriesResolverObjectResolver for industries
 CIndustriesScopeResolverResolver for industry scopes
 CIndustryDefines the internal data of a functional industry
 CIndustryAnimationBaseHelper class for animation control
 CIndustryBuildDataData for managing the number and type of industries in the game
 CIndustryCargoesWindowWindow displaying the cargo connections around an industry (or cargo)
 CIndustryDirectoryWindowThe list of industries
 CIndustrySpecDefines the data structure for constructing industry
 CIndustryTileResolverObjectResolver for industry tiles
 CIndustryTileScopeResolverResolver for the industry tiles scope
 CIndustryTileSpecDefines the data structure of each individual tile of an industry
 CIndustryTypeBuildDataData for managing the number of industries of a single industry type
 CIniFileIni file that supports both loading and saving
 CIniGroupA group within an ini file
 CIniItemA single "line" in an ini file
 CIniLoadFileIni file that only supports loading
 CInitHandlerStateless, thread safe initialization hander
 CIsEmptyActionAction to check if a vehicle has no stored cargo
 CKeycodeNamesString representation of a keycode
 CLabelObjectContainer for a label for SaveLoad system
 CLangStringInformation about a single string
 CLanguageFileWriterClass for writing a language to disk
 CLanguageMapMapping of language data between a NewGRF and OpenTTD
 CLanguageMetadataMetadata about a single language
 CLanguagePackGlyphSearcherHelper for searching through the language pack
 CLanguagePackHeaderHeader of a language file
 CLanguageScannerScanner to find language files in a GameScript directory
 CLanguageStringsContainer for the raw (unencoded) language strings of a language
 CLanguageWriterBase class for all language writers
 CLayouterThe layouter performs all the layout work
 CLegendAndColourStructure for holding relevant data for legends in small map
 CLexerLexer of a file
 CLinkGraphA connected component of a link graph
 CLinkGraphJobClass for calculation jobs to be run on link graphs
 CLinkGraphLegendWindowMenu window to select cargoes and companies to show in a link graph overlay
 CLinkGraphOverlayHandles drawing of links into some window
 CLinkPropertiesProperties of a link between two stations
 CLinkRefresherUtility to refresh links a consist will visit
 CListingData structure describing how to show the list (what sort direction and criteria)
 CLiveryInformation about a particular livery
 CLoadCheckDataContainer for loading in mode SL_LOAD_CHECK
 CLoadFilterInterface for filtering a savegame till it is loaded
 CLocaleSettingsSettings related to currency/unit systems
 CLoggedActionContains information about one logged action that caused at least one logged change
 CLoggedChangeContains information about one logged change
 CLZMALoadFilterFilter without any compression
 CLZMASaveFilterFilter using LZMA compression
 CLZOLoadFilterFilter using LZO compression
 CLZOSaveFilterFilter using LZO compression
 CMainToolbarWindowMain toolbar
 CMakeEnumPropsTHelper template class that makes basic properties of given enumeration type visible from outsize
 CMasterNetworkUDPSocketHandler*** Communication with the masterserver ***/
 CMCF1stPassFirst pass of the MCF calculation
 CMCF2ndPassSecond pass of the MCF calculation
 CMCFHandlerLink graph handler for MCF
 CMD5FileStructure holding filename and MD5 information about a single file
 CMemoryDumperContainer for dumping the savegame (quickly) to memory
 CMissingGlyphSearcherA searcher for missing glyphs
 CMovementTerminalMappingCombination of aircraft state for going to a certain terminal and the airport flag for that terminal block
 CMultiCommodityFlowMulti-commodity flow calculating base class
 CMultiMapHand-rolled multimap as map of lists
 CMultiMapIteratorSTL-style iterator for MultiMap
 CMusicDriverDriver for all music playback
 CMusicDriver_AllegroAllegro's music player
 CMusicDriver_BeMidiThe midi player for BeOS
 CMusicDriver_DMusicMusic player making use of DirectX
 CMusicDriver_LibTimidityMusic driver making use of libtimidity
 CMusicDriver_NullThe music player that does nothing
 CMusicDriver_OS2OS/2's music player
 CMusicDriver_Win32The Windows music player
 CMusicSetAll data of a music set
 CMusicSettingsSettings related to music
 CNetworkAddressWrapper for (un)resolved network addresses; there's no reason to transform a numeric IP to a string and then back again to pass it to functions
 CNetworkAdminSocketHandlerMain socket handler for admin related connections
 CNetworkChatWindowWindow to enter the chat message in
 CNetworkClientInfoContainer for all information known about a client
 CNetworkClientListPopupWindowPopup selection window to chose an action to perform
 CNetworkClientListWindowMain handle for clientlist
 CNetworkCompanyInfoCompany information stored at the client side
 CNetworkCompanyStateSome state information of a company, especially for servers
 CNetworkCompanyStatsSimple calculated statistics of a company
 CNetworkContentConnecterConnect to the content server
 CNetworkContentDownloadStatusWindowWindow for showing the download status of content
 CNetworkContentListWindowWindow that lists the content that's at the content server
 CNetworkContentSocketHandlerBase socket handler for all Content TCP sockets
 CNetworkGameInfoThe game information that is sent from the server to the clients
 CNetworkGameListStructure with information shown in the game list (GUI)
 CNetworkGameSocketHandlerBase socket handler for all TCP sockets
 CNetworkHTTPContentConnecterConnect with a HTTP server and do ONE query
 CNetworkHTTPSocketHandlerBase socket handler for HTTP traffic
 CNetworkServerGameInfoThe game information that is not generated on-the-fly and has to be sent to the clients
 CNetworkSettingsAll settings related to the network
 CNetworkSocketHandlerSocketHandler for all network sockets in OpenTTD
 CNetworkTCPSocketHandlerBase socket handler for all TCP sockets
 CNetworkUDPQueryServerInfoSimpler wrapper struct for NetworkUDPQueryServerThread
 CNetworkUDPSocketHandlerBase socket handler for all UDP sockets
 CNewGRFCacheCached often queried (NewGRF) values
 CNewGRFClassStruct containing information relating to NewGRF classes for stations and airports
 CNewGrfDebugSpritePickerSpritepicker of SpriteAligner
 CNewGRFInspectWindowWindow used for inspecting NewGRFs
 CNewGRFParametersWindowWindow for setting the parameters of a NewGRF
 CNewGRFScanCallbackCallback for NewGRF scanning
 CNewGRFSpriteLayoutNewGRF supplied spritelayout
 CNewGRFTextfileWindowWindow for displaying the textfile of a NewGRF
 CNewGRFWindowWindow for showing NewGRF files
 CNewsItemInformation about a single item of news
 CNewsSettingsSettings related to news
 CNewsTypeDataPer-NewsType data
 CNewsWindowWindow class displaying a news item
 CNICallbackRepresentation of the available callbacks with information on when they actually apply
 CNIFeatureContainer for all information for a given feature
 CNIHelperHelper class to wrap some functionality/queries in
 CNIPropertyRepresentation of the data from a NewGRF property
 CNIVariableRepresentation on the NewGRF variables
 CNoCompLoadFilterFilter without any compression
 CNoCompSaveFilterFilter without any compression
 CNPFFindStationOrTileDataMeant to be stored in AyStar.targetdata
 CNPFFoundTargetDataMeant to be stored in AyStar.userpath
 CNPFSettingsSettings related to the new pathfinder
 CNSCursor(OTTD_QuickdrawCursor)Category of NSCursor to allow cursor showing/hiding
 CNWidgetBackgroundNested widget with a child
 CNWidgetBaseBaseclass for nested widgets
 CNWidgetContainerBaseclass for container widgets
 CNWidgetCoreBase class for a 'real' widget
 CNWidgetHorizontalHorizontal container
 CNWidgetHorizontalLTRHorizontal container that doesn't change the direction of the widgets for RTL languages
 CNWidgetLeafLeaf widget
 CNWidgetMainToolbarContainerContainer for the 'normal' main toolbar
 CNWidgetMatrixMatrix container with implicitly equal sized (virtual) sub-widgets
 CNWidgetNewGRFDisplayCustom nested widget container for the NewGRF gui
 CNWidgetPartPartial widget specification to allow NWidgets to be written nested
 CNWidgetPartDataTipWidget part for storing data and tooltip information
 CNWidgetPartPaddingsWidget part for storing padding
 CNWidgetPartPIPWidget part for storing pre/inter/post spaces
 CNWidgetPartTextLinesWidget part for storing minimal text line data
 CNWidgetPartWidgetWidget part for storing basic widget information
 CNWidgetPIPContainerContainer with pre/inter/post child space
 CNWidgetResizeBaseBase class for a resizable nested widget
 CNWidgetScenarioToolbarContainerContainer for the scenario editor's toolbar
 CNWidgetScrollbarNested widget to display and control a scrollbar in a window
 CNWidgetServerListHeaderFull blown container to make it behave exactly as we want :)
 CNWidgetSmallmapDisplayCustom container class for displaying smallmap with a vertically resizing legend panel
 CNWidgetSpacerSpacer widget
 CNWidgetStackedStacked widgets, widgets all occupying the same space in the window
 CNWidgetToolbarContainerFull blown container to make it behave exactly as we want :)
 CNWidgetVerticalVertical container
 CNWidgetViewportNested widget to display a viewport in a window
 CObjectAn object, such as transmitter, on the map
 CObjectAnimationBaseHelper class for animation control
 CObjectResolverObjectA resolver object to be used with feature 0F spritegroups
 CObjectScopeResolverObject scope resolver
 CObjectSpecAllow incrementing of ObjectClassID variables
 COldWaypointHelper structure to convert from the old waypoint system
 COpenListNodeInternal node
 COPFSettingsSettings related to the old pathfinder
 COptionDataData of an option
 COrderBackupData for backing up an order of a vehicle so it can be restored after a vehicle is rebuilt in the same depot
 COrderListShared order list linking together the linked list of orders and the list of vehicles sharing this order list
 COrderSettingsSettings related to orders
 COrdersWindowOrder window code for all vehicles
 COrthogonalTileAreaRepresents the covered area of e.g
 COrthogonalTileIteratorIterator to iterate over a tile area (rectangle) of the map
 COTTD_CocoaViewSubclass of NSView to fix Quartz rendering and mouse awareness
 COTTD_CocoaWindowSubclass of NSWindow to cater our special needs
 COTTD_CocoaWindowDelegateDelegate for our NSWindow to send ask for quit on close
 COTTDThreadExitSignalSignal used for signalling we knowingly want to end the thread
 COTTDThreadStartupMessageAvoid name clashes with MorphOS API functions
 COutputBufferOutput buffer for a block of data
 COutputStoreTemporarily store output
 COverflowSafeIntOverflow safe template for integers, i.e
 CPacketInternal entity of a packet
 CPacketReaderRead some packets, and when do use that data as initial load filter
 CPacketWriterWriting a savegame directly to a number of packets
 CPairA pair of two integers
 CPaletteInformation about the currently used palette
 CPalSpriteIDCombination of a palette sprite and a 'real' sprite
 CParagraphLayouterInterface to glue fallback and normal layouter into one
 CParentSpriteToDrawParent sprite that should be drawn
 CPathA leg of a path in the link graph
 CPathfinderSettingsSettings related to all pathfinders
 CPathNodeA path of nodes
 CPBSTileInfoThis struct contains information about the end of a reserved path
 CPcxHeaderDefinition of a PCX file header
 CPersistentStorageClass for pooled persistent storage of data
 CPersistentStorageArrayClass for persistent storage of data
 CPickerWindowBaseBase class for windows opened from a toolbar
 CPluralFormDescription of a plural form
 CPointCoordinates of a point in 2D
 CPointDimensionSpecification of a rectangle with an absolute top-left coordinate and a (relative) width/height
 CPoolBase class for all pools
 CPoolBaseBase class for base of all pools
 CPrepareRefitActionRefit preparation action
 CPriceBaseSpecDescribes properties of price bases
 CQueryStringData stored about a string that can be modified in the GUI
 CQueryStringWindowClass for the string query window
 CQueryWindowWindow used for asking the user a YES/NO question
 CRailtypeInfoThis struct contains all the info that is needed to draw and construct tracks
 CRailTypeResolverObjectResolver object for rail types
 CRailTypeScopeResolverResolver for the railtype scope
 CRailVehicleInfoInformation about a rail vehicle
 CRandomizerStructure to encapsulate the pseudo random number generators
 CReadBufferA buffer for reading (and buffering) savegame data
 CRectSpecification of a rectangle with absolute coordinates of all edges
 CRectAndIndustryVectorRect and pointer to IndustryVector
 CRefitDescSimulated cargo type and capacity for prediction of future links
 CRefitOptionOption to refit a vehicle chain
 CRefitResultHelper structure for RefitVehicle()
 CRefitWindowRefit cargo window
 CReplaceVehicleWindowWindow for the autoreplacing of vehicles
 CResizeInfoData structure for resizing a window
 CResolverObjectInterface for SpriteGroup-s to access the gamestate
 CReturnCargoActionAction for returning reserved cargo
 CReusableBufferA reusable buffer that can be used for places that temporary allocate a bit of memory and do that very often, or for places where static memory is allocated that might need to be reallocated sometimes
 CRgbQuadFormat of palette data in BMP header
 CRoadStopA Stop for a Road Vehicle
 CRoadStopEntryRebuilderHelperHelper for finding RVs in a road stop
 CRoadTypeInfoStructure holding information per roadtype for several functions
 CRoadVehicleBuses, trucks and trams belong to this class
 CRoadVehicleInfoInformation about a road vehicle
 CSavedRandomSeedsStores the state of all random number generators
 CSaveFilterInterface for filtering a savegame till it is written
 CSaveLoadSaveLoad type struct
 CSaveLoadFormatThe format for a reader/writer type of a savegame
 CSaveLoadParamsThe saveload struct, containing reader-writer functions, buffer, version, etc
 CSavePresetWindowClass for the save preset window
 CScalerScale various things according to symmetric/asymmetric distribution
 CScanProgressWindowWindow for showing the progress of NewGRF scanning
 CScenarioEditorLandscapeGenerationWindowLandscape generation window handler in the scenario editor
 CScenarioIdentifierBasic data to distinguish a scenario
 CScenarioScannerScanner to find the unique IDs of scenarios
 CScopeResolverInterface to query and set values specific to a single VarSpriteGroupScope (action 2 scope)
 CScoreInfoData structure for storing how the score is computed for a single score id
 CScreenshotFormatScreenshot format information
 CScript_FatalErrorA throw-class that is given when the script made a fatal error
 CScript_SuspendA throw-class that is given when the script wants to suspend
 CScriptConfigScript settings
 CScriptConfigItemInfo about a single Script setting
 CScriptFileChecksumCreatorHelper for creating a MD5sum of all files within of a script
 CScriptInfoAll static information from an Script like name, version, etc
 CScriptInstanceRuntime information about a script like a pointer to the squirrel vm and the current state
 CScriptScannerScanner to help finding scripts
 CScriptSettingsSettings related to scripts
 CScriptStorageThe storage for each script
 CScriptTextfileWindowWindow for displaying the textfile of a AI
 CScrollbarScrollbar data structure
 CSearchNearbyHouseDataStructure with user-data for SearchNearbyHouseXXX - functions
 CSelectCompanyLiveryWindowCompany livery colour scheme window
 CSelectCompanyManagerFaceWindowManagement class for customizing the face of the company manager
 CSelectStationWindowWindow for selecting stations/waypoints to (distant) join to
 CServerNetworkAdminSocketHandlerClass for handling the server side of the game connection
 CServerNetworkGameSocketHandlerClass for handling the server side of the game connection
 CServerNetworkUDPSocketHandler*** Communication with clients (we are server) ***/
 CSetDateWindowWindow to select a date graphically by using dropdowns
 CSettingDescBaseProperties of config file settings
 CSettingEntryStandard setting
 CSettingFilterFilter for settings list
 CSettingsContainerContainers for BaseSettingEntry
 CSettingsIniFileDerived class for loading INI files without going through Fio stuff
 CSettingsPageData structure describing one page of settings in the settings window
 CShipAll ships have this type
 CShipVehicleInfoInformation about a ship vehicle
 CSimpleCountedObjectSimple counted object
 CSimplePoolA simplified pool which stores values instead of pointers and doesn't redefine operator new/delete
 CSimpleTinyEnumTTemplate of struct holding enum types (on most archs, enums are stored in an int32)
 CSmallArrayFlexible array with size limit
 CSmallMapImplementation of simple mapping class
 CSmallMapColourSchemeColour scheme of the smallmap
 CSmallMapWindowClass managing the smallmap window
 CSmallMatrixSimple matrix template class
 CSmallPairSimple pair of data
 CSmallSetSet containing 'items' items of 'tile and Tdir' No tree structure is used because it would cause slowdowns in most usual cases
 CSmallStackMinimal stack that uses a pool to avoid pointers
 CSmallStackItemBase class for SmallStack
 CSmallStackSafeStackAllocA small 'wrapper' for allocations that can be done on most OSes on the stack, but are just too large to fit in the stack on devices with a small stack such as the NDS
 CSmallVectorSimple vector template class
 CSnowLineStructure describing the height of the snow line each day of the year
 CSoundDriverBase for all sound drivers
 CSoundDriver_AllegroImplementation of the allegro sound driver
 CSoundDriver_NullImplementation of the null sound driver
 CSoundDriver_SDLImplementation of the SDL sound driver
 CSoundDriver_Win32Implementation of the sound driver for Windows
 CSoundSettingsSettings related to sound effects
 CSoundsSetAll data of a sounds set
 CSpecializedStationClass defining several overloaded accessors so we don't have to cast base stations that often
 CSpecializedVehicleClass defining several overloaded accessors so we don't have to cast vehicle types that often
 CSpotDataUsed as the user_data for FindFurthestFromWater
 CSpriteData structure describing a sprite
 CSpriteAlignerWindowWindow used for aligning sprites
 CSpriteFontCacheFont cache for fonts that are based on a freetype font
 CSpriteLoaderInterface for the loader of our sprites
 CSpriteLoaderGrfSprite loader for graphics coming from a (New)GRF
 CSquirrelStdBy default we want to give a set of standard commands to a SQ script
 CStationStation data structure
 CStationAnimationBaseHelper class for animation control
 CStationCargoListCargoList that is used for stations
 CStationCargoRerouteAction of rerouting cargo in a station
 CStationFinderStructure contains cached list of stations nearby
 CStationNameInformationInformation to handle station action 0 property 24 correctly
 CStationRectStationRect - used to track station spread out rectangle - cheaper than scanning whole map
 CStationResolverObjectStation resolver
 CStationScopeResolverScope resolver for stations
 CStationSettingsSettings related to stations
 CStationSpecStation specification
 CStationViewWindowThe StationView window
 CStatueBuildSearchDataStructure for storing data while searching the best place to build a statue
 CStoryPageStruct about stories, current and completed
 CStoryPageElementStruct about story page elements
 CStringCompareComparator for strings
 CStringDataInformation about the currently known strings
 CStringFilterString filter and state
 CStringIDMappingInformation for mapping static StringIDs
 CStringIteratorClass for iterating over different kind of parts of a string
 CStringListReaderA reader that simply reads using fopen
 CStringNameWriterClass for writing the string IDs
 CStringReaderHelper for reading strings
 CSubsidyStruct about subsidies, offered and awarded
 CSubSpriteUsed to only draw a part of the sprite
 CSymmetricScalerScaler for symmetric distribution
 CTarListEntryThe define of a TarList
 CTarScannerHelper for scanning for files with tar as extension
 CTCPClientConnecterNon blocking connection create to actually connect to servers
 CTCPConnecter"Helper" class for creating TCP connections in a non-blocking manner
 CTCPListenHandlerTemplate for TCP listeners
 CTCPQueryConnecterNon blocking connection create to query servers
 CTemporaryStorageArrayClass for temporary storage of data
 CTempStorageTemporary storage of cargo monitoring data for loading or saving it
 CTerraformerStateState of the terraforming
 CTerraformToolbarWindowTerra form toolbar managing class
 CTextbufHelper/buffer for input fields
 CTextEffectContainer for all information about a text effect
 CTextfileWindowWindow for displaying a textfile
 CThreadMutexCross-platform Mutex
 CThreadMutex_NoneMutex that doesn't do locking because it ain't needed when there're no threads
 CThreadMutex_OS2OS/2 version of ThreadMutex
 CThreadMutex_pthreadPOSIX pthread version of ThreadMutex
 CThreadMutex_Win32Win32 thread version of ThreadMutex
 CThreadMutexLockerSimple mutex locker to keep a mutex locked until the locker goes out of scope
 CThreadObjectA Thread Object which works on all our supported OSes
 CThreadObject_MorphOSMorphOS version for ThreadObject
 CThreadObject_OS2OS/2 version for ThreadObject
 CThreadObject_pthreadPOSIX pthread version for ThreadObject
 CThreadObject_Win32Win32 thread version for ThreadObject
 CTileData that is stored per tile
 CTileAndStationStruct containing TileIndex and StationID
 CTileDescTile description for the 'land area information' tool
 CTileExtendedData that is stored per tile
 CTileHighlightDataMetadata about the current highlighting
 CTileIndexDiffCA pair-construct of a TileIndexDiff
 CTileInfoTile information, used while rendering the tile
 CTileIteratorBase class for tile iterators
 CTileLayoutRegistersAdditional modifiers for items in sprite layouts
 CTileLayoutSpriteGroupAction 2 sprite layout for houses, industry tiles, objects and airport tiles
 CTileMatrixA simple matrix that stores one value per N*N square of the map
 CTileTypeProcsSet of callback functions for performing tile operations of a given tile type
 CTimetableArrivalDepartureContainer for the arrival/departure dates of a vehicle
 CTinyEnumTIn some cases we use byte or uint16 to store values that are defined as enum
 CTooltipsWindowWindow for displaying a tooltip
 CTownTown data structure
 CTownAuthorityWindowTown authority window
 CTownCacheData structure with cached data of towns
 CTownDirectoryWindowTown directory window class
 CTownNameGeneratorParamsContains pointer to generator and minimum buffer size (not incl
 CTownNameParamsStruct holding a parameters used to generate town name
 CTownResolverObjectResolver of town properties
 CTownScopeResolverScope resolver for a town
 CTrain'Train' is either a loco or a wagon
 CTrainCacheVariables that are cached to improve performance and such
 CTrainCollideCheckerTemporary data storage for testing collisions
 CTranslationWriterClass for writing an encoded language
 CTransportedCargoStatStore the maximum and actually transported cargo amount for the current and the last month
 CUnitConversionHelper for unit conversion
 CUnitsInformation about a specific unit system
 CUnitsLongInformation about a specific unit system with a long variant
 CUnknownGRFStructure for UnknownGRFs; this is a lightweight variant of GRFConfig
 CUnmappedChoiceListHelper structure for mapping choice lists
 CValuesIntervalContains the interval of a graph's data
 CVehicleVehicle data structure
 CVehicleCacheCached often queried values common to all vehicles
 CVehicleCargoListCargoList that is used for vehicles
 CVehicleCargoRerouteAction of rerouting cargo staged for transfer in a vehicle
 CVehicleCellSizeDimensions of a cell in the purchase/depot windows
 CVehicleDefaultSettingsDefault settings for vehicles
 CVehicleDetailsWindowClass for managing the vehicle details window
 CVehicleListIdentifierThe information about a vehicle list
 CVehicleListWindowWindow for the (old) vehicle listing
 CVehicleOrderSaverThis class will save the current order of a vehicle and restore it on destruction
 CVehicleResolverObjectResolver for a vehicle (chain)
 CVehicleScopeResolverResolver for a vehicle scope
 CVehicleSettingsSettings related to vehicles
 CVehicleSpriteSeqSprite sequence for a vehicle part
 CVehicleViewWindowWindow manager class for viewing a vehicle
 CVideoDriverThe base of all video drivers
 CVideoDriver_AllegroThe allegro video driver
 CVideoDriver_DedicatedThe dedicated server video driver
 CVideoDriver_NullThe null video driver
 CVideoDriver_SDLThe SDL video driver
 CVideoDriver_Win32The video driver for windows
 CViewPortData structure for viewport, display of a part of the world
 CViewportDataData structure for a window viewport
 CViewportDrawerData structure storing rendering information
 CViewportSignLocation information about a sign as seen on the viewport
 CViewportSSCSSHelper class for getting the best sprite sorter
 CWaterFeatureInformation about a water feature
 CWaypointRepresentation of a waypoint
 CWaypointWindowGUI for accessing waypoints and buoys
 CWindowData structure for an opened window
 CWindowDescHigh level window description
 CYAPFSettingsSettings related to the yet another pathfinder
 CYearMonthDayData structure to convert between Date and triplet (year, month, and day)
 CZeroedMemoryAllocatorBase class that provides memory initialization on dynamically created objects
 CZlibLoadFilterFilter using Zlib compression
 CZlibSaveFilterFilter using Zlib compression