45b2336dce
* WIP - small legacy cleanup Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * More cleanups + build fixes Use AZstd instead of std types in a few places. Remove m_nameTable. Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * Legacy code cleanups Remove unused methods using legacy functionality * EditorViewportWidget::AdjustObjectPosition * DisplayContext - remove `renderer` pointer * DisplayContext - log errors when functions using `renderer` are called * CTrackGizmo::DrawAxis - log errors when function uses `renderer`. * Legacy CCamera - remove Project, Unproject and CalcScreenBounds * Remove all unused methods from Cry_GeoDistance.h/Cry_GeoIntersect.h * Remove Lineseg_Triangle from Cry_GeoOverlap.h * IEntityRenderState.h - remove unused types * SMeshColor remove Lerp method and associated constructor. * IMaterial.h - remove unused types and a few methods * IRenderMesh.h - remove a few unused methods and use int8 instead of byte * IRender.h - remove almost all of the contents * IShader.h - remove unused types and a few methods * IStatObj.h - remove unused types and a few methods * SSystemGlobalEnvironment - remove `renderer` pointer * IRenderGraph - remove 2 unused methods * physinterface.h - remove almost all of the contents * CXmlUtils no longer inherits ISystemEventListener * CXmlNode no longer has custom new/delete * Remove IRenderer from some test mocks. Removed files: * CryName.h * Cry_MatrixDiag.h * Cry_XOptimise.h * HeapAllocator.h * IRendererMock.h * PoolAllocator.h Things to consider: * Remove GetMemoryUsage & friends. Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * Apply review suggestions IMovieSystem.h - remove unused includes. Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * Move unreachable code to `#if 0` block This is hopefully temporary measure until the original functionality is re-implemented Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * Fix bad merge I messed up. Fix bad merge I messed up, by re-removing FrameProfiler.h from crycommon_files.cmake (this was removed in an earlier commit this morning: https://github.com/o3de/o3de/pull/3394). Signed-off-by: bosnichd <bosnichd@amazon.com> * Update Code/Framework/AzCore/AzCore/std/string/string_view.h Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * implement review suggestion Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * following review, using LYSHINE_ATOM_TODO to guard Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * Remove commented out include Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> * EditorViewportWidget.cpp: Convert commented out code to guarded one Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com> Co-authored-by: bosnichd <bosnichd@amazon.com> Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
79 lines
2.4 KiB
C++
79 lines
2.4 KiB
C++
/*
|
|
* Copyright (c) Contributors to the Open 3D Engine Project.
|
|
* For complete copyright and license terms please see the LICENSE at the root of this distribution.
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0 OR MIT
|
|
*
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <LyShine/Animation/IUiAnimation.h>
|
|
#include "CryCommon/StlUtils.h"
|
|
#include "AnimTrack.h"
|
|
#include "AnimKey.h"
|
|
|
|
class CUiAnimStringTable
|
|
: public IUiAnimStringTable
|
|
{
|
|
public:
|
|
AZ_CLASS_ALLOCATOR(CUiAnimStringTable, AZ::SystemAllocator, 0);
|
|
AZ_RTTI(CUiAnimStringTable, "{4640F535-0417-4BE6-A856-80A2C7D9E885}", IUiAnimStringTable);
|
|
|
|
CUiAnimStringTable();
|
|
~CUiAnimStringTable();
|
|
|
|
const char* Add(const char* p) override;
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
// for intrusive_ptr support
|
|
void add_ref() override;
|
|
void release() override;
|
|
//////////////////////////////////////////////////////////////////////////
|
|
|
|
static void Reflect([[maybe_unused]] AZ::SerializeContext* serializeContext) {}
|
|
|
|
private:
|
|
struct Page
|
|
{
|
|
Page* pPrev;
|
|
char mem[512 - sizeof(Page*)];
|
|
};
|
|
|
|
typedef std::unordered_map<const char*, const char*, stl::hash_string<const char*>, stl::equality_string<const char*> > TableMap;
|
|
|
|
private:
|
|
CUiAnimStringTable(const CUiAnimStringTable&);
|
|
CUiAnimStringTable& operator = (const CUiAnimStringTable&);
|
|
|
|
private:
|
|
int m_refCount;
|
|
Page* m_pLastPage;
|
|
char* m_pEnd;
|
|
TableMap m_table;
|
|
};
|
|
|
|
class CUiTrackEventTrack
|
|
: public TUiAnimTrack<IEventKey>
|
|
{
|
|
public:
|
|
AZ_CLASS_ALLOCATOR(CUiTrackEventTrack, AZ::SystemAllocator, 0);
|
|
AZ_RTTI(CUiTrackEventTrack, "{18AB327E-02EA-43D9-BA3B-FB93B6C15837}", IUiAnimTrack);
|
|
|
|
explicit CUiTrackEventTrack(IUiAnimStringTable* pStrings);
|
|
CUiTrackEventTrack(); // default constr needed for AZ Serialization
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
// Overrides of IAnimTrack.
|
|
//////////////////////////////////////////////////////////////////////////
|
|
void GetKeyInfo(int key, const char*& description, float& duration);
|
|
void SerializeKey(IEventKey& key, XmlNodeRef& keyNode, bool bLoading);
|
|
void SetKey(int index, IKey* key);
|
|
void InitPostLoad(IUiAnimSequence* sequence) override;
|
|
|
|
static void Reflect(AZ::SerializeContext* serializeContext);
|
|
|
|
private:
|
|
AZStd::intrusive_ptr<IUiAnimStringTable> m_pStrings;
|
|
};
|