Files
qt5-legatus-legacy/Lts/Plugins/Timeline/Gui/EventTimeline/tln_utils.h
T
2026-08-13 18:33:10 +02:00

90 lines
3.5 KiB
C++
Executable File

#pragma once
#include <ProjectDataManagement/pdm_enums.hpp>
#include <QString>
namespace Timeline
{
enum EventType
{
Unknown = ProjectDataManagement::EventType_def::Unknown,
Hit = ProjectDataManagement::EventType_def::Hit,
WeaponAssignment = ProjectDataManagement::EventType_def::WeaponAssignment,
BiteMessage = ProjectDataManagement::EventType_def::BiteMessage,
FireEvent = ProjectDataManagement::EventType_def::FireEvent,
HitBuilding = ProjectDataManagement::EventType_def::HitBuilding,
Manipulation = ProjectDataManagement::EventType_def::Manipulation,
CameraVideo = ProjectDataManagement::EventType_def::CameraVideo,
RadioCnr = ProjectDataManagement::EventType_def::RadioCnr,
RadioTvc = ProjectDataManagement::EventType_def::RadioTvc,
HitEffectSimulation = ProjectDataManagement::EventType_def::HitEffectSimulation,
HitMine = ProjectDataManagement::EventType_def::HitMine,
HitN = ProjectDataManagement::EventType_def::HitN,
HitC = ProjectDataManagement::EventType_def::HitC,
EnterDangerArea = ProjectDataManagement::EventType_def::EnterDangerArea,
LeaveDangerArea = ProjectDataManagement::EventType_def::LeaveDangerArea,
EnterMineArea = ProjectDataManagement::EventType_def::EnterMineArea,
LeaveMineArea = ProjectDataManagement::EventType_def::LeaveMineArea,
CrossBorderline = ProjectDataManagement::EventType_def::CrossLocalBorderline,
// CrossLocalBorderline = ProjectDataManagement::EventType_def::CrossLocalBorderline,
EnterFunctionalArea = ProjectDataManagement::EventType_def::EnterFunctionalArea,
LeaveFunctionalArea = ProjectDataManagement::EventType_def::LeaveFunctionalArea,
EnterNuclear = ProjectDataManagement::EventType_def::EnterNuclear,
LeaveNuclear = ProjectDataManagement::EventType_def::LeaveNuclear,
// CrossGlobalBorderline = ProjectDataManagement::EventType_def::CrossGlobalBorderline,
HitB = ProjectDataManagement::EventType_def::HitB,
FriendlyFire = ProjectDataManagement::EventType_def::FriendlyFire,
HitGasPipe = ProjectDataManagement::EventType_def::HitGasPipe,
MineArea = ProjectDataManagement::EventType_def::MineArea,
NContamination = ProjectDataManagement::EventType_def::NContamination,
BCContamination = ProjectDataManagement::EventType_def::BCContamination,
DangerArea = ProjectDataManagement::EventType_def::DangerArea,
FunctionalArea = ProjectDataManagement::EventType_def::FunctionalArea,
MineCorridor = ProjectDataManagement::EventType_def::MineCorridor,
Borderline = ProjectDataManagement::EventType_def::Borderline,
TechnicalArea = ProjectDataManagement::EventType_def::TechnicalArea,
GasPipe = ProjectDataManagement::EventType_def::GasPipe,
Sanitation = ProjectDataManagement::EventType_def::Sanitation,
EquipmentErrorReport = ProjectDataManagement::EventType_def::EquipmentErrorReport,
EmergencyCall = ProjectDataManagement::EventType_def::EmergencyCall,
Marker = 666,
Block = 999,
};
typedef QVector<EventType> EventTypes;
QString eventTypeString(EventType eventType);
EventType toEventType(int eventType);
int eventTypeCategory(EventType eventType);
EventTypes filterEventTypes();
bool isAudioEvent(EventType eventType);
bool isVideoEvent(EventType eventType);
bool isAudioVideoEvent(EventType eventType);
bool isHitEvent(EventType eventType);
bool isParticipantEvent(EventType eventType);
enum class TrackType
{
Unknown = 0,
Participant,
TvcRoot, TvcStream,
CnrRoot, CnrStream,
/* Video: */ BuildingsRoot, BuildingHits, BuildingStream,
Party,
Marker,
};
typedef QVector<TrackType> TrackTypes;
}