mirror of
				https://github.com/hyperion-project/hyperion.ng.git
				synced 2025-03-01 10:33:28 +00:00 
			
		
		
		
	Moved ImageToLedsMap from include to libsrc. Moved instantiation of objects to Hyperion (no JSON required outside this class).
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| 
 | |
| #pragma once
 | |
| 
 | |
| // STL includes
 | |
| #include <ctime>
 | |
| #include <string>
 | |
| #include <vector>
 | |
| 
 | |
| // Local includes
 | |
| #include <utils/RgbColor.h>
 | |
| 
 | |
| // Forward class declarations
 | |
| namespace Json { class Value; }
 | |
| 
 | |
| /**
 | |
|  * The Led structure contains the definition of the image portion used to determine a single led's
 | |
|  * color.
 | |
|  * <pre>
 | |
|  * |--------------------image--|
 | |
|  * | minX  maxX                |
 | |
|  * |  |-----|maxY              |
 | |
|  * |  |     |                  |
 | |
|  * |  |-----|minY              |
 | |
|  * |                           |
 | |
|  * |                           |
 | |
|  * |                           |
 | |
|  * |---------------------------|
 | |
|  * <endpre>
 | |
|  */
 | |
| struct Led
 | |
| {
 | |
| 	/** The index of the led */
 | |
| 	unsigned index;
 | |
| 
 | |
| 	/** The minimum vertical scan line included for this leds color */
 | |
| 	double minX_frac;
 | |
| 	/** The maximum vertical scan line included for this leds color */
 | |
| 	double maxX_frac;
 | |
| 	/** The minimum horizontal scan line included for this leds color */
 | |
| 	double minY_frac;
 | |
| 	/** The maximum horizontal scan line included for this leds color */
 | |
| 	double maxY_frac;
 | |
| };
 | |
| 
 | |
| class LedString
 | |
| {
 | |
| public:
 | |
| 	static LedString construct(const Json::Value& ledConfig);
 | |
| 
 | |
| 	LedString();
 | |
| 
 | |
| 	~LedString();
 | |
| 
 | |
| 	std::vector<Led>& leds();
 | |
| 
 | |
| 	const std::vector<Led>& leds() const;
 | |
| 
 | |
| private:
 | |
| 	std::vector<Led> mLeds;
 | |
| };
 |