#ifndef TURNOUT_H_
#define TURNOUT_H_

#include <stddef.h>
#include <stdint.h>

#include "segment.h"
#include "train.h"

typedef struct _Train Train;
typedef struct _Segment Segment;

typedef struct _Turnout {
  // C-style inheritance from Segment
  Segment segment;
  Segment *straight;
  Segment *divergent;
} Turnout;

Segment *get_straight(Turnout *);
Segment *get_divergent(Turnout *);

#endif /* TURNOUT_H_ */
