# CSegmentCostCacheBase Struct Reference

Base class for segment cost cache providers. More...

`#include <yapf_costcache.hpp>`

Inheritance diagram for CSegmentCostCacheBase:

## Static Public Member Functions
static void | NotifyTrackLayoutChange (TileIndex tile, Track track)
## Static Public Attributes
static int | s_rail_change_counter = 0
| if any track changes, this counter is incremented - that will invalidate segment cost cache

## Detailed Description

Base class for segment cost cache providers.

Contains global counter of track layout changes and static notification function called whenever the track layout changes. It is implemented as base class because it needs to be shared between all rail YAPF types (one shared counter, one notification function.

Definition at line 80 of file yapf_costcache.hpp.

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

- src/yapf/yapf_costcache.hpp
- src/yapf/yapf_rail.cpp