#pragma once #include "BaseAttributeMap.h" class ServersideAttributeMap : public BaseAttributeMap { private: std::unordered_set dirtyAttributes; protected: // 4J: Remove legacy name // unordered_map attributesByLegacy; public: // 4J-JEV: Changed from ModifiableAttributeInstance to AttributeInstance as // they are not 'covariant' on PS4. virtual AttributeInstance* getInstance(Attribute* attribute); virtual AttributeInstance* getInstance(eATTRIBUTE_ID id); virtual AttributeInstance* registerAttribute(Attribute* attribute); virtual void onAttributeModified( ModifiableAttributeInstance* attributeInstance); virtual std::unordered_set* getDirtyAttributes(); virtual std::unordered_set* getSyncableAttributes(); };