rts-sim-module/repository/model.go

42 lines
1.2 KiB
Go
Raw Normal View History

package repository
2023-08-29 14:59:31 +08:00
import "joylink.club/rtsssimulation/repository/model/proto"
2023-08-29 18:01:32 +08:00
// 身份信息
type Identity interface {
2023-08-29 14:59:31 +08:00
Id() string
Type() proto.DeviceType
2023-08-29 14:59:31 +08:00
}
2023-08-29 18:01:32 +08:00
// 身份信息
type identity struct {
id string
deviceType proto.DeviceType
2023-08-29 14:59:31 +08:00
}
2023-08-29 18:01:32 +08:00
func (m identity) Id() string {
2023-08-29 14:59:31 +08:00
return m.id
}
func (m identity) Type() proto.DeviceType {
return m.deviceType
2023-08-29 14:59:31 +08:00
}
2023-09-22 10:53:51 +08:00
/////////////////////////////////////////////////////////////
// IRelayCRole 获取继电器在具体电路中的角色(组合类型、功能名称)
// 如信号机3XH-1电路中点灯继电器组合类型-"3XH-1" 功能名称-"DDJ"
// 对应设备电路中有继电器的设备模型须实现该接口
type IRelayCRole interface {
//FindCircuitRoleById 根据继电器id获取在具体电路中的电路角色
//relayId-继电器id
//relayGroup-继电器组合类型
//relayName-继电器在电路中的名称
//find-true找到false未找到
FindCircuitRoleById(relayId string) (relayGroup string, relayName string, find bool)
//FindRelayModelByCRole 根据继电器具体电路角色来获取继电器设备模型
//relayGroup-继电器组合类型
//relayName-继电器在电路中的名称
FindRelayModelByCRole(relayGroup string, relayName string) Identity
}