Files
qt5-legatus-legacy/Lts/Services/AreaEffectSimulation/EffectorFiringStrategy/dm72_firing_strategy.h
T
2026-08-13 18:33:10 +02:00

41 lines
798 B
C++
Executable File

/**
* Effector Firing Strategy for DM72
* $Id$
* $HeadURL$
* $Author$
* Created by Hannes Fritsche, ESZS, 2026-05-21
*/
#pragma once
#include "abstract_firing_strategy.h"
namespace LtsUtils
{
class QPoint3D;
}
namespace AreaEffectSimulation
{
class Dm72FiringStrategy : public AbstractFiringStrategy
{
Q_OBJECT
public:
explicit Dm72FiringStrategy(ObjectEffector *effector);
void doFiring() override final;
private: // methods
void init();
QVector<QPointF> mineLayingCentroids() const;
double angleToMhpUtm(const QPointF &mhpUtm) const;
private: // attributes
QVector<LtsUtils::QPoint3D> m_impactPoints;
int m_impactPointIndex {0};
int m_effectDurationMsec = 3 * 60 * 60 * 1000; // default 3h
}; // class Dm72FiringStrategy
} // namespace AreaEffectSimulation