52 lines
1.9 KiB
C++
Executable File
52 lines
1.9 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* Custom aes dtc functions (extends aes_dtc_impl.cpp/.h)
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
*/
|
|
#pragma once
|
|
|
|
#include <AreaEffectSimulation/aes_dtc_impl.h>
|
|
#include <AreaEffectSimulation/aes_dao.h>
|
|
|
|
namespace AreaEffectSimulation
|
|
{
|
|
namespace Interface
|
|
{
|
|
class DtcImplCustom final : public Interface::DtcImpl
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
using Interface::DtcImpl::DtcImpl;
|
|
bool aesItemViewFromEntityId(int entityId, AesType aesType, AesItemView &aesItemView) override;
|
|
bool aesItemFromId(int aesId, AesItem &aesItem) override;
|
|
AesType aesItemIdFromExternalId(long long externalId, int &aesItemId) override;
|
|
bool triggeredImpactsFromEntityId(int entityId, AesType aesType, TriggeredImpacts &triggeredImpacts) override;
|
|
bool effectsFromEntityId(int entityId, AesType aesType, Effects &effects) override;
|
|
int partyForDusMine(int dusMineId) const override;
|
|
QString aesItemNameFromEntityId(int entityId) override;
|
|
// works only if just one trajectory exists (context vulcano) :
|
|
QVector<TrajectoryTimeAware> trajectoriesTimeAwareFromOriginatorIdAndType(int originatorId, ProjectDataManagement::StateChangeOriginator originatorTypeId) override;
|
|
// : works only if just one trajectory exists (context vulcano)
|
|
|
|
// QVector<TrajectoryTimeAware> trajectoryTimeAwaresFromAesId(int aesId) override;
|
|
private:
|
|
void initDAO();
|
|
|
|
AreaEffectSimulation::Dao *m_dao {nullptr};
|
|
|
|
QVector<Database::AesNContamination> m_nContaminations;
|
|
QVector<Database::AesBCContamination> m_bcContaminations;
|
|
QVector<Database::AesMineArea> m_mineAreas;
|
|
QVector<Database::AesDangerArea> m_dangerAreas;
|
|
QVector<Database::AesFunctionalArea> m_functionalAreas;
|
|
QVector<Database::AesTechnicalArea> m_technicalAreas;
|
|
QVector<Database::AesBoobyTrap> m_boobyTraps;
|
|
QVector<Database::AesOffRouteMine> m_offRouteMines;
|
|
QVector<Database::AesExplosionCluster> m_explosionClusters;
|
|
|
|
};
|
|
} //Interface
|
|
} // namespace AreaEffectSimulation
|