Files
UnrealEngineUWP/Engine/Source/Runtime/Analytics/AnalyticsET/Private/AnalyticsET.cpp

48 lines
1.5 KiB
C++
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "AnalyticsET.h"
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 2994668) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2967465 on 2016/05/05 by Marc.Audy Fix VS2015 shadow variables fixes Change 2970637 on 2016/05/09 by Martin.Wilson Fix incorrect conflict resolve in merge from main Change 2976393 on 2016/05/12 by Zak.Middleton #ue4 - Set AudioComponent bUseAttachParentBounds=true to reduce cost of transform updates (avoids virtual CalcBounds() when transform changes). #tests PIE w/ audio Change 2976770 on 2016/05/13 by Lina.Halper Improvement on mirroring fix branch #code review: Zak.Middleton Change 2976774 on 2016/05/13 by Lukasz.Furman fixed missing memory callbacks for instanced behavior tree nodes #jira UE-30305 Change 2976775 on 2016/05/13 by Lukasz.Furman fixed multiple calls to behavior tree's instance cleanup #jira UE-30593 Change 2976801 on 2016/05/13 by Jon.Nabozny Add an optional argument FSkeletalMeshMerge. When set to EMeshBufferAccess::ForceCPUAndGPU, keeps a reference to the vertex buffer on CPU (e.g. for spawning particle effects). #JIRA UE-30405 Change 2976985 on 2016/05/13 by Jon.Nabozny Fix initializer list ordering for FSkeletalMeshMerge. Change 2977532 on 2016/05/13 by Marc.Audy PR #2348: [Local Multiplayer] Gamepad player assignment improvements (Contributed by kukiric) #jira UE-30162 Change 2977637 on 2016/05/13 by Marc.Audy Add Get/Set controller ID for a player in gameplay statics #jira UE-28718 Change 2979387 on 2016/05/16 by Jon.Nabozny Initialize FBox used to store results for CalculateQuatACF96Bounds. #JIRA UE-30846 Change 2979968 on 2016/05/17 by bruce.nesbit Added comment in FCanvasLineItem to warn only SE_BLEND_Opaque will be used when rendering. Change 2979969 on 2016/05/17 by bruce.nesbit Added comment in AddLine/AddPoint to warn only SE_BLEND_Opaque will be used when rendering. Change 2980271 on 2016/05/17 by Lina.Halper Improved comment #code review: Benn.Gallagher Change 2980317 on 2016/05/17 by Lukasz.Furman removing NavCollision from static mesh on property change and PostLoad if static mesh is not supposed to have one #ue4 Change 2980717 on 2016/05/17 by Zak.Middleton #ue4 - Optimize UCapsuleComponent::CalcBounds() to remove sqrt and use tighter bounding sphere radius. Change 2981193 on 2016/05/17 by Lukasz.Furman fixed missing observers in behavior tree when dynamic subtree is changed while waiting for full restart (out of nodes) #ue4 Change 2981927 on 2016/05/18 by Lina.Halper - Remove vertex animation code - Removing UVertexAnimation - Fixed reinitialization issue that was triggered by SetVertexAnimation - todo: consolidate UMorphtarget and UVertexAnimBase #code review: James.Golding, Martin.Wilson Change 2981957 on 2016/05/18 by Lina.Halper Add recursive stack check on update animation #code review: Martin.Wilson Change 2982116 on 2016/05/18 by Benn.Gallagher Removed optimize macros accidentally left after bounds extension feature for skel meshes Change 2982255 on 2016/05/18 by Jon.Nabozny FSkeletalMeshMerge constructor "MeshBufferAccess" default should be EMeshBufferAccess:Default instead of EMeshBufferAccess::ForceCPUAndGPU. Change 2982607 on 2016/05/18 by Marc.Audy Cleanup places calling GetWorld() multiple times Change 2982621 on 2016/05/18 by Marc.Audy Make UActorComponent::GetWorld final and inlined to avoid unnecessary function calls Put uncached logic in to a separate function Change 2983424 on 2016/05/19 by Marc.Audy Minor tweaks to reduce GetWorld calls Change 2983465 on 2016/05/19 by Lina.Halper Combine VertexAnimBase and MorphTarget to just MorphTarget - VertexAnimBase is gone - Modified most of VertexAnim to MorphTarget - Removed state, time related data #code review: James.Golding, Rolando.Caloca Change 2983609 on 2016/05/19 by Marc.Audy Inline AActor::GetLevel Half GetWorld() calls from AActor::GetNetMode() Change 2983772 on 2016/05/19 by Marc.Audy Fix Mac compile Change 2983931 on 2016/05/19 by Marc.Audy Remove pointless AccelMouse function Change 2984061 on 2016/05/19 by Marc.Audy Reorg some headers to fix compilation issues Change 2984409 on 2016/05/19 by Aaron.McLeran #jira UE-31049 Updating the Oculus Audio SDK to vs 1.02 Implementing 2984316 from Releases/4.12 to Dev-Framework Change 2984574 on 2016/05/19 by Aaron.McLeran Fix for platform headroom scalar. Using correct dB to linear formula (not one for power) dB = 20 * log(Linear), not dB = 10 * log(Linear) Change 2985041 on 2016/05/20 by Jon.Nabozny ConvertQueryOverlap only returns the base actor if multiple actors have bSimulatePhysics enabled and are welded together. #JIRA UE-30484 Change 2985118 on 2016/05/20 by Marc.Audy Another attempt to convince Mac to build Change 2985192 on 2016/05/20 by Marc.Audy Properly forward declare ABrush Change 2985724 on 2016/05/20 by Zak.Middleton #ue4 - Optimize NaN and Infinite checks for FVector, FQuat, FRotator, FMatrix, FTransform. SIMD version VectorContainsNaNOrInfinite() also optimized on relevant platforms. Added startup tests for VectorContainsNaNOrInfinite(). - All our "ContainsNaN()" tests are in fact "IsNaN() || IsInfinite()", which is the same as "!IsFinite()", so exploited this to simplify the tests. Both NaN and +/-Inf are not finite (http://en.cppreference.com/w/cpp/numeric/math/isfinite). In the future we should rename ContainsNaN(). - Still need to audit some uses in shipping configs. #jira UE-30999 Change 2986016 on 2016/05/20 by Zak.Middleton #ue4 - Fix uint32 used for int32 values. Behavior was unaffected. Change 2986017 on 2016/05/20 by Zak.Middleton #ue4 - Fix overlaps being dropped from within a FScopedMoveUpdate when rotation occurs. Remove invalid assert. Change 2986833 on 2016/05/23 by Zak.Middleton #ue4 - Move ETeleportType from ActorComponent.h to EngineTypes.h. Add comment to FHitResult for ImpactPoint when it's penetrating. Change 2986916 on 2016/05/23 by Rolando.Caloca DF - GPU morph targets proof of concept - Disabled by default - Not compatible with gpu skin cache - No extra memory required yet until it's used; creates buffers per frame (very slow!) Change 2987539 on 2016/05/23 by Rolando.Caloca DF - Remove unused member and downgrade FActiveMorphTarget to not be a USTRUCT Change 2987981 on 2016/05/24 by James.Golding PR #2162 : Exported AAudioVolume so that projects can derive custom classes. https://github.com/EpicGames/UnrealEngine/pull/2162 #github 2162 #jira UE-28533 Change 2987982 on 2016/05/24 by James.Golding PR #2318 : Fix memory allocation in CustomMeshComponent.cpp https://github.com/EpicGames/UnrealEngine/pull/2318 #github 2318 #jira UE-29864 Change 2987983 on 2016/05/24 by James.Golding Merging engine changes back from GDC demo: - Export FFIRFilterTimeBased from Engine module - Add FFIRFilterTimeBased::SetWindowDuration - Add FBaseCompactPose::CopyBonesTo Change 2987984 on 2016/05/24 by James.Golding UE-30137 No longer include collision in StatiMeshComponent bounds (bounds no longer user for any collision calculation) Change 2987985 on 2016/05/24 by James.Golding UE-27801 Export ConvertToCollisionChannel, ConvertToObjectType, and ConvertToTraceType members of UCollisionProfile Change 2987987 on 2016/05/24 by James.Golding OR-17910 : Support 'show collision' in Test configuration Change 2988123 on 2016/05/24 by Jon.Nabozny Prevent FBodyInstance::Weld causing duplicate PhsyXShapes to be created / added to ShapeToBodiesMap when toggling SimulatePhysics on PrimitiveComponent. #JIRA UE-31189 Change 2988449 on 2016/05/24 by Rolando.Caloca DF - Split FActiveMorphTarget's weight into its own array in prep for GPU friendly data Change 2988485 on 2016/05/24 by Jon.Nabozny Swap order of setRigidBodyFlag and setRigidDynamicFlag inside UpdateInstanceSimulatePhysics to prevent PhysX error about Kinematic bodies not using CCD. #JIRA UE-30993 Change 2988969 on 2016/05/24 by Rolando.Caloca DF - GPU morph targets - Enable using r.MorphTarget.Mode 1 Change 2989645 on 2016/05/25 by Marc.Audy Apply CL# 2989481 to Dev-Framework #jira UE-31055 Change 2989987 on 2016/05/25 by Wes.Hunt Redo of CL#2982707 2982716 2982723 2983780 2983864 from //Orion/Dev-General in preparation for continuing Analytics refactor in a Dev branch. AnalyticsET support for arbitrary Json events. * AnalyticsET supports a new API, RecordEventJson. * API supports rvalue refs to avoid unnecessary copies of the attribute array. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982707 by Wes.Hunt on 2016/05/18 17:22:20. Remove Analytics code to divert legacy code to source data collector. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982716 by Wes.Hunt on 2016/05/18 17:27:25. Analytics no longer adds IsEditor attribute to all events. Wasn't actually used by anyone anymore. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982723 by Wes.Hunt on 2016/05/18 17:29:40. Modernize FAnalyticsEventAttribute usage. Replaced FAnalyticsEventAttribute various ctors with a perfect forwarding one that can convert them to strings. * The Name must be convertible to a string * The value must be convertible to a string via an AnalyticsConversion::ToString() overload. * Added/expanded the supported conversions to strings to analytics attribute values. See AnalyticsConversion.h which contains all the previously supported conversions and more. Added MakeAnalyticsEventAttributeArray(), which uses variadic templates to create an array of event attributes inline, which can be passed to RecordEvent[Json] and efficiently taken ownership of: RecordEvent("EventName", MakeAnalyticsEventAttributeArray( "Attr1", false, "Attr2", 42.0, "Attr3", SomeMap, "Attr4", SomeArray); #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2983780 by Wes.Hunt on 2016/05/19 13:51:48. Added missing assignment copy/move ops to FAnalyticsEventAttribute. Doh, should have looked at more usages of PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS... #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2983864 by Wes.Hunt on 2016/05/19 14:17:05. Change 2989988 on 2016/05/25 by Wes.Hunt Fix usage of FAnalyticsEventAttribute constructor using a bitfield that was invalidated by the change to make FAnalyticsEventAttribute use a perfect forwarding constructor. bitfields cannot be perfect-forwarded... :( Change 2990493 on 2016/05/25 by Joe.Graf Added tooltips to the collision analyzer's buttons #CodeReview: james.golding Change 2991064 on 2016/05/26 by James.Golding - Remove many Animation headers from Engine.h - Remove AnimationAsset.h from SkeletalMeshComponent.h, Character.h, CharacterMovementComponent.h Change 2991113 on 2016/05/26 by Benn.Gallagher Fixed edge case in random sequence player where we might trigger an extra loop when waiting on a blend to finish. And made it impossible for a shuffle list to start with the animation that is currently playing (seemingly duplicating the anim). Change 2991163 on 2016/05/26 by Rolando.Caloca DF - Rename and refactor some morph target compute shader in prep for interop with skin cache Change 2991167 on 2016/05/26 by Jon.Nabozny Add `#include "DataTable.h"` to GameplayTagsManager.h. FGameplayTagTableRow is derived from FTableRowBase which isn't necessarily included. This issue is hidden in most cases as "Engine.h" includes "DataTable.h". Change 2991183 on 2016/05/26 by Wes.Hunt Disable general forwarding constructor for AnalyticsEventAttribute for non arithmetic types, so they are free to choose other overloads more appropriately. Change 2991199 on 2016/05/26 by Wes.Hunt Drastically reducing the headers dependencies on analytics headers. Analytics headers no longer appear in PCH files, and rarely if ever appear in a header file. IAnalyticsProviderModule.h only touches 8 source files. Analytics.h only touches 8 source files. IAnalyticsProvider.h only touches 5 headers and 97 source files. AnalyticsET.h only touches 12 source files. Change 2991301 on 2016/05/26 by James.Golding Fix CIS for Fortnite Change 2991319 on 2016/05/26 by James.Golding Fix CIS for Orion Change 2991373 on 2016/05/26 by Joe.Graf Tweaked the tooltip text for the collision analyzer record button to be correct for both states Added a common button style so that the buttons have a consistent look #CodeReview: james.golding Change 2991401 on 2016/05/26 by James.Golding Fix UT CIS Change 2991406 on 2016/05/26 by James.Golding Fix Ocean CIS Change 2991491 on 2016/05/26 by Lina.Halper Moved MorphTarget.h - Checked in modified functions fo AnimationRuntime for other features coming up - Should not change any behavior of existing content #code review: James.Golding, Rolando.Caloca Change 2991494 on 2016/05/26 by Wes.Hunt Fix for Unity error in AnalyticsET module after hedaer dependency reduction Change 2991503 on 2016/05/26 by Jon.Nabozny Fix issue where FConstraintInstance (inside UPhysicsConstraintComponent) is not editable in InstanceEditor but is editable in BlueprintEditor. #JIRA UE-31267 Change 2991562 on 2016/05/26 by Zak.Middleton #ue4 - Reduce allocations during movement and overlap queries and when grabbing shapes from physx actors. Change 2991586 on 2016/05/26 by James.Golding More CIS fixes for Orion and Fortnite Change 2991673 on 2016/05/26 by Wes.Hunt Another non-unity fix for Analytics include dependency reduction. Change 2991733 on 2016/05/26 by Zak.Middleton #dev - Test map, 50 walking dudes. Change 2991781 on 2016/05/26 by Lina.Halper Back out revision 15 from //UE4/Dev-Framework/Engine/Source/Runtime/Engine/Private/Animation/AnimationRuntime.cpp - Back out a part of changes that I didn't mean to check in. Change 2991922 on 2016/05/26 by Zak.Middleton #ue4 - Maybe fix Mac build. Change 2991957 on 2016/05/26 by Joe.Graf Fixed the collision analyzer file open text (said project instead of collision) Change 2991991 on 2016/05/26 by Lina.Halper Fix compile error Change 2992089 on 2016/05/26 by Zak.Middleton #ue4 - Fix Mac/PS4 build. Change 2992108 on 2016/05/26 by Wes.Hunt Yet another non-unity fix for Analytics header inclusion reduction. Change 2992190 on 2016/05/26 by Zak.Middleton #ue4 - Mark FHitResult, FOverlapResult, FOverlapInfo as POD types. Avoids destructors etc when in TArrays. Change 2992593 on 2016/05/27 by Martin.Wilson Build fixes for non editor platforms Change 2992885 on 2016/05/27 by Rolando.Caloca DF - Fix crash on thumbnails #jira UE-31398 Change 2993058 on 2016/05/27 by Lukasz.Furman fixed behavior tree getting stuck on ResumeLogic call #jira OR-22498 Change 2993064 on 2016/05/27 by Zak.Middleton #ue4 - Fix root motion network corrections not clearing root motion data. udn: https://udn.unrealengine.com/questions/294985/jittering-in-character-movement-during-networked-m.html #jira UE-31316 Change 2993215 on 2016/05/27 by Lukasz.Furman gameplay debugger fixes: navmesh rendering is not hidden after disabling tool, player stuck in spectator mode after disabling tool, confusing version description for categories without data packs added replicated input bindings for debugger's categories #ue4 Change 2993521 on 2016/05/27 by Zak.Middleton #ue4 - Reduce allocations in UI Canvas items. Change 2993995 on 2016/05/30 by Mieszko.Zielinski Temporary fix for BBKeySelector not handling properly multiple UObject subtypes #UE4 #jira UE-31435 Change 2993998 on 2016/05/30 by Mieszko.Zielinski Improves handling of a special case in EQS score normalization, where all items have the same score #UE4 We used to set the normalized score of 1 for all items, which was counter intuitive if all items have scored 0 in an unnormalized test. The improve handling detects that and assigns score of 0 in that case. Change 2993999 on 2016/05/30 by Mieszko.Zielinski Fixed FEQSParametrizedQueryExecutionRequest converting non-BB values into EQS params wrong #UE4 Change 2994000 on 2016/05/30 by Mieszko.Zielinski Exposed UNavigationInvokerComponent as part of ENGINE_API so that it can be spawned procedurally in C++ in game specific code #UE4 Change 2994003 on 2016/05/30 by Mieszko.Zielinski Fixed naming of console variable controllin v-logging of FGameplayAttribute #UE4 The old name was copy-pasted from somewhere. Change 2994007 on 2016/05/30 by Mieszko.Zielinski Fixed unregistering listeners from perception system not clearing up all data #UE4 Also, introduced two precisely named functions, GetCurrentlyPerceivedActors and GetKnownPerceivedActors to replace ambiguous GetPerceivedActors Also, renamed UAIPerceptionComponent::TActorPerceptionContainer to UAIPerceptionComponent::FActorPerceptionContainer Change 2994475 on 2016/05/31 by Wes.Hunt Fix Unity build failure for analytics inclusion reduction for IOSFlurry. [CL 2994701 by Marc Audy in Main branch]
2016-05-31 13:51:34 -04:00
#include "IAnalyticsProviderET.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "HttpModule.h"
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3491552) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3421703 on 2017/05/03 by Ben.Marsh Surround invalid character message in quotes, so it's clear when a space is listed. #jira UE-44606 Change 3422644 on 2017/05/04 by Steve.Robb Ranged-for support for TChunkedArray. Change 3422754 on 2017/05/04 by Steve.Robb IAsyncReadFileHandle made non-copyable to prevent accidental wrong stat calculation. Change 3422758 on 2017/05/04 by Steve.Robb Misc readability/standards improvements in stats code. Change 3427955 on 2017/05/08 by Steve.Robb Version fix for IOS optimization pragmas, copied from equivalent Mac code. Change 3428017 on 2017/05/08 by Steve.Robb Unused property types removed. Change 3428641 on 2017/05/08 by Ben.Marsh UAT: Remove failed attempt to separate out BuildCookRun into separate commands, which have since rotted. Change 3430407 on 2017/05/09 by Ben.Marsh UBT: Define UE_4_X_OR_LATER macros for every UE4 version greater than 4.17 (eg. UE_4_17_OR_LATER, etc...). Change 3430682 on 2017/05/09 by Gil.Gribb UE4 - Added a fatal error for asking for very large alignments from MallocBinned2 and also return the true size of the memory block in GetAllocationSize(). Change 3430685 on 2017/05/09 by Gil.Gribb UE4 - Fixed a bug with the windows async IO stuff related to an unsafe pointer cast to LPDWORD from int64*. Change 3430756 on 2017/05/09 by Ben.Marsh UBT: Switch some receipt stuff to use FileReference/DirectoryReference objects rather than raw paths. Change 3431157 on 2017/05/09 by Ben.Marsh UBT: Store absolute paths when receipts are in memory; only insert pseudo-variables for $(EngineDir) and $(ProjectDir) when saved to disk. Change 3432334 on 2017/05/10 by Graeme.Thornton Include project name in the UBT error message which appears when a plugin is missing Change 3432481 on 2017/05/10 by Gil.Gribb UE4 - Fixed code to detect cycles in parallel tick sorting. Change 3432485 on 2017/05/10 by Steve.Robb Simplified templating around bitfield offset calculation. Change 3432608 on 2017/05/10 by Steve.Robb 'bool == byte' static_assert restored after being removed in CL# 3432485. Change 3432767 on 2017/05/10 by Ben.Marsh UBT: Fix exception when a missing plugin is encountered if the target does not have a project. Change 3433031 on 2017/05/10 by Ben.Marsh UAT: Add classes to allow safer manipulation of paths within the staging directory (StagedFileReference, StagedDirectoryReference), and convert staging code over to using those and their regular filesystem counterparts (FileReference/DirectoryReference). Lots of cleanup and refactoring of staging code. Change 3433049 on 2017/05/10 by Ben.Marsh Add more diagnostic information to asserts in TStaticIndirectArrayThreadSafeRead, to try and shed light on what sort of corrupted data is being passed in from the cooker. #jira UE-44336 Change 3433097 on 2017/05/10 by Steve.Robb Value initialization fix for MakeUnique<T[]>(). Change 3433972 on 2017/05/10 by Daniel.Lamb Stop unrealpak from crashing if generating a patch with more pak files then the original game. Change 3434124 on 2017/05/10 by Ben.Marsh UAT: Remove hacky bUseWebSocketNetDriver option. Change 3434824 on 2017/05/11 by Gil.Gribb UE4 - Printed an error instead of asserting when there are missing native classes. Change 3434916 on 2017/05/11 by Ben.Marsh UAT: Separate the list of files to be staged into a separate class. Change 3435427 on 2017/05/11 by Gil.Gribb UE4 - Fixed attempts to load compiled in packages, which produces warnings and is slow. Change 3436240 on 2017/05/11 by Ben.Marsh UAT: Add a command to search for restricted folders under a given base directory. Change 3438068 on 2017/05/12 by James.Fox Checking in Phase 1 of the Dev-Core test map for repro purposes. UE-44996 #rb none Change 3438855 on 2017/05/15 by Robert.Manuszewski When verbose cluster logging is enabled and new object is added to an already existing cluster, the cluster will be dumped to log. Change 3438929 on 2017/05/15 by Robert.Manuszewski Merging CL # 3436939 using Dev-Core_To_Dev-LoadTimes: Fix for potential crashes caused by levels staying in memory through material references. Change 3439021 on 2017/05/15 by Ben.Marsh PR #3566: fix non-ascii characters in help command HTML converted to "?" (Contributed by kayama-shift) Change 3439079 on 2017/05/15 by Ben.Marsh PR #2832: Implement missing MessageBox (Contributed by projectgheist) Change 3439258 on 2017/05/15 by Ben.Marsh Highlight lines containing the strings "Error:" or "Warning:" in the output log, so that diagnostics from child processes are highlighted appropriately. The build system already relies similar logic for scraping diagnostics from logs, so it should be safe and predictable to check for messages in this way. #jira UE-43673 Change 3439358 on 2017/05/15 by Ben.Marsh UBT: Fix Visual Studio solution referencing the incorrect platform for existing C# project ("Any CPU" instead of "AnyCPU"). Was causing prompt to save the solution the first time it is opened. Change 3439665 on 2017/05/15 by Ben.Marsh UAT: Remove DeployPakInternalLowerCaseFilenames(). No platforms require this to be true. Change 3440735 on 2017/05/16 by Robert.Manuszewski UBT compile fix after the last merge Change 3440889 on 2017/05/16 by Ben.Marsh EC: Fix regex for matching path to source files included in error messages from the Linux toolchain. Change 3442776 on 2017/05/17 by Steve.Robb Platform fix for FPaths::IsSamePath. Change 3445411 on 2017/05/17 by Ben.Marsh UBT: Fix typo in makefile diagnostic string. Change 3446070 on 2017/05/18 by Steve.Robb Fix to array sizes in generated UFunction code, which should now handle editor-only functions. Change 3446091 on 2017/05/18 by Steve.Robb Another array size fix for generated code. Change 3446605 on 2017/05/18 by Steve.Robb BuildConfiguration option for static analysis. Change 3448601 on 2017/05/19 by Richard.Fawcett Change FWindowsPlatformProcess::ApplicationSettingsDir() so that it no longer returns a path with a mixture of "\" and "/" characters, and only contains "/" characters. This makes it consistent with other related functions like FWindowsPlatformProcess::UserSettingsDir(). Change 3449026 on 2017/05/19 by Ben.Marsh Fix whitespace in template file. Change 3449697 on 2017/05/19 by James.Fox Checking in Phase 2 of Dev-Core test map for QAGame Also enabled Blueprint and Actor clustering by default in QAGame for more thorough GC testing. Change 3451352 on 2017/05/22 by Steve.Robb UFunction flags are now viewable in the debugger. Change 3451355 on 2017/05/22 by Steve.Robb ARRAY_COUNT fix for zero-sized arrays in Clang. Change 3451379 on 2017/05/22 by Steve.Robb C++14 operator delete overloads with size, for consistency. Change 3451398 on 2017/05/22 by Graeme.Thornton Add AES and RSA encryption keys to the list of config fields that get stripped from ini files when staging When creating a pak file, do a filtered copy of all ini files to a temp directory so that all confidential fields can be stripped. Equivalent behaviour to staging a loose file distribution Change 3451476 on 2017/05/22 by Ben.Marsh Compile shipping builds for WEX and Ocean, and post telemetry for the resulting executable size. Change 3451478 on 2017/05/22 by Graeme.Thornton PR #3197: Improved log message formatting (Contributed by projectgheist) Change 3451868 on 2017/05/22 by Steve.Robb Static log category moved out of header. ENUM_CLASS_FLAGS macro used instead of explicit operators. Change 3452319 on 2017/05/22 by Ben.Marsh UBT: Add a new "package" build product type, which can be used for APK files on Android and Stub files on iOS. Treating these files as executables is causing the measured executable size to be incorrect. Change 3452607 on 2017/05/22 by Ben.Marsh UBT: Filter out folders for other platforms when searching for headers to pass to UHT. Change 3453600 on 2017/05/23 by Graeme.Thornton PR #3226 - Updated some code comments to better describe the usage of the log category definition macros Change 3453616 on 2017/05/23 by Steve.Robb Error reported instead of a crash when there's a space between UCLASS or UINTERFACE and the open parenthesis. Change 3453714 on 2017/05/23 by Ben.Marsh Build: Add some Visual Studio 2017 test compiles to the build system. Change 3453795 on 2017/05/23 by Ben.Marsh UBT: Fix parsing of command line attributes that have a specific value assigned. We should never have an '=' suffix for such arguments. Change 3454606 on 2017/05/23 by Ben.Marsh UAT: Make sure log filenames are unique by creating a 0-byte file in its place. Change 3454709 on 2017/05/23 by Ben.Marsh UBT: Enable the /permissive- option for stricter standards compliance on Visual Studio 2017. Currently have /Zc:strictStrings disabled due to violations in Windows headers; all UE4 instances have been fixed up. Change 3456445 on 2017/05/24 by Graeme.Thornton MemoryProfiler2 - Add mprof filename into title bar after opening Change 3457129 on 2017/05/24 by Ben.Marsh Fix comment for FVector::Normalize(). #jira UE-45369 #rnx Change 3457228 on 2017/05/24 by Ben.Marsh Do not allow forward-declaring Rect structs. They are not public, and it conflicts with third party libraries. #rnx Change 3458357 on 2017/05/24 by Ben.Marsh Fix name resolution issue with /permissive- in VS2017. Change 3458812 on 2017/05/25 by Robert.Manuszewski PR #2407: Fix LoadLibrary error with Microsoft Group Policy CWDIllegalinDllSearch mode 1 or 2 (Contributed by bozaro) Change 3458894 on 2017/05/25 by Robert.Manuszewski PR #2096: Fix argument parsing in DiffAssets Comandlet (Contributed by cgrebeld) Change 3461205 on 2017/05/26 by Robert.Manuszewski Fixed parameter parsing so that arguments are not parsed if not preceeded by a whitespace (for example "-Log" was parsed in "TM-Log") #jira UE-33790 Change 3464714 on 2017/05/30 by Robert.Manuszewski Fixing potential deadlock caused by a race condition when using FMallocVerifyProxy with FMallocBinned Change 3465310 on 2017/05/30 by Ben.Marsh UBT: Enable bAdaptiveUnityDisablesOptimizations by default. Change 3465346 on 2017/05/30 by Ben.Marsh UBT: Require Update 3 to be installed when compiling using VS2015. Change 3465389 on 2017/05/30 by Ben.Marsh UBT: Fix support for RTTI when creating PCHs and shared PCHs. Change 3466084 on 2017/05/30 by Ben.Marsh Fix compiling plain C files, where it would incorrectly use a C++ PCH. Change 3467018 on 2017/05/31 by Robert.Manuszewski Async loading code will now properly handle cases when the requested package could not be created. Change 3467113 on 2017/05/31 by Ben.Marsh UGS: When opening a solution in Visual Studio, always start the process in the solution's directory. Change 3467508 on 2017/05/31 by Ben.Marsh Add a function to fix a long package name so it matches the case of a file on disk. Fixes deterministic cooking issues when on-disk case changes. Change 3467510 on 2017/05/31 by Ben.Marsh Fix deterministic cooking issue caused by LODGroup only being initialized in the CDO if it's serialized, causing inconsistent delta serialization for instances. Change 3467967 on 2017/05/31 by Ben.Marsh Always allow UAT to compile on non-Windows platforms, even if a debugger is present, since MSVC is the only one that will load C# PDBs. Change 3468544 on 2017/05/31 by Ben.Marsh UBT: Add a more helpful message when a module is being compiled with implicit PCHs, but a source file is not configured correctly. Change 3469241 on 2017/06/01 by Ben.Marsh UBT: Fix single-file compile causing a different UHT manifest to be generated, potentially excluding hidden dependencies. Change 3471709 on 2017/06/02 by Daniel.Lamb Rebuild lighting commandlet now rebuilds reflections also instead of trashing them. #test None Change 3471719 on 2017/06/02 by Daniel.Lamb Fixed crash in cooker while trying to cook for multiple platforms #test Launch on shootergame windows + ps4 #jira UE-45356 Change 3472261 on 2017/06/02 by Ben.Marsh CRP: Clear out MDD logs whenever we clear out CRP logs. Change 3473169 on 2017/06/05 by Graeme.Thornton PR #3622: Log category code cleanup (Contributed by projectgheist) Change 3473176 on 2017/06/05 by Graeme.Thornton PR #3622: Log category code cleanup (Contributed by projectgheist) (Part II) - Missed some files from my previous checkin Change 3473597 on 2017/06/05 by Ben.Marsh UnrealVS: Fix massive slowdown on startup caused by searching the directory tree under the solution for *.uproject files (including intermediate folders, etc...). Now reads *.uprojectdirs files and only checks the listed directories within. Measured it taking > 30s to run before, now takes < 0.1s. Change 3473722 on 2017/06/05 by Steve.Robb GitHub #3444: UE-42521: Added missing macro's for TMap and TSet PREPROCESSOR_COMMA_SEPARATED added as a better solution for the hacky comma separator solution in the PR. Change 3475073 on 2017/06/06 by Steve.Robb Fix for TPromise's move assignment operator return value. Change 3475331 on 2017/06/06 by Ben.Marsh UAT: Fix invalid paths being generated when stripping encryption settings from config files. * In cases where INI files were in a subfolder of the Config folder (eg. Config\Localization), it was not stripping the separating slash, resulting in files being written to the root directory of the current drive. * Paths under the config folder are not guaranteed to be unique. Change 3475453 on 2017/06/06 by Ben.Marsh UBT: Add an error if a plugin lists a non-plugin module as belonging to it. #jira UE-45178 Change 3475668 on 2017/06/06 by Ben.Marsh Add a message showing when we begin creating the asset registry, since it can take a long time. #jira UE-41675 Change 3475747 on 2017/06/06 by Steve.Robb Replicated from CL# 3332960: Force a gather on hot reload, so we don't use stale state from the makefile. #jira UE-42205 Change 3475897 on 2017/06/06 by Ben.Marsh PR #3655: Improved behavior for Automation.IsBuildMachine (Contributed by projectgheist) Change 3477432 on 2017/06/07 by Robert.Manuszewski Removed AsyncIOBandwidthLimit as it was no longer being used by anything. Change 3478582 on 2017/06/07 by Ben.Marsh UBT: Allow setting the UE_ENGINE_DIRECTORY macro for any monolithic builds, to fix being able to debug cooked foreign projects in the binary release. Change 3480035 on 2017/06/08 by Gil.Gribb UE4 - Fixed async loading from pak files < 64k. Change 3484348 on 2017/06/12 by Robert.Manuszewski Removed private_subobject macro which was a temporary measure to make all subobjects private without breaking game code. Change 3484863 on 2017/06/12 by Steve.Robb Fix for TSparseArray::operator= corrupting non-POD objects. InCopy.ArrayMax cached in a local instead of being read each time. Const-correctness fix for element copy construction. SrcData and DestData names flipped as they were the wrong way around. Source: https://udn.unrealengine.com/questions/374840/possible-bug-in-tsparsearray-assignment-operator.html Change 3485003 on 2017/06/12 by Ben.Marsh UGS: Add support for multiple tabs. Each tab can monitor changes in a separate workspace, and scheduled syncs will run for all open tabs. Change 3485063 on 2017/06/12 by Ben.Marsh UGS: Fix a null reference exception when right clicking on the notification icon during startup. Change 3485104 on 2017/06/12 by Ben.Marsh PR #2084: [UAT] Command-line parameter to override branch name (Contributed by nbjk667) Change 3485112 on 2017/06/12 by Steve.Robb TSetElement generic constructor protected from becoming a copy constructor. Redundant #include removed from AreTypesEqual.h. Source: https://udn.unrealengine.com/questions/374840/possible-bug-in-tsparsearray-assignment-operator.html Change 3485452 on 2017/06/12 by Ben.Marsh UnrealVS: Fix command line not being updated for C# projects. IVsBuildPropertyStorage.SetPropertyValue does not seem to update properties that are cached in memory. #jira UE-45716 Change 3486182 on 2017/06/12 by Ben.Marsh UGS: Include option to selet tab names in the options menu. Change 3486189 on 2017/06/12 by Ben.Marsh UGS: Fix browse button from context menu always opening a new tab. Change 3486636 on 2017/06/13 by Steve.Robb FStatMessagesArray iteration changed to use ranged-for instead of indexing. Change 3486688 on 2017/06/13 by Steve.Robb Fix for CDO pointer replacement in non-UObject properties during hot reload. #jira UE-38146 Change 3486704 on 2017/06/13 by Ben.Marsh UGS: Fix exception when closing the last open tab. Change 3486707 on 2017/06/13 by Ben.Marsh UGS: Fix exception on load if UGS was closed with no projects open. Change 3486715 on 2017/06/13 by Ben.Marsh UGS: Change tabs to show the project file by default. Change 3486718 on 2017/06/13 by Ben.Marsh UGS: Only allow one workspace to sync at a time. Change 3486880 on 2017/06/13 by Ben.Marsh UGS: Show the sync progress of each tab via the underline on the tab button. Change 3486912 on 2017/06/13 by Ben.Marsh UGS: Include the open project and recent project list as separate top-level menu items. Change 3486914 on 2017/06/13 by Ben.Marsh UGS: Update version to 1.101. Change 3487092 on 2017/06/13 by Ben.Marsh UGS: Fix crash on startup if log window is minimized. Change 3487099 on 2017/06/13 by Ben.Marsh UGS: Update version to 1.102 Change 3487198 on 2017/06/13 by Ben.Marsh Remove debug code. Change 3487285 on 2017/06/13 by Ben.Marsh Restore Remap() function that was accidentally removed in merge. Change 3487769 on 2017/06/13 by Ben.Marsh Disable the promoted flag when using the SyncProject command on Mac; doing so prevents UE4Game being compiled when packaging blueprint projects. #jira UE-45995 Change 3487915 on 2017/06/13 by Ben.Marsh UAT: Fix exception due to collection being modified while packaging for Linux. #jira UE-46013 Change 3487972 on 2017/06/13 by Ben.Marsh UAT: Always allow staged files to overwrite previously staged files. New iOS code relies on old behavior to overwrite engine icons and metadata with game copies. #jira UE-46014 Change 3487991 on 2017/06/13 by Ben.Marsh UAT: Ensure that the directory exists before trying to create a placeholder log filename. #jira UE-46015 Change 3489062 on 2017/06/14 by Robert.Manuszewski Removed FPackageFileSummary's AdditionalPackagesToCook as it was not used by anything. This should reduce the package header size considerably for levels with many streaming sublevels. #jira UE-45563 Change 3489063 on 2017/06/14 by Robert.Manuszewski Increasing the maximum package summary size to handle levels with multiple streaming sublevels. #jira UE-45563 Change 3491552 on 2017/06/15 by Ben.Marsh Handle failures to load *MeshReduction modules. [CL 3492074 by Ben Marsh in Main branch]
2017-06-15 12:43:54 -04:00
#include "Analytics.h"
#include "AnalyticsPerfTracker.h"
IMPLEMENT_MODULE( FAnalyticsET, AnalyticsET );
void FAnalyticsET::StartupModule()
{
Merging using UE4-Fortnite-To-UE4 from CL 2261973 Includes the following engine-level changes (among others; biggest change is enabling world assets by default): CL 2252857 added dynamic allocations for path finding, removed hardcoded limit of 128 polys in path corridor CL 2256142 Added support for native arrays in JSON object converter. - Permissive in treating arrays of size 1 and scalars as equivalent - Excess elements in JSON are ignored. Serialization succeeds but a warning is logged CL 2256073 Fixed a bug in ARecastNavMesh::BatchRaycast resulting in NaN hit locations CL 2253797 #UE4 More aggressively setting RF_Public and RF_Standalone flags on maps and ensuring world names match package names. This is necessary because umaps are currently being managed outside of the content browser and it is causing a few issues. Also, packages containing maps now synthesize asset data when the package contains absolutely no asset data (probably because the UWorld in it was not RF_Public at the time it was saved due to a previous bug). CL 2258142 #UE4 Added a GC during map load that reclaims memory allocated during load/init. This is needed to finish the load on low-memory devices in games that allocate more memory after load. CL 2247003 Added homing to ProjectileMovementComponent - Homing requires both a bool and a target component to be set, the strength is determined by a customizable variable - Both homing and gravity are now applied in the new virtual function "CalculateAcceleration" CL 2247249 Moved the homing modification to acceleration occur in a separate function specifically for homing CL 2257043 - Guard net dormancy calls against executing on clients, based on thread with DaveR and JohnP; This particular case was the result of an intentionally client-authoritative actor calling the dormancy functions via inheritance CL 2245629 #UE4 - fixed json TryGetNumber to round negatives appropriately CL 2255312 #UE4 Enabling World Assets by default. CL 2260956 Analytics ET now loads HTTP at StartupModule so the module will be available during ShutdownModule to flush events CL 2245571 GenericTeamAgentInterface can now retrieve attitude of an agent towards a given actor #UE4 - Made PerceptionSystem's sight sense take advantage of that CL 2246897 Fixed perception listeners not being removed from the PerceptionSystem on Owner's end play #UE4 - addresses TTP#343392 CL 2260634 added more debug data for NaN in crowd simulation CL 2248387 Added possibility to debug multiple EQS queries with GameplayDebugger. #ue4 Fixed network replication from bandwidth point of view for data in GameplayDebugger. #ue4 CL 2253281 Added additional information to the visual logger for UBTCompositeNode::DoDecoratorsAllowExecution - We now keep track of whether a decorator allows execution, in addition to the existing log for not allowing execution CL 2255310 #UE4 The world browser module now listens to WorldAdded/WorldDestroyed events instead of WorldInit/WorldCleanup events. Worlds can be initialized without being the editor world and this handles that case. CL 2258256 #UE4 Replacing the SOpenLevelDialog with a new generic SAssetDialog. This dialog will be used as a generic Open or Save As dialog for assets. [CL 2266822 by Billy Bramer in Main branch]
2014-08-21 20:30:51 -04:00
// Make sure http is loaded so that we can flush events during module shutdown
FModuleManager::LoadModuleChecked<FHttpModule>("HTTP");
}
void FAnalyticsET::ShutdownModule()
{
#if ANALYTICS_PERF_TRACKING_ENABLED
TearDownAnalyticsPerfTracker();
#endif
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 2994668) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2967465 on 2016/05/05 by Marc.Audy Fix VS2015 shadow variables fixes Change 2970637 on 2016/05/09 by Martin.Wilson Fix incorrect conflict resolve in merge from main Change 2976393 on 2016/05/12 by Zak.Middleton #ue4 - Set AudioComponent bUseAttachParentBounds=true to reduce cost of transform updates (avoids virtual CalcBounds() when transform changes). #tests PIE w/ audio Change 2976770 on 2016/05/13 by Lina.Halper Improvement on mirroring fix branch #code review: Zak.Middleton Change 2976774 on 2016/05/13 by Lukasz.Furman fixed missing memory callbacks for instanced behavior tree nodes #jira UE-30305 Change 2976775 on 2016/05/13 by Lukasz.Furman fixed multiple calls to behavior tree's instance cleanup #jira UE-30593 Change 2976801 on 2016/05/13 by Jon.Nabozny Add an optional argument FSkeletalMeshMerge. When set to EMeshBufferAccess::ForceCPUAndGPU, keeps a reference to the vertex buffer on CPU (e.g. for spawning particle effects). #JIRA UE-30405 Change 2976985 on 2016/05/13 by Jon.Nabozny Fix initializer list ordering for FSkeletalMeshMerge. Change 2977532 on 2016/05/13 by Marc.Audy PR #2348: [Local Multiplayer] Gamepad player assignment improvements (Contributed by kukiric) #jira UE-30162 Change 2977637 on 2016/05/13 by Marc.Audy Add Get/Set controller ID for a player in gameplay statics #jira UE-28718 Change 2979387 on 2016/05/16 by Jon.Nabozny Initialize FBox used to store results for CalculateQuatACF96Bounds. #JIRA UE-30846 Change 2979968 on 2016/05/17 by bruce.nesbit Added comment in FCanvasLineItem to warn only SE_BLEND_Opaque will be used when rendering. Change 2979969 on 2016/05/17 by bruce.nesbit Added comment in AddLine/AddPoint to warn only SE_BLEND_Opaque will be used when rendering. Change 2980271 on 2016/05/17 by Lina.Halper Improved comment #code review: Benn.Gallagher Change 2980317 on 2016/05/17 by Lukasz.Furman removing NavCollision from static mesh on property change and PostLoad if static mesh is not supposed to have one #ue4 Change 2980717 on 2016/05/17 by Zak.Middleton #ue4 - Optimize UCapsuleComponent::CalcBounds() to remove sqrt and use tighter bounding sphere radius. Change 2981193 on 2016/05/17 by Lukasz.Furman fixed missing observers in behavior tree when dynamic subtree is changed while waiting for full restart (out of nodes) #ue4 Change 2981927 on 2016/05/18 by Lina.Halper - Remove vertex animation code - Removing UVertexAnimation - Fixed reinitialization issue that was triggered by SetVertexAnimation - todo: consolidate UMorphtarget and UVertexAnimBase #code review: James.Golding, Martin.Wilson Change 2981957 on 2016/05/18 by Lina.Halper Add recursive stack check on update animation #code review: Martin.Wilson Change 2982116 on 2016/05/18 by Benn.Gallagher Removed optimize macros accidentally left after bounds extension feature for skel meshes Change 2982255 on 2016/05/18 by Jon.Nabozny FSkeletalMeshMerge constructor "MeshBufferAccess" default should be EMeshBufferAccess:Default instead of EMeshBufferAccess::ForceCPUAndGPU. Change 2982607 on 2016/05/18 by Marc.Audy Cleanup places calling GetWorld() multiple times Change 2982621 on 2016/05/18 by Marc.Audy Make UActorComponent::GetWorld final and inlined to avoid unnecessary function calls Put uncached logic in to a separate function Change 2983424 on 2016/05/19 by Marc.Audy Minor tweaks to reduce GetWorld calls Change 2983465 on 2016/05/19 by Lina.Halper Combine VertexAnimBase and MorphTarget to just MorphTarget - VertexAnimBase is gone - Modified most of VertexAnim to MorphTarget - Removed state, time related data #code review: James.Golding, Rolando.Caloca Change 2983609 on 2016/05/19 by Marc.Audy Inline AActor::GetLevel Half GetWorld() calls from AActor::GetNetMode() Change 2983772 on 2016/05/19 by Marc.Audy Fix Mac compile Change 2983931 on 2016/05/19 by Marc.Audy Remove pointless AccelMouse function Change 2984061 on 2016/05/19 by Marc.Audy Reorg some headers to fix compilation issues Change 2984409 on 2016/05/19 by Aaron.McLeran #jira UE-31049 Updating the Oculus Audio SDK to vs 1.02 Implementing 2984316 from Releases/4.12 to Dev-Framework Change 2984574 on 2016/05/19 by Aaron.McLeran Fix for platform headroom scalar. Using correct dB to linear formula (not one for power) dB = 20 * log(Linear), not dB = 10 * log(Linear) Change 2985041 on 2016/05/20 by Jon.Nabozny ConvertQueryOverlap only returns the base actor if multiple actors have bSimulatePhysics enabled and are welded together. #JIRA UE-30484 Change 2985118 on 2016/05/20 by Marc.Audy Another attempt to convince Mac to build Change 2985192 on 2016/05/20 by Marc.Audy Properly forward declare ABrush Change 2985724 on 2016/05/20 by Zak.Middleton #ue4 - Optimize NaN and Infinite checks for FVector, FQuat, FRotator, FMatrix, FTransform. SIMD version VectorContainsNaNOrInfinite() also optimized on relevant platforms. Added startup tests for VectorContainsNaNOrInfinite(). - All our "ContainsNaN()" tests are in fact "IsNaN() || IsInfinite()", which is the same as "!IsFinite()", so exploited this to simplify the tests. Both NaN and +/-Inf are not finite (http://en.cppreference.com/w/cpp/numeric/math/isfinite). In the future we should rename ContainsNaN(). - Still need to audit some uses in shipping configs. #jira UE-30999 Change 2986016 on 2016/05/20 by Zak.Middleton #ue4 - Fix uint32 used for int32 values. Behavior was unaffected. Change 2986017 on 2016/05/20 by Zak.Middleton #ue4 - Fix overlaps being dropped from within a FScopedMoveUpdate when rotation occurs. Remove invalid assert. Change 2986833 on 2016/05/23 by Zak.Middleton #ue4 - Move ETeleportType from ActorComponent.h to EngineTypes.h. Add comment to FHitResult for ImpactPoint when it's penetrating. Change 2986916 on 2016/05/23 by Rolando.Caloca DF - GPU morph targets proof of concept - Disabled by default - Not compatible with gpu skin cache - No extra memory required yet until it's used; creates buffers per frame (very slow!) Change 2987539 on 2016/05/23 by Rolando.Caloca DF - Remove unused member and downgrade FActiveMorphTarget to not be a USTRUCT Change 2987981 on 2016/05/24 by James.Golding PR #2162 : Exported AAudioVolume so that projects can derive custom classes. https://github.com/EpicGames/UnrealEngine/pull/2162 #github 2162 #jira UE-28533 Change 2987982 on 2016/05/24 by James.Golding PR #2318 : Fix memory allocation in CustomMeshComponent.cpp https://github.com/EpicGames/UnrealEngine/pull/2318 #github 2318 #jira UE-29864 Change 2987983 on 2016/05/24 by James.Golding Merging engine changes back from GDC demo: - Export FFIRFilterTimeBased from Engine module - Add FFIRFilterTimeBased::SetWindowDuration - Add FBaseCompactPose::CopyBonesTo Change 2987984 on 2016/05/24 by James.Golding UE-30137 No longer include collision in StatiMeshComponent bounds (bounds no longer user for any collision calculation) Change 2987985 on 2016/05/24 by James.Golding UE-27801 Export ConvertToCollisionChannel, ConvertToObjectType, and ConvertToTraceType members of UCollisionProfile Change 2987987 on 2016/05/24 by James.Golding OR-17910 : Support 'show collision' in Test configuration Change 2988123 on 2016/05/24 by Jon.Nabozny Prevent FBodyInstance::Weld causing duplicate PhsyXShapes to be created / added to ShapeToBodiesMap when toggling SimulatePhysics on PrimitiveComponent. #JIRA UE-31189 Change 2988449 on 2016/05/24 by Rolando.Caloca DF - Split FActiveMorphTarget's weight into its own array in prep for GPU friendly data Change 2988485 on 2016/05/24 by Jon.Nabozny Swap order of setRigidBodyFlag and setRigidDynamicFlag inside UpdateInstanceSimulatePhysics to prevent PhysX error about Kinematic bodies not using CCD. #JIRA UE-30993 Change 2988969 on 2016/05/24 by Rolando.Caloca DF - GPU morph targets - Enable using r.MorphTarget.Mode 1 Change 2989645 on 2016/05/25 by Marc.Audy Apply CL# 2989481 to Dev-Framework #jira UE-31055 Change 2989987 on 2016/05/25 by Wes.Hunt Redo of CL#2982707 2982716 2982723 2983780 2983864 from //Orion/Dev-General in preparation for continuing Analytics refactor in a Dev branch. AnalyticsET support for arbitrary Json events. * AnalyticsET supports a new API, RecordEventJson. * API supports rvalue refs to avoid unnecessary copies of the attribute array. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982707 by Wes.Hunt on 2016/05/18 17:22:20. Remove Analytics code to divert legacy code to source data collector. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982716 by Wes.Hunt on 2016/05/18 17:27:25. Analytics no longer adds IsEditor attribute to all events. Wasn't actually used by anyone anymore. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982723 by Wes.Hunt on 2016/05/18 17:29:40. Modernize FAnalyticsEventAttribute usage. Replaced FAnalyticsEventAttribute various ctors with a perfect forwarding one that can convert them to strings. * The Name must be convertible to a string * The value must be convertible to a string via an AnalyticsConversion::ToString() overload. * Added/expanded the supported conversions to strings to analytics attribute values. See AnalyticsConversion.h which contains all the previously supported conversions and more. Added MakeAnalyticsEventAttributeArray(), which uses variadic templates to create an array of event attributes inline, which can be passed to RecordEvent[Json] and efficiently taken ownership of: RecordEvent("EventName", MakeAnalyticsEventAttributeArray( "Attr1", false, "Attr2", 42.0, "Attr3", SomeMap, "Attr4", SomeArray); #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2983780 by Wes.Hunt on 2016/05/19 13:51:48. Added missing assignment copy/move ops to FAnalyticsEventAttribute. Doh, should have looked at more usages of PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS... #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2983864 by Wes.Hunt on 2016/05/19 14:17:05. Change 2989988 on 2016/05/25 by Wes.Hunt Fix usage of FAnalyticsEventAttribute constructor using a bitfield that was invalidated by the change to make FAnalyticsEventAttribute use a perfect forwarding constructor. bitfields cannot be perfect-forwarded... :( Change 2990493 on 2016/05/25 by Joe.Graf Added tooltips to the collision analyzer's buttons #CodeReview: james.golding Change 2991064 on 2016/05/26 by James.Golding - Remove many Animation headers from Engine.h - Remove AnimationAsset.h from SkeletalMeshComponent.h, Character.h, CharacterMovementComponent.h Change 2991113 on 2016/05/26 by Benn.Gallagher Fixed edge case in random sequence player where we might trigger an extra loop when waiting on a blend to finish. And made it impossible for a shuffle list to start with the animation that is currently playing (seemingly duplicating the anim). Change 2991163 on 2016/05/26 by Rolando.Caloca DF - Rename and refactor some morph target compute shader in prep for interop with skin cache Change 2991167 on 2016/05/26 by Jon.Nabozny Add `#include "DataTable.h"` to GameplayTagsManager.h. FGameplayTagTableRow is derived from FTableRowBase which isn't necessarily included. This issue is hidden in most cases as "Engine.h" includes "DataTable.h". Change 2991183 on 2016/05/26 by Wes.Hunt Disable general forwarding constructor for AnalyticsEventAttribute for non arithmetic types, so they are free to choose other overloads more appropriately. Change 2991199 on 2016/05/26 by Wes.Hunt Drastically reducing the headers dependencies on analytics headers. Analytics headers no longer appear in PCH files, and rarely if ever appear in a header file. IAnalyticsProviderModule.h only touches 8 source files. Analytics.h only touches 8 source files. IAnalyticsProvider.h only touches 5 headers and 97 source files. AnalyticsET.h only touches 12 source files. Change 2991301 on 2016/05/26 by James.Golding Fix CIS for Fortnite Change 2991319 on 2016/05/26 by James.Golding Fix CIS for Orion Change 2991373 on 2016/05/26 by Joe.Graf Tweaked the tooltip text for the collision analyzer record button to be correct for both states Added a common button style so that the buttons have a consistent look #CodeReview: james.golding Change 2991401 on 2016/05/26 by James.Golding Fix UT CIS Change 2991406 on 2016/05/26 by James.Golding Fix Ocean CIS Change 2991491 on 2016/05/26 by Lina.Halper Moved MorphTarget.h - Checked in modified functions fo AnimationRuntime for other features coming up - Should not change any behavior of existing content #code review: James.Golding, Rolando.Caloca Change 2991494 on 2016/05/26 by Wes.Hunt Fix for Unity error in AnalyticsET module after hedaer dependency reduction Change 2991503 on 2016/05/26 by Jon.Nabozny Fix issue where FConstraintInstance (inside UPhysicsConstraintComponent) is not editable in InstanceEditor but is editable in BlueprintEditor. #JIRA UE-31267 Change 2991562 on 2016/05/26 by Zak.Middleton #ue4 - Reduce allocations during movement and overlap queries and when grabbing shapes from physx actors. Change 2991586 on 2016/05/26 by James.Golding More CIS fixes for Orion and Fortnite Change 2991673 on 2016/05/26 by Wes.Hunt Another non-unity fix for Analytics include dependency reduction. Change 2991733 on 2016/05/26 by Zak.Middleton #dev - Test map, 50 walking dudes. Change 2991781 on 2016/05/26 by Lina.Halper Back out revision 15 from //UE4/Dev-Framework/Engine/Source/Runtime/Engine/Private/Animation/AnimationRuntime.cpp - Back out a part of changes that I didn't mean to check in. Change 2991922 on 2016/05/26 by Zak.Middleton #ue4 - Maybe fix Mac build. Change 2991957 on 2016/05/26 by Joe.Graf Fixed the collision analyzer file open text (said project instead of collision) Change 2991991 on 2016/05/26 by Lina.Halper Fix compile error Change 2992089 on 2016/05/26 by Zak.Middleton #ue4 - Fix Mac/PS4 build. Change 2992108 on 2016/05/26 by Wes.Hunt Yet another non-unity fix for Analytics header inclusion reduction. Change 2992190 on 2016/05/26 by Zak.Middleton #ue4 - Mark FHitResult, FOverlapResult, FOverlapInfo as POD types. Avoids destructors etc when in TArrays. Change 2992593 on 2016/05/27 by Martin.Wilson Build fixes for non editor platforms Change 2992885 on 2016/05/27 by Rolando.Caloca DF - Fix crash on thumbnails #jira UE-31398 Change 2993058 on 2016/05/27 by Lukasz.Furman fixed behavior tree getting stuck on ResumeLogic call #jira OR-22498 Change 2993064 on 2016/05/27 by Zak.Middleton #ue4 - Fix root motion network corrections not clearing root motion data. udn: https://udn.unrealengine.com/questions/294985/jittering-in-character-movement-during-networked-m.html #jira UE-31316 Change 2993215 on 2016/05/27 by Lukasz.Furman gameplay debugger fixes: navmesh rendering is not hidden after disabling tool, player stuck in spectator mode after disabling tool, confusing version description for categories without data packs added replicated input bindings for debugger's categories #ue4 Change 2993521 on 2016/05/27 by Zak.Middleton #ue4 - Reduce allocations in UI Canvas items. Change 2993995 on 2016/05/30 by Mieszko.Zielinski Temporary fix for BBKeySelector not handling properly multiple UObject subtypes #UE4 #jira UE-31435 Change 2993998 on 2016/05/30 by Mieszko.Zielinski Improves handling of a special case in EQS score normalization, where all items have the same score #UE4 We used to set the normalized score of 1 for all items, which was counter intuitive if all items have scored 0 in an unnormalized test. The improve handling detects that and assigns score of 0 in that case. Change 2993999 on 2016/05/30 by Mieszko.Zielinski Fixed FEQSParametrizedQueryExecutionRequest converting non-BB values into EQS params wrong #UE4 Change 2994000 on 2016/05/30 by Mieszko.Zielinski Exposed UNavigationInvokerComponent as part of ENGINE_API so that it can be spawned procedurally in C++ in game specific code #UE4 Change 2994003 on 2016/05/30 by Mieszko.Zielinski Fixed naming of console variable controllin v-logging of FGameplayAttribute #UE4 The old name was copy-pasted from somewhere. Change 2994007 on 2016/05/30 by Mieszko.Zielinski Fixed unregistering listeners from perception system not clearing up all data #UE4 Also, introduced two precisely named functions, GetCurrentlyPerceivedActors and GetKnownPerceivedActors to replace ambiguous GetPerceivedActors Also, renamed UAIPerceptionComponent::TActorPerceptionContainer to UAIPerceptionComponent::FActorPerceptionContainer Change 2994475 on 2016/05/31 by Wes.Hunt Fix Unity build failure for analytics inclusion reduction for IOSFlurry. [CL 2994701 by Marc Audy in Main branch]
2016-05-31 13:51:34 -04:00
TSharedPtr<IAnalyticsProvider> FAnalyticsET::CreateAnalyticsProvider(const FAnalyticsProviderConfigurationDelegate& GetConfigValue) const
{
if (GetConfigValue.IsBound())
{
Config ConfigValues;
ConfigValues.APIKeyET = GetConfigValue.Execute(Config::GetKeyNameForAPIKey(), true);
Copying //UE4/Dev-Build to //UE4/Main ========================== MAJOR FEATURES + CHANGES ========================== Change 2790858 on 2015/12/04 by Ben.Marsh Fix ERRORLEVEL not being correctly returned by build.bat, causing failed builds to be treated as succeeded builds when launched from Visual Studio. #codereview Wes.Hunt Change 2792683 on 2015/12/07 by Matthew.Griffin Removed some usages of RunningRocket() function Checks for whether engine tools need rebuilding should be ignored in all installed engine builds. New Intermediate folders should be within project directory and engine's should not be removed when engine installed. Change 2794194 on 2015/12/08 by Matthew.Griffin Removed IsRocket function. Changed IsEngineInstalled so that -NotInstalledEngine will always disable installed engine behavior. Change 2801483 on 2015/12/14 by Matthew.Griffin Removed uses of UnrealBuildTool.RunningRocket() Mac Tool chain test was down to Engine libraries being pre-compiled Allow Third Party dependencies in any monolithic target, not just games All installed engine builds should use shared build environment Removed test no longer needed now that projects from installed builds have game targets Include engine source if it exists in any installed build to improve intellisense in VCProjects Change 2803276 on 2015/12/15 by Matthew.Griffin Removed Rocket switch from ProjectParams as it can always check Automation.RunningRocket() Removed bGeneratingRocketProjectFiles from ProjectFileGenerator as it can always check UnrealBuildTool.RunningRocket() Changed a few usages to IsEngineInstalled where obvious Change 2814190 on 2016/01/03 by Ben.Marsh Convert ParallelExecutor to managed code, so we can use it trivially from UAT without having to compile with UBT first. Should be moved into UBT at some point. Also add a support class for creating managed child processes, which are terminated automatically if the parent process is closed. Currently only implemented on Windows, using P/Invoke. Also allows setting priority level of the process, which could replace the hacky way that we determine the physical processor count in UBT. Change 2822503 on 2016/01/10 by Wes.Hunt AnalyticsET now uses the Data Router protocol. * Automatically detects configs that try to use the old endpoint and routes them to the new endpoint. This code is temp until internal games merge the code and have a chance to update their configs. * There is a new attribute on BeginSession called "LegacyURL" that is "true" if the code needs to have its configs updated, as well as a LogAnalytics warning. * Updated EngineAnalytics and AutomationAnalytics providers to use the new URL and specify any appropriate new, optional config values. * Update CrashReporter provider to use new URL and simplified it's provider configuration (now uses AnalyticsET config struct directly). Removed recently added GetUE4TypeOverride and moved it to the one place in Engine that needs it. #jira UE-21755 #lockdown nick.penwarden [CL 2822983 by Wes Hunt in Main branch]
2016-01-11 10:12:46 -05:00
ConfigValues.APIServerET = GetConfigValue.Execute(Config::GetKeyNameForAPIServer(), true);
ConfigValues.AppVersionET = GetConfigValue.Execute(Config::GetKeyNameForAppVersion(), false);
ConfigValues.UseLegacyProtocol = FCString::ToBool(*GetConfigValue.Execute(Config::GetKeyNameForUseLegacyProtocol(), false));
Copying //UE4/Dev-Build to //UE4/Main ========================== MAJOR FEATURES + CHANGES ========================== Change 2790858 on 2015/12/04 by Ben.Marsh Fix ERRORLEVEL not being correctly returned by build.bat, causing failed builds to be treated as succeeded builds when launched from Visual Studio. #codereview Wes.Hunt Change 2792683 on 2015/12/07 by Matthew.Griffin Removed some usages of RunningRocket() function Checks for whether engine tools need rebuilding should be ignored in all installed engine builds. New Intermediate folders should be within project directory and engine's should not be removed when engine installed. Change 2794194 on 2015/12/08 by Matthew.Griffin Removed IsRocket function. Changed IsEngineInstalled so that -NotInstalledEngine will always disable installed engine behavior. Change 2801483 on 2015/12/14 by Matthew.Griffin Removed uses of UnrealBuildTool.RunningRocket() Mac Tool chain test was down to Engine libraries being pre-compiled Allow Third Party dependencies in any monolithic target, not just games All installed engine builds should use shared build environment Removed test no longer needed now that projects from installed builds have game targets Include engine source if it exists in any installed build to improve intellisense in VCProjects Change 2803276 on 2015/12/15 by Matthew.Griffin Removed Rocket switch from ProjectParams as it can always check Automation.RunningRocket() Removed bGeneratingRocketProjectFiles from ProjectFileGenerator as it can always check UnrealBuildTool.RunningRocket() Changed a few usages to IsEngineInstalled where obvious Change 2814190 on 2016/01/03 by Ben.Marsh Convert ParallelExecutor to managed code, so we can use it trivially from UAT without having to compile with UBT first. Should be moved into UBT at some point. Also add a support class for creating managed child processes, which are terminated automatically if the parent process is closed. Currently only implemented on Windows, using P/Invoke. Also allows setting priority level of the process, which could replace the hacky way that we determine the physical processor count in UBT. Change 2822503 on 2016/01/10 by Wes.Hunt AnalyticsET now uses the Data Router protocol. * Automatically detects configs that try to use the old endpoint and routes them to the new endpoint. This code is temp until internal games merge the code and have a chance to update their configs. * There is a new attribute on BeginSession called "LegacyURL" that is "true" if the code needs to have its configs updated, as well as a LogAnalytics warning. * Updated EngineAnalytics and AutomationAnalytics providers to use the new URL and specify any appropriate new, optional config values. * Update CrashReporter provider to use new URL and simplified it's provider configuration (now uses AnalyticsET config struct directly). Removed recently added GetUE4TypeOverride and moved it to the one place in Engine that needs it. #jira UE-21755 #lockdown nick.penwarden [CL 2822983 by Wes Hunt in Main branch]
2016-01-11 10:12:46 -05:00
if (!ConfigValues.UseLegacyProtocol)
{
ConfigValues.AppEnvironment = GetConfigValue.Execute(Config::GetKeyNameForAppEnvironment(), true);
ConfigValues.UploadType = GetConfigValue.Execute(Config::GetKeyNameForUploadType(), true);
}
return CreateAnalyticsProvider(ConfigValues);
}
else
{
UE_LOG(LogAnalytics, Warning, TEXT("CreateAnalyticsProvider called with an unbound delegate"));
}
return NULL;
}