Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/ProjectDataManagement/pdm_dtc.h.stub
T

291 lines
11 KiB
Plaintext

#pragma once
// STUB-HEADER: Diese Datei wird normalerweise von ddsdtc generiert
// Für die Migration erstellen wir minimale Forward-Declarations und Stubs
#include <QObject>
#include <QString>
#include <QVector>
#include <QStringList>
#include <QJsonObject>
#include <memory>
#include <functional>
namespace DDSConnector
{
class DdsConnector;
}
namespace ProjectDataManagement
{
// Forward declarations and stub types
enum class GearClass
{
Unknown = 0,
// Add other values as needed
};
enum class VolatilityType
{
Unknown = 0,
// Add other values as needed
};
enum class IgniterFunctionBase
{
IfbImpact = 0,
// Add other values as needed
};
enum class VulnerabilityClass
{
Unknown = 0,
// Add other values as needed
};
enum class CasEffect
{
None = 0,
// Add other values as needed
};
enum class ChargeTypeProperty
{
None = 0,
// Add other values as needed
};
struct ChargeType
{
int id = 0;
QString name;
QString shortName;
QString baseSuffix;
int gearClass = 0;
QJsonObject properties;
// Add other fields as needed
};
struct IgniterType
{
int id = 0;
QString name;
QString shortName;
QJsonObject properties;
// Add other fields as needed
};
struct IgniterFunction
{
int id = 0;
QString name;
QString shortName;
QJsonObject properties;
// Add other fields as needed
};
struct LoadType
{
int id = 0;
QString name;
QString shortName;
QJsonObject properties;
// Add other fields as needed
};
struct TargetSubType
{
int id = 0;
// Add other fields as needed
};
struct GearType
{
int id = 0;
// Add other fields as needed
};
struct GearTypeChargeType
{
int id = 0;
// Add other fields as needed
};
struct ChargeTypeIgniterTypeIgniterFunction
{
int id = 0;
int chargeTypeId = 0;
int igniterTypeId = 0;
int igniterFunctionId = 0;
int igniterFunctionBase = 0;
double impactRadius = 0.0;
int hazardDistance = 0;
int chargeLegacyId = 0;
QString adlerChargeTypeName;
QString adlerIgniterTypeName;
QString adlerIgniterFunctionName;
bool isSmart = false;
bool isSmoke = false;
bool isDus = false;
bool isConcrete = false;
int volatilityTypeId = 0;
QJsonObject properties;
// Add other fields as needed
};
struct ChargeTypeLoadType
{
int id = 0;
int chargeTypeId = 0;
int loadTypeId = 0;
QJsonObject properties;
// Add other fields as needed
};
struct BuildingChargeEffect
{
int id = 0;
// Add other fields as needed
};
struct SanitationProcedure
{
int id = 0;
// Add other fields as needed
};
struct PdmBaseName
{
QString name;
// Add other fields as needed
};
namespace Interface
{
// Base class stub - normally generated by DDS
class DtcImpl : public QObject
{
Q_OBJECT
public:
explicit DtcImpl(const std::shared_ptr<DDSConnector::DdsConnector> &ddsConnector = nullptr);
~DtcImpl() override = default;
// Virtual methods that DtcImplCustom overrides
virtual QVector<ProjectDataManagement::ChargeType> chargesForGearClass(GearClass gearClass) = 0;
virtual QVector<ProjectDataManagement::IgniterType> ignitersForChargeType(int chargeTypeId) = 0;
virtual QVector<ProjectDataManagement::ChargeTypeIgniterTypeIgniterFunction> igniterFunctionsForChargeTypeIgniterType(
int chargeTypeId, int igniterTypeId) = 0;
virtual QVector<ProjectDataManagement::LoadType> loadsForChargeType(int chargeTypeId) = 0;
virtual QVector<TargetSubType> targetSubTypesForTargetType(int targetType) = 0;
virtual double expansionFactor(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual double impactRadius(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual double impactEdgeLength(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isDryFire(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual int mineClass(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool canBeThrown(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool canBeCreated(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isIed(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isReactivatable(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isSmart(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual int maxEffectShows(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isSmoke(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isVisible(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isIndirect(int chargeTypeId) = 0;
virtual int searchRadius(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool showHitline(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual int remainingTasCode(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual int secondaryRemainingTasCode(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual int segments(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isLine(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isFromMineLayer(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isMineLaying(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual QJsonObject mineLayingPattern(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual int height(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isLaserGuidable(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isUasDroppable(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isJamming(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual QVector<int> spacing(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual VolatilityType volatilityTypeId(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual int hazardDistance(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual QVector<CasEffect> casEffects(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual GearClass gearClassFromChargeTypeId(int chargeTypeId) = 0;
virtual QVector<int> gearTypeIdFromChargeTypeId(int chargeTypeId) = 0;
virtual int chargeTypeIdFromLegacyId(GearClass gearClass, int legacyId) = 0;
virtual bool isGmlrs(int chargeTypeId) = 0;
virtual bool isDm72(int chargeTypeId) = 0;
virtual bool isRocket(int chargeTypeId) = 0;
virtual ChargeTypeIgniterTypeIgniterFunction getChargeTypeIgniterTypeIgniterFunction(
int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual ChargeTypeLoadType getChargeTypeLoadType(int chargeTypeId, int loadTypeId) = 0;
virtual bool canRestock(int gearTypeId) = 0;
virtual bool canSetDefaults(int gearTypeId) = 0;
virtual int maxCharges(int gearTypeId) = 0;
virtual int cadence(int gearTypeId) = 0;
virtual int getAdlerWeaponSystemId(int gearTypeId) = 0;
virtual int factoryDefault(int gearTypeId, int chargeTypeId) = 0;
virtual int maxCharge(int gearTypeId, int chargeTypeId) = 0;
virtual bool isAtMine(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual bool isApMine(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual double getLethalRadius(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual double getNonLethalRadius(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual double getMaxRange(int chargeTypeId, int gearTypeId) = 0;
virtual ProjectDataManagement::BuildingChargeEffect getBuildingChargeEffectByChargeTypeId(int chargeTypeId) = 0;
virtual bool isVirtuallyFireable(int chargeTypeId) = 0;
virtual bool isAdlerChargeType(int chargeTypeId) = 0;
virtual int getAmountFireMarkers(int firePurposeId) = 0;
virtual bool getWithDurationFirePurpose(int firePurposeId) = 0;
// get Adler names/ids
virtual int getTargetTypeIdFromAdlerTargetType(const QString &typ) = 0;
virtual int getTargetSubTypeIdFromAdlerTargetSubType(const QString &subTyp) = 0;
virtual int getChargeTypeIdFromAdlerCharges(const QString &geschosssorte) = 0;
virtual int getIgniterTypeIdFromAdlerIgniter(const QString &zuender) = 0;
virtual int getIgniterFunctionIdFromAdlerIgniterFunction(const QString &zuenderFunktion) = 0;
virtual int getLoadTypeIdFromAdlerLoad(const QString &ladung) = 0;
virtual QString adlerTargetTypeName(int targetTypeId) = 0;
virtual QString adlerTargetSubTypeName(int targetSubTypeId) = 0;
virtual QString adlerChargeTypeName(int chargeTypeId) = 0;
virtual QString adlerIgniterTypeName(int igniterTypeId) = 0;
virtual QString adlerIgniterFunctionName(int igniterFunctionId) = 0;
virtual QString adlerLoadTypeName(int loadTypeId) = 0;
virtual QString trBiteComponentTextName(int biteComponentId) = 0;
virtual QString trCanComponentStringName(int canComponentId) = 0;
virtual QString trChargeTypeShortName(int chargeTypeId, bool omitBaseSuffix = false) = 0;
virtual QString trChargeTypeName(int chargeTypeId, bool omitBaseSuffix = false) = 0;
virtual QString trFirePurposeName(int firePurposeId) = 0;
virtual QString trGearTypeName(int gearTypeId) = 0;
virtual QString trIgniterTypeName(int igniterTypeId) = 0;
virtual QString trIgniterTypeShortName(int igniterTypeId) = 0;
virtual QString trIgniterFunctionName(int igniterFunctionId) = 0;
virtual QString trIgniterFunctionShortName(int igniterFunctionId) = 0;
virtual QString trLoadTypeName(int loadTypeId) = 0;
virtual QString trLoadTypeShortName(int loadTypeId) = 0;
virtual QString trTargetTypeName(int targetTypeId) = 0;
virtual QString trTargetSubTypeName(int targetSubTypeId) = 0;
virtual QString trLanguageHmiName(int languageHmiId) = 0;
virtual QString trLanguageXduName(int languageXduId) = 0;
virtual QString trNuclearPresetName(int nucularPresetId) = 0; // "'Nucular'. It's pronounced 'Nucular'!"
virtual QString trRadioGroupName(int radioGroupId) = 0;
virtual QString trVulnerabilityKindName(int vulnerabilityKindId, VulnerabilityClass vulnerabilityClassId) = 0;
virtual QString trSanitationMaterialName(int sanitationMaterialId) = 0;
virtual QStringList chargeNames(std::vector<int> &chargeIds) = 0;
virtual int getAvailableChargeTypeId(int chargeTypeId) = 0;
virtual ChargeTypeProperty getChargeTypeSpecialProperty(int chargeTypeId, int igniterTypeId, int igniterFunctionId) = 0;
virtual QVector<SanitationProcedure> getSanitationProcedures(qint64 procedures) = 0;
virtual QStringList sanitationProceduresList(qint64 procedures) = 0;
};
class Dtc;
class Ftc;
} // namespace Interface
} // namespace ProjectDataManagement