agrobot_base/AgroBase/OperationControl/Mapas/Models/MapaMovimentoRover.cs

64 lines
1.2 KiB
C#

namespace OperationControl.Mapas.Models
{
public sealed class MapaMovimentoRover
{
private readonly List<MapaTrechoRastro>
_trechos = new();
private readonly List<MapaPontoWgs84>
_predicao = new();
public string RoverId
{
get;
internal set;
} = "";
public IReadOnlyList<MapaTrechoRastro>
Trechos => _trechos;
public IReadOnlyList<MapaPontoWgs84>
Predicao => _predicao;
public MapaPontoWgs84?
UltimaPosicaoAceita
{
get;
internal set;
}
public int QuantidadeTrechos =>
_trechos.Count;
public int QuantidadePontosPredicao =>
_predicao.Count;
public int QuantidadePontosRastro =>
_trechos.Sum(
x => x.QuantidadePontos
);
internal bool QuebrarRastro
{
get;
set;
} = true;
internal List<MapaTrechoRastro>
TrechosMutaveis => _trechos;
internal List<MapaPontoWgs84>
PredicaoMutavel => _predicao;
}
}