* EnvironmentVariableHolder: reduce the size of template instantiation.
Move almost all destruction logic to EnvironmentVariableHolderBase::UnregisterAndDestroy.
Specialized templates have DestructDispatchNoLock instead that can either destroy the held value,
or the holder itself.
UnregisterAndDestroy has been moved to the cpp file.
All of these changes reduce the profile build time and size on linux
Here, the size of bin/profile goes down by ~200MB.
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Requested changes/fixups.
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Use scoped_lock to simplify mutex management.
Updated comments.
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Hopefully a fix for env variables released at a wrong time
Conditional was using incorrect variable
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Comment fixup
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Missing negation in conditional
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Cleanup the internal logic in UnregisterAndDestroy
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
Inner scope numEnvironmentVars was shadowing the outer scope, and prevented env variable memory from being freed.
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
In case an asset platform setting is missing it was supposed to be set to a 'pc' value.
Instead it was set to an empty string.
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
"If constexpr" branches are evaluated at template instantiation time,
but static assertions receiving false are triggered even earlier.
Signed-off-by: Jeremy Ong <jcong@amazon.com>
Also, came up with more useful benchmarks that actually measure the
enqueue/dequeue operations for various simple workflows. For retained
graphs, time-of-flight from submission to execution is ~1us per job,
indicating job granularity should be >20us for retained jobs. For
dynamic jobs, where we need to pay the cost of allocation, a granularity
of ~100+ us may be advised.
Signed-off-by: Jeremy Ong <jcong@amazon.com>
- Handle changing of active camera entirely inside CameraComponentController
- Remove a LOT of legacy Cry things related to cameras
- Add a CameraSystemComponent to handle ActiveCameraRequestBus and CameraSystemRequestBus
Signed-off-by: Yuriy Toporovskyy <toporovskyy.y@gmail.com>
* Clear prefab templates on new level creations and loads
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
* Fixed failing prefab unit tests after change to clear templates
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
* Fixed bug in hash_table that made rehash() function to run infinitely on specific conditions when inserting an already existing element
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Replaced erasing to happen in the source list instead
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* minor comment improvement
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Small commment improvement
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Small comment fix
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Added assert and fixed code with incorrect hashing
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* .
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Addressed PR comments, reverted to void* as it size_t hash is different
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Fixed build on linux
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Addressed PR comments
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
Co-authored-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Temporary fix for Linux/Vulkan/XCB where the swap chain is not ready to present until the resize is complete
* Fix invalid GUID from LinuxXcbConnectionManager
Signed-off-by: spham-amzn <spham@amazon.com>