rts-sim-module/entity/init.go

76 lines
1.3 KiB
Go

package entity
import (
"joylink.club/ecs"
"joylink.club/rtsssimulation/component/singleton"
"joylink.club/rtsssimulation/repository"
)
// 仿真实体加载
func Load(w ecs.World, repo *repository.Repository) error {
// 初始化世界数据单例组件
singleton.LoadWorldTime(w)
LoadWorldData(w, repo)
// 加载联锁驱采卡相关实体
err := LoadCiQC(w)
if err != nil {
return err
}
// 加载道岔相关实体
err = LoadTurnouts(w)
if err != nil {
return err
}
// 加载信号机相关实体
err = LoadSignals(w)
if err != nil {
return err
}
// 加载车站实体
err = LoadStations(w)
if err != nil {
return err
}
// 加载屏蔽门相关实体
err = LoadPsd(w)
if err != nil {
return err
}
// 加载物理区段相关实体
err = LoadPhysicalSections(w)
if err != nil {
return err
}
// 加载计轴区段相关实体
err = LoadAxleCountingSections(w)
if err != nil {
return err
}
// 加载应答器
err = LoadBalises(w)
if err != nil {
return err
}
// 加载车库门
err = LoadCkm(w)
if err != nil {
return err
}
//加载洗车机
err = LoadXcj(w)
if err != nil {
return err
}
//加载轨道电路
err = LoadTrackCircuit(w)
if err != nil {
return err
}
//加载站台(继电器)
err = LoadPlatform(w)
if err != nil {
return err
}
return err
}