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

43 lines
1.1 KiB
C++
Executable File

/**
* Handler for player data
* $Id$
* $HeadURL$
* $Author$
* Created by gr, SLSE, 2017-02-20
*/
#pragma once
#include "dds_handler.h"
#include "logger.h"
#include <QHash>
#include <ProjectDataManagement/pdm_dtc.h>
// Project Data Management - Handling for Effect Show Actors
namespace EffectShowManagement
{
/**
* @brief Handler for the determination of the type of ammunition.
*
* (1)Receives the charge type from the Project Data Management service.\n
* (2)Retrieves the type of ammunition via charge type id from Area Effect Simulation.\n
*/
class HandlerPdmData : public QObject
{
Q_OBJECT
public:
explicit HandlerPdmData(const std::shared_ptr<DdsHandler> &ddsHandler,
QObject *parent = nullptr);
bool isSmoke(const AreaEffectSimulation::ChargeStruct &chargeStruct) const;
int effectShowCount(const AreaEffectSimulation::ChargeStruct &chargeStruct) const;
int getCadence(const int chargeId) const;
private: // attributes
std::shared_ptr<DdsHandler> m_ddsHandler;
NGL::INGLLogger &m_logger;
};
} // namespace EffectShowManagement