VideoCommon: move resource state processing to the resource base class

This commit is contained in:
iwubcode committed 2025-11-23 11:08:50 -06:00
1 parent 5c00f07074
commit c97a947f67
4 files changed
+87 -89

No files matched your search

+12 -11
View File
@@ -49,17 +49,8 @@ public:
Error,
};
enum class State
{
ReloadData,
CollectingPrimaryData,
CollectingDependencyData,
ProcessingData,
DataAvailable,
};
void Process();
TaskComplete IsDataProcessed() const { return m_data_processed; }
State GetState() const { return m_state; }
void AddReference(Resource* reference);
void RemoveReference(Resource* reference);
@@ -71,6 +62,7 @@ protected:
ResourceContext m_resource_context;
private:
void ProcessCurrentTask();
void NotifyAssetChanged(bool has_error);
void NotifyAssetUnloaded();
@@ -86,7 +78,16 @@ private:
virtual TaskComplete ProcessData();
TaskComplete m_data_processed = TaskComplete::No;
State m_state = State::ReloadData;
enum class Task
{
ReloadData,
CollectPrimaryData,
CollectDependencyData,
ProcessData,
DataAvailable,
};
Task m_current_task = Task::ReloadData;
std::unordered_set<Resource*> m_references;
};