Persist aligned packet handoff shaping upstream
This commit is contained in:
parent
ed3184f628
commit
1e73b5591c
5 changed files with 284 additions and 8 deletions
|
|
@ -338,13 +338,15 @@ namespace HyperTwistCoachDashboardWidgetInternal
|
|||
|
||||
bool IsAlignedTightFollowUpPacketSourceLabel(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel == TEXT("coach-memory-aligned-follow-up-packet-structure-tight-follow-up");
|
||||
return SourceLabel == TEXT("coach-memory-aligned-follow-up-packet-structure-tight-follow-up")
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-"));
|
||||
}
|
||||
|
||||
bool IsAlignedBroadRecommendedPacketSourceLabel(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-broad-recommended");
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-broad-recommended")
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-"));
|
||||
}
|
||||
|
||||
bool IsAlignedTightFollowUpGuidanceSourceLabel(const FString& SourceLabel)
|
||||
|
|
@ -399,6 +401,10 @@ namespace HyperTwistCoachDashboardWidgetInternal
|
|||
}
|
||||
if (IsAlignedTightFollowUpGuidanceSourceLabel(SourceLabel))
|
||||
{
|
||||
if (SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-")))
|
||||
{
|
||||
return TEXT("accepted aligned tight follow-up-packet handoff history");
|
||||
}
|
||||
return SourceLabel
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-tight-follow-up")
|
||||
? TEXT("aligned tight retained follow-up-packet structure history")
|
||||
|
|
@ -406,6 +412,10 @@ namespace HyperTwistCoachDashboardWidgetInternal
|
|||
}
|
||||
if (IsAlignedBroadRecommendedGuidanceSourceLabel(SourceLabel))
|
||||
{
|
||||
if (SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-")))
|
||||
{
|
||||
return TEXT("accepted aligned broad recommended-packet handoff history");
|
||||
}
|
||||
return SourceLabel
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-broad-recommended")
|
||||
? TEXT("aligned broad retained recommended-packet structure history")
|
||||
|
|
@ -995,8 +1005,38 @@ namespace HyperTwistCoachDashboardWidgetInternal
|
|||
const bool bBroadMethodDrillRecoveryStructurePlanDriven = false,
|
||||
const bool bTrustedMethodDrillRecoveryStructurePlanDriven = false,
|
||||
const bool bReliableTrustedMethodDrillRecoveryStructurePlanDriven = false,
|
||||
const bool bReliableTrustedMethodDrillRecoveryStructurePlanAlignmentDriven = false)
|
||||
const bool bReliableTrustedMethodDrillRecoveryStructurePlanAlignmentDriven = false,
|
||||
const bool bAlignedTightFollowUpPacketAcceptedDriven = false,
|
||||
const bool bAlignedBroadRecommendedPacketAcceptedDriven = false)
|
||||
{
|
||||
if (bAlignedTightFollowUpPacketAcceptedDriven)
|
||||
{
|
||||
switch (HandoffKind)
|
||||
{
|
||||
case EHyperTwistTrainingCoachHandoffKind::Queue:
|
||||
return TEXT("dashboard-handoff-aligned-follow-up-packet-tight-queued");
|
||||
case EHyperTwistTrainingCoachHandoffKind::FollowUp:
|
||||
return TEXT("dashboard-handoff-aligned-follow-up-packet-tight-follow-up");
|
||||
case EHyperTwistTrainingCoachHandoffKind::Recommended:
|
||||
return TEXT("dashboard-handoff-aligned-follow-up-packet-tight-recommended");
|
||||
default:
|
||||
return FString();
|
||||
}
|
||||
}
|
||||
if (bAlignedBroadRecommendedPacketAcceptedDriven)
|
||||
{
|
||||
switch (HandoffKind)
|
||||
{
|
||||
case EHyperTwistTrainingCoachHandoffKind::Queue:
|
||||
return TEXT("dashboard-handoff-aligned-follow-up-packet-broad-queued");
|
||||
case EHyperTwistTrainingCoachHandoffKind::FollowUp:
|
||||
return TEXT("dashboard-handoff-aligned-follow-up-packet-broad-follow-up");
|
||||
case EHyperTwistTrainingCoachHandoffKind::Recommended:
|
||||
return TEXT("dashboard-handoff-aligned-follow-up-packet-broad-recommended");
|
||||
default:
|
||||
return FString();
|
||||
}
|
||||
}
|
||||
if (MethodDrillRecoveryMemoryBias == EMethodDrillRecoveryMemoryBias::Strong)
|
||||
{
|
||||
switch (HandoffKind)
|
||||
|
|
@ -6419,10 +6459,27 @@ FString UHyperTwistCoachDashboardWidget::ResolveDashboardHandoffStartActionSourc
|
|||
const bool bUseMethodDrillLabel =
|
||||
bDisplayedCoachHandoffRecommendationUsedMethodDrillWeighting
|
||||
&& DisplayedCoachHandoffRecommendationKind == HandoffKind;
|
||||
const bool bUseAlignedTightPacketAcceptedLabel =
|
||||
bDisplayedCoachHandoffRecommendationUsedAlignedTightPacketAcceptedHistory
|
||||
&& DisplayedCoachHandoffRecommendationKind == HandoffKind;
|
||||
const bool bUseAlignedBroadPacketAcceptedLabel =
|
||||
bDisplayedCoachHandoffRecommendationUsedAlignedBroadPacketAcceptedHistory
|
||||
&& DisplayedCoachHandoffRecommendationKind == HandoffKind;
|
||||
return HyperTwistCoachDashboardWidgetInternal::DashboardHandoffSourceLabel(
|
||||
HandoffKind,
|
||||
bUseDeferredFirstSuppressionLabel,
|
||||
bUseMethodDrillLabel
|
||||
bUseMethodDrillLabel,
|
||||
HyperTwistCoachDashboardWidgetInternal::EMethodDrillRecoveryMemoryBias::None,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
bUseAlignedTightPacketAcceptedLabel,
|
||||
bUseAlignedBroadPacketAcceptedLabel
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -9694,6 +9751,8 @@ void UHyperTwistCoachDashboardWidget::UpdateDashboardPresentation()
|
|||
DisplayedCoachHandoffRecommendationKind = EHyperTwistTrainingCoachHandoffKind::None;
|
||||
bDisplayedCoachHandoffRecommendationUsedDeferredFirstSuppressionSignal = false;
|
||||
bDisplayedCoachHandoffRecommendationUsedMethodDrillWeighting = false;
|
||||
bDisplayedCoachHandoffRecommendationUsedAlignedTightPacketAcceptedHistory = false;
|
||||
bDisplayedCoachHandoffRecommendationUsedAlignedBroadPacketAcceptedHistory = false;
|
||||
DisplayedCoachHandoffMethodDrillRecoveryMemoryStartActionSourceLabel.Reset();
|
||||
FString CoachHandoffRecommendationStatusLine;
|
||||
FString CoachHandoffRecommendationDetailLine;
|
||||
|
|
@ -10441,6 +10500,24 @@ void UHyperTwistCoachDashboardWidget::UpdateDashboardPresentation()
|
|||
|| bHandoffRecommendationUsedMethodDrillRecoveryMemory
|
||||
|| bHandoffRecommendationUsedStrongRetainedMethodDrillRecoveryPosture
|
||||
|| bHandoffRecommendationUsedWeakRetainedMethodDrillRecoveryPosture;
|
||||
bDisplayedCoachHandoffRecommendationUsedAlignedTightPacketAcceptedHistory =
|
||||
HandoffHistoryBias.AlignedTightFollowUpPacketAcceptedDeltaCount > 0
|
||||
&& HandoffHistoryBias.AlignedTightFollowUpPacketAcceptedDeltaCount
|
||||
>= HandoffHistoryBias.AlignedBroadRecommendedPacketAcceptedDeltaCount
|
||||
&& (DisplayedCoachHandoffRecommendationKind
|
||||
== EHyperTwistTrainingCoachHandoffKind::FollowUp
|
||||
|| (DisplayedCoachHandoffRecommendationKind
|
||||
== EHyperTwistTrainingCoachHandoffKind::Queue
|
||||
&& bQueueLooksFollowUpOrRecovery));
|
||||
bDisplayedCoachHandoffRecommendationUsedAlignedBroadPacketAcceptedHistory =
|
||||
HandoffHistoryBias.AlignedBroadRecommendedPacketAcceptedDeltaCount > 0
|
||||
&& HandoffHistoryBias.AlignedBroadRecommendedPacketAcceptedDeltaCount
|
||||
>= HandoffHistoryBias.AlignedTightFollowUpPacketAcceptedDeltaCount
|
||||
&& (DisplayedCoachHandoffRecommendationKind
|
||||
== EHyperTwistTrainingCoachHandoffKind::Recommended
|
||||
|| (DisplayedCoachHandoffRecommendationKind
|
||||
== EHyperTwistTrainingCoachHandoffKind::Queue
|
||||
&& bQueueLooksRecommendedOrPrimary));
|
||||
const bool bHandoffRecommendationUsedStrongMethodDrillFollowUpPacket =
|
||||
bHandoffRecommendationUsedMethodDrillWeighting
|
||||
&& HandoffRecommendationKind
|
||||
|
|
|
|||
|
|
@ -333,14 +333,22 @@ namespace HyperTwistTrainingCoachLibraryInternal
|
|||
bool IsAlignedTightFollowUpGuidanceSourceLabel(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel == TEXT("recommendation-history-aligned-tight-follow-up-outcome")
|
||||
|| SourceLabel == TEXT("coach-memory-aligned-follow-up-packet-structure-tight-follow-up");
|
||||
|| SourceLabel == TEXT("coach-memory-aligned-follow-up-packet-structure-tight-follow-up")
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-"))
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-recommended");
|
||||
}
|
||||
|
||||
bool IsAlignedBroadRecommendedGuidanceSourceLabel(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel == TEXT("recommendation-history-aligned-broad-recommended-outcome")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-broad-recommended");
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-broad-recommended")
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-"))
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-recommended");
|
||||
}
|
||||
|
||||
FString DescribeCoachMemorySourceLabel(const FString& SourceLabel)
|
||||
|
|
@ -395,6 +403,13 @@ namespace HyperTwistTrainingCoachLibraryInternal
|
|||
}
|
||||
if (IsAlignedTightFollowUpGuidanceSourceLabel(SourceLabel))
|
||||
{
|
||||
if (SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-"))
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-recommended"))
|
||||
{
|
||||
return TEXT("accepted aligned tight follow-up-packet handoff history");
|
||||
}
|
||||
return SourceLabel
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-tight-follow-up")
|
||||
? TEXT("aligned tight retained follow-up-packet structure history")
|
||||
|
|
@ -402,6 +417,13 @@ namespace HyperTwistTrainingCoachLibraryInternal
|
|||
}
|
||||
if (IsAlignedBroadRecommendedGuidanceSourceLabel(SourceLabel))
|
||||
{
|
||||
if (SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-"))
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-recommended"))
|
||||
{
|
||||
return TEXT("accepted aligned broad recommended-packet handoff history");
|
||||
}
|
||||
return SourceLabel
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-broad-recommended")
|
||||
? TEXT("aligned broad retained recommended-packet structure history")
|
||||
|
|
|
|||
|
|
@ -133,6 +133,20 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-method-drill-"));
|
||||
}
|
||||
|
||||
bool IsAlignedTightFollowUpPacketDashboardHandoffSource(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-recommended");
|
||||
}
|
||||
|
||||
bool IsAlignedBroadRecommendedPacketDashboardHandoffSource(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-recommended");
|
||||
}
|
||||
|
||||
bool IsStrongMethodDrillRecoveryDashboardHandoffSource(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-strong-queued")
|
||||
|
|
@ -425,13 +439,15 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
|
||||
bool IsAlignedTightFollowUpPacketStructureCoachMemorySource(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel == TEXT("coach-memory-aligned-follow-up-packet-structure-tight-follow-up");
|
||||
return SourceLabel == TEXT("coach-memory-aligned-follow-up-packet-structure-tight-follow-up")
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-"));
|
||||
}
|
||||
|
||||
bool IsAlignedBroadRecommendedPacketStructureCoachMemorySource(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-broad-recommended");
|
||||
== TEXT("coach-memory-aligned-follow-up-packet-structure-broad-recommended")
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-"));
|
||||
}
|
||||
|
||||
FString ResolveMethodDrillFollowUpPacketStructureRecoverySourceLabel(
|
||||
|
|
@ -543,6 +559,8 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-structure-plan-broad-trusted-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-weak-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-packet-weak-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-posture-strong-queued")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-posture-weak-queued"))
|
||||
{
|
||||
|
|
@ -566,6 +584,8 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-structure-plan-broad-trusted-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-weak-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-packet-weak-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-posture-strong-follow-up")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-posture-weak-follow-up"))
|
||||
{
|
||||
|
|
@ -589,6 +609,8 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-structure-plan-broad-trusted-recommended")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-weak-recommended")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-packet-weak-recommended")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-tight-recommended")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-aligned-follow-up-packet-broad-recommended")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-posture-strong-recommended")
|
||||
|| SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-posture-weak-recommended"))
|
||||
{
|
||||
|
|
@ -9276,6 +9298,14 @@ FHyperTwistTrainingCoachMemorySnapshot UHyperTwistTrainingRepositoryLibrary::Der
|
|||
QueueExecutionSummary.StartedWeakMethodDrillFollowUpPacketQueuedHandoffEventCount
|
||||
+ QueueExecutionSummary.StartedWeakMethodDrillFollowUpPacketFollowUpHandoffEventCount
|
||||
+ QueueExecutionSummary.StartedWeakMethodDrillFollowUpPacketRecommendedHandoffEventCount;
|
||||
const int32 AlignedTightFollowUpPacketAcceptedStartedCount =
|
||||
QueueExecutionSummary.StartedAlignedTightFollowUpPacketQueuedHandoffEventCount
|
||||
+ QueueExecutionSummary.StartedAlignedTightFollowUpPacketFollowUpHandoffEventCount
|
||||
+ QueueExecutionSummary.StartedAlignedTightFollowUpPacketRecommendedHandoffEventCount;
|
||||
const int32 AlignedBroadRecommendedPacketAcceptedStartedCount =
|
||||
QueueExecutionSummary.StartedAlignedBroadRecommendedPacketQueuedHandoffEventCount
|
||||
+ QueueExecutionSummary.StartedAlignedBroadRecommendedPacketFollowUpHandoffEventCount
|
||||
+ QueueExecutionSummary.StartedAlignedBroadRecommendedPacketRecommendedHandoffEventCount;
|
||||
if (StrongMethodDrillFollowUpPacketStartedCount > 0
|
||||
&& StrongMethodDrillFollowUpPacketStartedCount
|
||||
>= WeakMethodDrillFollowUpPacketStartedCount)
|
||||
|
|
@ -9326,6 +9356,61 @@ FHyperTwistTrainingCoachMemorySnapshot UHyperTwistTrainingRepositoryLibrary::Der
|
|||
TEXT("coach-memory-method-drill-follow-up-packet-weak");
|
||||
}
|
||||
}
|
||||
if (AlignedTightFollowUpPacketAcceptedStartedCount > 0
|
||||
&& AlignedTightFollowUpPacketAcceptedStartedCount
|
||||
>= AlignedBroadRecommendedPacketAcceptedStartedCount)
|
||||
{
|
||||
const int32 AlignedPacketAcceptedBias = FMath::Clamp(
|
||||
AlignedTightFollowUpPacketAcceptedStartedCount
|
||||
- AlignedBroadRecommendedPacketAcceptedStartedCount
|
||||
+ 1,
|
||||
1,
|
||||
3);
|
||||
Snapshot.FollowUpGuidanceContinueBias += AlignedPacketAcceptedBias;
|
||||
Snapshot.SuppressedPrimaryQueuePressureCount +=
|
||||
FMath::Max(1, AlignedPacketAcceptedBias - 1);
|
||||
if (Snapshot.PreferredGuidanceLane == EHyperTwistTrainingCoachGuidanceLane::None
|
||||
|| Snapshot.PreferredGuidanceLane
|
||||
== EHyperTwistTrainingCoachGuidanceLane::Recommended
|
||||
|| Snapshot.PreferredGuidanceSourceLabel.StartsWith(TEXT("recommendation-history"))
|
||||
|| HyperTwistTrainingRepositoryLibraryInternal::IsAlignedTightFollowUpPacketStructureCoachMemorySource(
|
||||
Snapshot.PreferredGuidanceSourceLabel)
|
||||
|| HyperTwistTrainingRepositoryLibraryInternal::IsAlignedBroadRecommendedPacketStructureCoachMemorySource(
|
||||
Snapshot.PreferredGuidanceSourceLabel))
|
||||
{
|
||||
Snapshot.PreferredGuidanceLane =
|
||||
EHyperTwistTrainingCoachGuidanceLane::FollowUp;
|
||||
Snapshot.PreferredGuidanceSourceLabel =
|
||||
TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-follow-up");
|
||||
}
|
||||
}
|
||||
else if (AlignedBroadRecommendedPacketAcceptedStartedCount > 0)
|
||||
{
|
||||
const int32 AlignedPacketAcceptedRedirectBias = FMath::Clamp(
|
||||
AlignedBroadRecommendedPacketAcceptedStartedCount
|
||||
- AlignedTightFollowUpPacketAcceptedStartedCount
|
||||
+ 1,
|
||||
1,
|
||||
3);
|
||||
Snapshot.RecommendedGuidanceContinueBias +=
|
||||
AlignedPacketAcceptedRedirectBias;
|
||||
Snapshot.SuppressedFollowUpQueuePressureCount +=
|
||||
AlignedPacketAcceptedRedirectBias;
|
||||
if (Snapshot.PreferredGuidanceLane == EHyperTwistTrainingCoachGuidanceLane::None
|
||||
|| Snapshot.PreferredGuidanceLane
|
||||
== EHyperTwistTrainingCoachGuidanceLane::FollowUp
|
||||
|| Snapshot.PreferredGuidanceSourceLabel.StartsWith(TEXT("recommendation-history"))
|
||||
|| HyperTwistTrainingRepositoryLibraryInternal::IsAlignedTightFollowUpPacketStructureCoachMemorySource(
|
||||
Snapshot.PreferredGuidanceSourceLabel)
|
||||
|| HyperTwistTrainingRepositoryLibraryInternal::IsAlignedBroadRecommendedPacketStructureCoachMemorySource(
|
||||
Snapshot.PreferredGuidanceSourceLabel))
|
||||
{
|
||||
Snapshot.PreferredGuidanceLane =
|
||||
EHyperTwistTrainingCoachGuidanceLane::Recommended;
|
||||
Snapshot.PreferredGuidanceSourceLabel =
|
||||
TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-recommended");
|
||||
}
|
||||
}
|
||||
const bool bStrongMethodDrillRecoveryPacketQueuedHandoff =
|
||||
QueueExecutionSummary.StartedStrongMethodDrillRecoveryPacketQueuedHandoffEventCount > 0;
|
||||
const bool bStrongMethodDrillRecoveryPacketFollowUpHandoff =
|
||||
|
|
@ -9350,6 +9435,18 @@ FHyperTwistTrainingCoachMemorySnapshot UHyperTwistTrainingRepositoryLibrary::Der
|
|||
QueueExecutionSummary.StartedWeakMethodDrillFollowUpPacketFollowUpHandoffEventCount > 0;
|
||||
const bool bWeakMethodDrillFollowUpPacketRecommendedHandoff =
|
||||
QueueExecutionSummary.StartedWeakMethodDrillFollowUpPacketRecommendedHandoffEventCount > 0;
|
||||
const bool bAlignedTightFollowUpPacketQueuedHandoff =
|
||||
QueueExecutionSummary.StartedAlignedTightFollowUpPacketQueuedHandoffEventCount > 0;
|
||||
const bool bAlignedTightFollowUpPacketFollowUpHandoff =
|
||||
QueueExecutionSummary.StartedAlignedTightFollowUpPacketFollowUpHandoffEventCount > 0;
|
||||
const bool bAlignedTightFollowUpPacketRecommendedHandoff =
|
||||
QueueExecutionSummary.StartedAlignedTightFollowUpPacketRecommendedHandoffEventCount > 0;
|
||||
const bool bAlignedBroadRecommendedPacketQueuedHandoff =
|
||||
QueueExecutionSummary.StartedAlignedBroadRecommendedPacketQueuedHandoffEventCount > 0;
|
||||
const bool bAlignedBroadRecommendedPacketFollowUpHandoff =
|
||||
QueueExecutionSummary.StartedAlignedBroadRecommendedPacketFollowUpHandoffEventCount > 0;
|
||||
const bool bAlignedBroadRecommendedPacketRecommendedHandoff =
|
||||
QueueExecutionSummary.StartedAlignedBroadRecommendedPacketRecommendedHandoffEventCount > 0;
|
||||
if (ExplicitQueuedHandoffSignal > 0
|
||||
|| ExplicitFollowUpHandoffSignal > 0
|
||||
|| ExplicitRecommendedHandoffSignal > 0)
|
||||
|
|
@ -9374,6 +9471,16 @@ FHyperTwistTrainingCoachMemorySnapshot UHyperTwistTrainingRepositoryLibrary::Der
|
|||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-method-drill-follow-up-packet-strong-queued");
|
||||
}
|
||||
else if (bAlignedTightFollowUpPacketQueuedHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-queued");
|
||||
}
|
||||
else if (bAlignedBroadRecommendedPacketQueuedHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-queued");
|
||||
}
|
||||
else if (bWeakMethodDrillFollowUpPacketQueuedHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
|
|
@ -9435,6 +9542,16 @@ FHyperTwistTrainingCoachMemorySnapshot UHyperTwistTrainingRepositoryLibrary::Der
|
|||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-method-drill-follow-up-packet-strong-follow-up");
|
||||
}
|
||||
else if (bAlignedTightFollowUpPacketFollowUpHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-follow-up");
|
||||
}
|
||||
else if (bAlignedBroadRecommendedPacketFollowUpHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-follow-up");
|
||||
}
|
||||
else if (bWeakMethodDrillFollowUpPacketFollowUpHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
|
|
@ -9496,6 +9613,16 @@ FHyperTwistTrainingCoachMemorySnapshot UHyperTwistTrainingRepositoryLibrary::Der
|
|||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-method-drill-follow-up-packet-strong-recommended");
|
||||
}
|
||||
else if (bAlignedTightFollowUpPacketRecommendedHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-aligned-follow-up-packet-tight-recommended");
|
||||
}
|
||||
else if (bAlignedBroadRecommendedPacketRecommendedHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-dashboard-aligned-follow-up-packet-broad-recommended");
|
||||
}
|
||||
else if (bWeakMethodDrillFollowUpPacketRecommendedHandoff)
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
|
|
@ -11679,6 +11806,12 @@ FHyperTwistTrainingCoachSessionQueueExecutionSummary UHyperTwistTrainingReposito
|
|||
const bool bStrongMethodDrillFollowUpPacketDashboardHandoff =
|
||||
HyperTwistTrainingRepositoryLibraryInternal::IsStrongMethodDrillFollowUpPacketDashboardHandoffSource(
|
||||
HistoryEntry.StartActionSourceLabel);
|
||||
const bool bAlignedTightFollowUpPacketDashboardHandoff =
|
||||
HyperTwistTrainingRepositoryLibraryInternal::IsAlignedTightFollowUpPacketDashboardHandoffSource(
|
||||
HistoryEntry.StartActionSourceLabel);
|
||||
const bool bAlignedBroadRecommendedPacketDashboardHandoff =
|
||||
HyperTwistTrainingRepositoryLibraryInternal::IsAlignedBroadRecommendedPacketDashboardHandoffSource(
|
||||
HistoryEntry.StartActionSourceLabel);
|
||||
const bool bStrongMethodDrillRecoveryPacketDashboardHandoff =
|
||||
HyperTwistTrainingRepositoryLibraryInternal::IsStrongMethodDrillRecoveryPacketDashboardHandoffSource(
|
||||
HistoryEntry.StartActionSourceLabel);
|
||||
|
|
@ -11744,6 +11877,14 @@ FHyperTwistTrainingCoachSessionQueueExecutionSummary UHyperTwistTrainingReposito
|
|||
{
|
||||
Summary.StartedWeakMethodDrillFollowUpPacketQueuedHandoffEventCount += 1;
|
||||
}
|
||||
if (bAlignedTightFollowUpPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedAlignedTightFollowUpPacketQueuedHandoffEventCount += 1;
|
||||
}
|
||||
if (bAlignedBroadRecommendedPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedAlignedBroadRecommendedPacketQueuedHandoffEventCount += 1;
|
||||
}
|
||||
if (bStrongMethodDrillRecoveryPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedStrongMethodDrillRecoveryPacketQueuedHandoffEventCount += 1;
|
||||
|
|
@ -11818,6 +11959,14 @@ FHyperTwistTrainingCoachSessionQueueExecutionSummary UHyperTwistTrainingReposito
|
|||
{
|
||||
Summary.StartedWeakMethodDrillFollowUpPacketFollowUpHandoffEventCount += 1;
|
||||
}
|
||||
if (bAlignedTightFollowUpPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedAlignedTightFollowUpPacketFollowUpHandoffEventCount += 1;
|
||||
}
|
||||
if (bAlignedBroadRecommendedPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedAlignedBroadRecommendedPacketFollowUpHandoffEventCount += 1;
|
||||
}
|
||||
if (bStrongMethodDrillRecoveryPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedStrongMethodDrillRecoveryPacketFollowUpHandoffEventCount += 1;
|
||||
|
|
@ -11882,6 +12031,14 @@ FHyperTwistTrainingCoachSessionQueueExecutionSummary UHyperTwistTrainingReposito
|
|||
{
|
||||
Summary.StartedWeakMethodDrillFollowUpPacketRecommendedHandoffEventCount += 1;
|
||||
}
|
||||
if (bAlignedTightFollowUpPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedAlignedTightFollowUpPacketRecommendedHandoffEventCount += 1;
|
||||
}
|
||||
if (bAlignedBroadRecommendedPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedAlignedBroadRecommendedPacketRecommendedHandoffEventCount += 1;
|
||||
}
|
||||
if (bStrongMethodDrillRecoveryPacketDashboardHandoff)
|
||||
{
|
||||
Summary.StartedStrongMethodDrillRecoveryPacketRecommendedHandoffEventCount += 1;
|
||||
|
|
|
|||
|
|
@ -1616,6 +1616,8 @@ private:
|
|||
EHyperTwistTrainingCoachHandoffKind::None;
|
||||
bool bDisplayedCoachHandoffRecommendationUsedDeferredFirstSuppressionSignal = false;
|
||||
bool bDisplayedCoachHandoffRecommendationUsedMethodDrillWeighting = false;
|
||||
bool bDisplayedCoachHandoffRecommendationUsedAlignedTightPacketAcceptedHistory = false;
|
||||
bool bDisplayedCoachHandoffRecommendationUsedAlignedBroadPacketAcceptedHistory = false;
|
||||
FString DisplayedCoachHandoffMethodDrillRecoveryMemoryStartActionSourceLabel;
|
||||
EHyperTwistCoachDashboardGuidancePreviewLane ActiveGuidancePreviewLane =
|
||||
EHyperTwistCoachDashboardGuidancePreviewLane::None;
|
||||
|
|
|
|||
|
|
@ -3783,6 +3783,24 @@ struct FHyperTwistTrainingCoachSessionQueueExecutionSummary
|
|||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 StartedWeakMethodDrillFollowUpPacketRecommendedHandoffEventCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 StartedAlignedTightFollowUpPacketQueuedHandoffEventCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 StartedAlignedTightFollowUpPacketFollowUpHandoffEventCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 StartedAlignedTightFollowUpPacketRecommendedHandoffEventCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 StartedAlignedBroadRecommendedPacketQueuedHandoffEventCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 StartedAlignedBroadRecommendedPacketFollowUpHandoffEventCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 StartedAlignedBroadRecommendedPacketRecommendedHandoffEventCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 StartedStrongMethodDrillRecoveryPacketQueuedHandoffEventCount = 0;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue