mirror of
				https://github.com/ciphervance/supercell-wx.git
				synced 2025-10-31 07:20:04 +00:00 
			
		
		
		
	Split layer types from map types
This commit is contained in:
		
							parent
							
								
									2fe3facbd2
								
							
						
					
					
						commit
						7cd1cd0681
					
				
					 6 changed files with 119 additions and 89 deletions
				
			
		|  | @ -163,6 +163,7 @@ set(HDR_TYPES source/scwx/qt/types/alert_types.hpp | ||||||
|               source/scwx/qt/types/font_types.hpp |               source/scwx/qt/types/font_types.hpp | ||||||
|               source/scwx/qt/types/github_types.hpp |               source/scwx/qt/types/github_types.hpp | ||||||
|               source/scwx/qt/types/imgui_font.hpp |               source/scwx/qt/types/imgui_font.hpp | ||||||
|  |               source/scwx/qt/types/layer_types.hpp | ||||||
|               source/scwx/qt/types/map_types.hpp |               source/scwx/qt/types/map_types.hpp | ||||||
|               source/scwx/qt/types/qt_types.hpp |               source/scwx/qt/types/qt_types.hpp | ||||||
|               source/scwx/qt/types/radar_product_record.hpp |               source/scwx/qt/types/radar_product_record.hpp | ||||||
|  | @ -171,6 +172,7 @@ set(HDR_TYPES source/scwx/qt/types/alert_types.hpp | ||||||
| set(SRC_TYPES source/scwx/qt/types/alert_types.cpp | set(SRC_TYPES source/scwx/qt/types/alert_types.cpp | ||||||
|               source/scwx/qt/types/github_types.cpp |               source/scwx/qt/types/github_types.cpp | ||||||
|               source/scwx/qt/types/imgui_font.cpp |               source/scwx/qt/types/imgui_font.cpp | ||||||
|  |               source/scwx/qt/types/layer_types.cpp | ||||||
|               source/scwx/qt/types/map_types.cpp |               source/scwx/qt/types/map_types.cpp | ||||||
|               source/scwx/qt/types/radar_product_record.cpp |               source/scwx/qt/types/radar_product_record.cpp | ||||||
|               source/scwx/qt/types/text_event_key.cpp |               source/scwx/qt/types/text_event_key.cpp | ||||||
|  |  | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| #include <scwx/qt/model/layer_model.hpp> | #include <scwx/qt/model/layer_model.hpp> | ||||||
| #include <scwx/qt/manager/placefile_manager.hpp> | #include <scwx/qt/manager/placefile_manager.hpp> | ||||||
| #include <scwx/qt/types/map_types.hpp> | #include <scwx/qt/types/layer_types.hpp> | ||||||
| #include <scwx/qt/types/qt_types.hpp> | #include <scwx/qt/types/qt_types.hpp> | ||||||
| #include <scwx/qt/util/json.hpp> | #include <scwx/qt/util/json.hpp> | ||||||
| #include <scwx/util/logger.hpp> | #include <scwx/util/logger.hpp> | ||||||
|  |  | ||||||
							
								
								
									
										77
									
								
								scwx-qt/source/scwx/qt/types/layer_types.cpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								scwx-qt/source/scwx/qt/types/layer_types.cpp
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,77 @@ | ||||||
|  | #include <scwx/qt/types/layer_types.hpp> | ||||||
|  | 
 | ||||||
|  | #include <unordered_map> | ||||||
|  | 
 | ||||||
|  | #include <boost/algorithm/string.hpp> | ||||||
|  | 
 | ||||||
|  | namespace scwx | ||||||
|  | { | ||||||
|  | namespace qt | ||||||
|  | { | ||||||
|  | namespace types | ||||||
|  | { | ||||||
|  | 
 | ||||||
|  | static const std::unordered_map<LayerType, std::string> layerTypeName_ { | ||||||
|  |    {LayerType::Map, "Map"}, | ||||||
|  |    {LayerType::Radar, "Radar"}, | ||||||
|  |    {LayerType::Alert, "Alert"}, | ||||||
|  |    {LayerType::Placefile, "Placefile"}, | ||||||
|  |    {LayerType::Information, "Information"}, | ||||||
|  |    {LayerType::Unknown, "?"}}; | ||||||
|  | 
 | ||||||
|  | static const std::unordered_map<Layer, std::string> layerName_ { | ||||||
|  |    {Layer::MapOverlay, "Map Overlay"}, | ||||||
|  |    {Layer::ColorTable, "Color Table"}, | ||||||
|  |    {Layer::MapSymbology, "Map Symbology"}, | ||||||
|  |    {Layer::MapUnderlay, "Map Underlay"}, | ||||||
|  |    {Layer::Unknown, "?"}}; | ||||||
|  | 
 | ||||||
|  | LayerType GetLayerType(const std::string& name) | ||||||
|  | { | ||||||
|  |    auto result = | ||||||
|  |       std::find_if(layerTypeName_.cbegin(), | ||||||
|  |                    layerTypeName_.cend(), | ||||||
|  |                    [&](const std::pair<LayerType, std::string>& pair) -> bool | ||||||
|  |                    { return boost::iequals(pair.second, name); }); | ||||||
|  | 
 | ||||||
|  |    if (result != layerTypeName_.cend()) | ||||||
|  |    { | ||||||
|  |       return result->first; | ||||||
|  |    } | ||||||
|  |    else | ||||||
|  |    { | ||||||
|  |       return LayerType::Unknown; | ||||||
|  |    } | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | std::string GetLayerTypeName(LayerType layerType) | ||||||
|  | { | ||||||
|  |    return layerTypeName_.at(layerType); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | Layer GetLayer(const std::string& name) | ||||||
|  | { | ||||||
|  |    auto result = | ||||||
|  |       std::find_if(layerName_.cbegin(), | ||||||
|  |                    layerName_.cend(), | ||||||
|  |                    [&](const std::pair<Layer, std::string>& pair) -> bool | ||||||
|  |                    { return boost::iequals(pair.second, name); }); | ||||||
|  | 
 | ||||||
|  |    if (result != layerName_.cend()) | ||||||
|  |    { | ||||||
|  |       return result->first; | ||||||
|  |    } | ||||||
|  |    else | ||||||
|  |    { | ||||||
|  |       return Layer::Unknown; | ||||||
|  |    } | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | std::string GetLayerName(Layer layer) | ||||||
|  | { | ||||||
|  |    return layerName_.at(layer); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | } // namespace types
 | ||||||
|  | } // namespace qt
 | ||||||
|  | } // namespace scwx
 | ||||||
							
								
								
									
										39
									
								
								scwx-qt/source/scwx/qt/types/layer_types.hpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								scwx-qt/source/scwx/qt/types/layer_types.hpp
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,39 @@ | ||||||
|  | #pragma once | ||||||
|  | 
 | ||||||
|  | #include <string> | ||||||
|  | 
 | ||||||
|  | namespace scwx | ||||||
|  | { | ||||||
|  | namespace qt | ||||||
|  | { | ||||||
|  | namespace types | ||||||
|  | { | ||||||
|  | 
 | ||||||
|  | enum class LayerType | ||||||
|  | { | ||||||
|  |    Map, | ||||||
|  |    Radar, | ||||||
|  |    Alert, | ||||||
|  |    Placefile, | ||||||
|  |    Information, | ||||||
|  |    Unknown | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | enum class Layer | ||||||
|  | { | ||||||
|  |    MapOverlay, | ||||||
|  |    ColorTable, | ||||||
|  |    MapSymbology, | ||||||
|  |    MapUnderlay, | ||||||
|  |    Unknown | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | LayerType   GetLayerType(const std::string& name); | ||||||
|  | std::string GetLayerTypeName(LayerType layerType); | ||||||
|  | 
 | ||||||
|  | Layer       GetLayer(const std::string& name); | ||||||
|  | std::string GetLayerName(Layer layer); | ||||||
|  | 
 | ||||||
|  | } // namespace types
 | ||||||
|  | } // namespace qt
 | ||||||
|  | } // namespace scwx
 | ||||||
|  | @ -2,8 +2,6 @@ | ||||||
| 
 | 
 | ||||||
| #include <unordered_map> | #include <unordered_map> | ||||||
| 
 | 
 | ||||||
| #include <boost/algorithm/string.hpp> |  | ||||||
| 
 |  | ||||||
| namespace scwx | namespace scwx | ||||||
| { | { | ||||||
| namespace qt | namespace qt | ||||||
|  | @ -11,70 +9,9 @@ namespace qt | ||||||
| namespace types | namespace types | ||||||
| { | { | ||||||
| 
 | 
 | ||||||
| static const std::unordered_map<LayerType, std::string> layerTypeName_ { |  | ||||||
|    {LayerType::Map, "Map"}, |  | ||||||
|    {LayerType::Radar, "Radar"}, |  | ||||||
|    {LayerType::Alert, "Alert"}, |  | ||||||
|    {LayerType::Placefile, "Placefile"}, |  | ||||||
|    {LayerType::Information, "Information"}, |  | ||||||
|    {LayerType::Unknown, "?"}}; |  | ||||||
| 
 |  | ||||||
| static const std::unordered_map<Layer, std::string> layerName_ { |  | ||||||
|    {Layer::MapOverlay, "Map Overlay"}, |  | ||||||
|    {Layer::ColorTable, "Color Table"}, |  | ||||||
|    {Layer::MapSymbology, "Map Symbology"}, |  | ||||||
|    {Layer::MapUnderlay, "Map Underlay"}, |  | ||||||
|    {Layer::Unknown, "?"}}; |  | ||||||
| 
 |  | ||||||
| static const std::unordered_map<MapTime, std::string> mapTimeName_ { | static const std::unordered_map<MapTime, std::string> mapTimeName_ { | ||||||
|    {MapTime::Live, "Live"}, {MapTime::Archive, "Archive"}}; |    {MapTime::Live, "Live"}, {MapTime::Archive, "Archive"}}; | ||||||
| 
 | 
 | ||||||
| LayerType GetLayerType(const std::string& name) |  | ||||||
| { |  | ||||||
|    auto result = |  | ||||||
|       std::find_if(layerTypeName_.cbegin(), |  | ||||||
|                    layerTypeName_.cend(), |  | ||||||
|                    [&](const std::pair<LayerType, std::string>& pair) -> bool |  | ||||||
|                    { return boost::iequals(pair.second, name); }); |  | ||||||
| 
 |  | ||||||
|    if (result != layerTypeName_.cend()) |  | ||||||
|    { |  | ||||||
|       return result->first; |  | ||||||
|    } |  | ||||||
|    else |  | ||||||
|    { |  | ||||||
|       return LayerType::Unknown; |  | ||||||
|    } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| std::string GetLayerTypeName(LayerType layerType) |  | ||||||
| { |  | ||||||
|    return layerTypeName_.at(layerType); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| Layer GetLayer(const std::string& name) |  | ||||||
| { |  | ||||||
|    auto result = |  | ||||||
|       std::find_if(layerName_.cbegin(), |  | ||||||
|                    layerName_.cend(), |  | ||||||
|                    [&](const std::pair<Layer, std::string>& pair) -> bool |  | ||||||
|                    { return boost::iequals(pair.second, name); }); |  | ||||||
| 
 |  | ||||||
|    if (result != layerName_.cend()) |  | ||||||
|    { |  | ||||||
|       return result->first; |  | ||||||
|    } |  | ||||||
|    else |  | ||||||
|    { |  | ||||||
|       return Layer::Unknown; |  | ||||||
|    } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| std::string GetLayerName(Layer layer) |  | ||||||
| { |  | ||||||
|    return layerName_.at(layer); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| std::string GetMapTimeName(MapTime mapTime) | std::string GetMapTimeName(MapTime mapTime) | ||||||
| { | { | ||||||
|    return mapTimeName_.at(mapTime); |    return mapTimeName_.at(mapTime); | ||||||
|  |  | ||||||
|  | @ -9,25 +9,6 @@ namespace qt | ||||||
| namespace types | namespace types | ||||||
| { | { | ||||||
| 
 | 
 | ||||||
| enum class LayerType |  | ||||||
| { |  | ||||||
|    Map, |  | ||||||
|    Radar, |  | ||||||
|    Alert, |  | ||||||
|    Placefile, |  | ||||||
|    Information, |  | ||||||
|    Unknown |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| enum class Layer |  | ||||||
| { |  | ||||||
|    MapOverlay, |  | ||||||
|    ColorTable, |  | ||||||
|    MapSymbology, |  | ||||||
|    MapUnderlay, |  | ||||||
|    Unknown |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| enum class AnimationState | enum class AnimationState | ||||||
| { | { | ||||||
|    Play, |    Play, | ||||||
|  | @ -48,12 +29,6 @@ enum class NoUpdateReason | ||||||
|    InvalidData |    InvalidData | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| LayerType   GetLayerType(const std::string& name); |  | ||||||
| std::string GetLayerTypeName(LayerType layerType); |  | ||||||
| 
 |  | ||||||
| Layer       GetLayer(const std::string& name); |  | ||||||
| std::string GetLayerName(Layer layer); |  | ||||||
| 
 |  | ||||||
| std::string GetMapTimeName(MapTime mapTime); | std::string GetMapTimeName(MapTime mapTime); | ||||||
| 
 | 
 | ||||||
| } // namespace types
 | } // namespace types
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Dan Paulat
						Dan Paulat