# CYapfOriginTileTwoWayT< Types > Class Template Reference

YAPF origin provider base class - used when there are two tile/trackdir origins. More...

`#include <yapf_common.hpp>`

Inheritance diagram for CYapfOriginTileTwoWayT< Types >:

## Public Types
typedef Types::Tpf | Tpf
| the pathfinder class (derived from THIS class)
typedef Types::NodeList::Titem | Node
| this will be our node type
typedef Node::Key | Key
| key to hash tables
## Public Member Functions
void | SetOrigin (TileIndex tile, Trackdir td, TileIndex tiler=INVALID_TILE, Trackdir tdr=INVALID_TRACKDIR, int reverse_penalty=0, bool treat_first_red_two_way_signal_as_eol=true)
| set origin (tiles, trackdirs, etc.)
void | PfSetStartupNodes ()
| Called when YAPF needs to place origin nodes into open list.
FORCEINLINE bool | TreatFirstRedTwoWaySignalAsEOL ()
| return true if first two-way signal should be treated as dead end
## Protected Member Functions
FORCEINLINE Tpf & | Yapf ()
| to access inherited path finder
## Protected Attributes
TileIndex | m_orgTile
| first origin tile
Trackdir | m_orgTd
| first origin trackdir
TileIndex | m_revTile
| second (reversed) origin tile
Trackdir | m_revTd
| second (reversed) origin trackdir
int | m_reverse_penalty
| penalty to be added for using the reversed origin
bool | m_treat_first_red_two_way_signal_as_eol
| in some cases (leaving station) we need to handle first two-way signal differently

## Detailed Description

### template<class Types>
class CYapfOriginTileTwoWayT< Types >

YAPF origin provider base class - used when there are two tile/trackdir origins.

Definition at line 50 of file yapf_common.hpp.

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

- src/yapf/yapf_common.hpp