//================================================================================================ /// @file JuceManagedWorkingSetCache.hpp /// /// @author Adrian Del Grosso /// /// @copyright 2023 Adrian Del Grosso //================================================================================================ #ifndef JUCE_MANAGED_WORKING_SET_HPP #define JUCE_MANAGED_WORKING_SET_HPP #include "isobus/isobus/isobus_virtual_terminal_server_managed_working_set.hpp" #include "JuceHeader.h" #include "SoftKeyMaskComponent.hpp" class JuceManagedWorkingSetCache { public: static std::shared_ptr create_component(std::shared_ptr workingSet, std::shared_ptr sourceObject); static void set_softkey_mask_dimension_info(const SoftKeyMaskDimensions &info); private: class ComponentCacheClass { public: ComponentCacheClass(std::shared_ptr associatedWorkingSet) : workingSet(associatedWorkingSet){}; std::shared_ptr workingSet; //std::map> componentLookup; }; static std::vector workingSetComponentCache; static SoftKeyMaskDimensions softKeyDimensionInfo; static int dataAndAlarmMaskSize; }; #endif // JUCE_MANAGED_WORKING_SET_HPP