#ifndef MODEL_ROOT_H_
#define MODEL_ROOT_H_

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

#define TRAINS_MAX 200
#define SEGMENTS_MAX 750
#define TURNOUTS_MAX 250

typedef struct _ModelRoot {
  uint32_t train_count;
  uint32_t segment_count;
  uint32_t turnout_count;
  Train *trains[TRAINS_MAX];
  Segment *segments[SEGMENTS_MAX];
  Turnout *turnouts[TURNOUTS_MAX];
} ModelRoot;

#endif /* MODEL_ROOT_H_ */
