87 lines
3.1 KiB
C++
Executable File
87 lines
3.1 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* Interface zwischen WMS und ECC (Implementation)
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
*/
|
|
#pragma once
|
|
|
|
#include <WMS_Interface/IWMS2ECC.h>
|
|
#include <QtCore/QObject>
|
|
|
|
#include "logger.h"
|
|
|
|
#include <ParticipantManagement/ppm.hpp>
|
|
#include <ExerciseManagement/exm.hpp>
|
|
|
|
namespace WarehouseManagement
|
|
{
|
|
class ExercisesHandler;
|
|
class IWMS2ECC_Impl : public QObject, IWMS2ECC
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
|
|
explicit IWMS2ECC_Impl(const std::shared_ptr<ExercisesHandler> &exercisesHandler);
|
|
|
|
// reimplemented functions
|
|
|
|
RegisterReturnValue registerPlayer(int playerId, int equipNo, const PlayerAssignState &playerAssignState, const QString &alias,
|
|
const QString &info, int exerciseId) override;
|
|
|
|
IWMS2ECC::UnregisterReturnValue unregister(int equipNo, int exerciseId) override;
|
|
PlayerInfo getPlayerInfo(int playerId, int exerciseId) override;
|
|
|
|
IWMS2ECC::exerciseMap getExercises() const override;
|
|
IWMS2ECC::Exercise getActualExercise() const override;
|
|
|
|
// QMap<EquipId,Amount>
|
|
QMap<int, int> getEquipRequirements(int exerciseId) const override;
|
|
|
|
QMap<int, PlayerInfo> getAllPlayers(int exerciseId) const override;
|
|
QMap<int, PlayerInfo> getAllVehicles(int exerciseId) const override;
|
|
|
|
int getPlayerId(int equipNo, int exerciseId) const override;
|
|
int getEquipNo(int playerId, int exerciseId) const override;
|
|
|
|
int getTypeClassId(int equipTypeId) const override;
|
|
|
|
bool setEquipmentTypes(const IWMS2ECC::equipTypeMap &map);
|
|
bool setEquipmentType(const IWMS2ECC::EquipmentType &et);
|
|
|
|
IWMS2ECC::PlayerInfo convert(const ParticipantManagement::Participant &part, int exerciseId, const QMap<int, ParticipantManagement::Participant> &allParticipants = {}) const;
|
|
static IWMS2ECC::Exercise convert(const ExerciseManagement::Exercise &ex);
|
|
static ParticipantManagement::ParticipantAssignState convert(const IWMS2ECC::PlayerAssignState &state);
|
|
|
|
Q_SIGNALS:
|
|
void registrationReturnValue(int exerciseId, qint32 participantId, IWMS2ECC::RegisterReturnValue retValue);
|
|
|
|
protected:
|
|
QMap<int, IWMS2ECC::PlayerInfo> getAllParticipants(int exerciseId) const;
|
|
|
|
QByteArray getSymbol(int symbolId, int exerciseId, const QColor &color, int role) const;
|
|
|
|
// Convert enums (PlayerAssignState (Wms) & ParticipantAssignState (ExconPlayer)
|
|
static IWMS2ECC::PlayerAssignState convert(const ParticipantManagement::ParticipantAssignState &state);
|
|
|
|
ParticipantManagement::EquipmentType convert(const IWMS2ECC::EquipmentType &et);
|
|
IWMS2ECC::EquipmentType convert(const ParticipantManagement::EquipmentType &et);
|
|
IWMS2ECC::RegisterReturnValue convert(const ParticipantManagement::RegisterReturnValue retValue);
|
|
|
|
static ParticipantManagement::WmsTypeClass convert(int specialType);
|
|
static int convert(ParticipantManagement::TypeClass typeClass);
|
|
static ParticipantManagement::TypeClass convertTypeClass(int typeClass);
|
|
|
|
protected Q_SLOTS:
|
|
void onRegistrationReturnValue(int exerciseId, qint32 participantId, ParticipantManagement::RegisterReturnValue retValue);
|
|
|
|
private:
|
|
const std::shared_ptr<ExercisesHandler> m_exercisesHandler;
|
|
|
|
NGL::INGLLogger &m_logger;
|
|
};
|
|
|
|
} // Namespace WarehouseManagement
|