package repository import "joylink.club/rtsssimulation/repository/model/proto" type Transponder struct { Identity km *proto.Kilometer //section *PhysicalSection //turnoutPort TurnoutPort linkPosition *LinkPosition //此位置是应答器初始位置,当前位置需从应答器实体中获取 fixedTelegram []byte //应答器固定报文 fixedUserTelegram []byte //应答器固定用户报文 baliseType proto.Transponder_Type //应答器类型 } func NewTransponder(id string, km *proto.Kilometer, fixedTelegram []byte, fixedUserTelegram []byte, baliseType proto.Transponder_Type) *Transponder { return &Transponder{ Identity: identity{id, proto.DeviceType_DeviceType_Transponder}, km: km, fixedTelegram: fixedTelegram, fixedUserTelegram: fixedUserTelegram, baliseType: baliseType, } } func (t *Transponder) TransponderType() proto.Transponder_Type { return t.baliseType } func (t *Transponder) FixedTelegram() []byte { return t.fixedTelegram } func (t *Transponder) FixedUserTelegram() []byte { return t.fixedUserTelegram } func (t *Transponder) bindLinkPosition(position *LinkPosition) { t.linkPosition = position } func (t *Transponder) LinkPosition() *LinkPosition { return t.linkPosition } func (t *Transponder) Km() *proto.Kilometer { return t.km } func (t *Transponder) BaliseType() proto.Transponder_Type { return t.baliseType }