#ifndef SG_LEDVIDEOWALL #define SG_LEDVIDEOWALL #include "Screen.h" class LEDVideoWall : public Screen { public: virtual ~LEDVideoWall(); // Named constructor idiom https://isocpp.org/wiki/faq/ctors#named-ctor-idiom static LEDVideoWall* Freeform(mm panel_width, mm panel_height, mm wall_max_width, mm wall_max_height); static LEDVideoWall* Aspect(mm panel_width, mm panel_height, unsigned int aspect_width, unsigned int aspect_height); static LEDVideoWall* fromCommandLine(); protected: unsigned int columns_of_panels; unsigned int rows_of_panels; LEDVideoWall(mm width, mm height, unsigned int columns_of_panels, unsigned int rows_of_panels); virtual std::string extraOutput() const; }; #endif /* SG_LEDVIDEOWALL */