1 #pragma once 2 3 #ifndef COM_ANDROID_GRAPHICS_BOOTANIMATION_FLAGS 4 #define COM_ANDROID_GRAPHICS_BOOTANIMATION_FLAGS(FLAG) COM_ANDROID_GRAPHICS_BOOTANIMATION_FLAGS_##FLAG 5 #endif 6 7 #ifndef COM_ANDROID_GRAPHICS_BOOTANIMATION_FLAGS_MULTIDISPLAY 8 #define COM_ANDROID_GRAPHICS_BOOTANIMATION_FLAGS_MULTIDISPLAY false 9 #endif 10 11 #ifdef __cplusplus 12 13 #include <memory> 14 15 namespace com::android::graphics::bootanimation::flags { 16 17 class flag_provider_interface { 18 public: 19 virtual ~flag_provider_interface() = default; 20 virtual bool multidisplay() = 0; 21 }; 22 23 extern std::unique_ptr<flag_provider_interface> provider_; 24 25 multidisplay()26inline bool multidisplay() { 27 return COM_ANDROID_GRAPHICS_BOOTANIMATION_FLAGS_MULTIDISPLAY; 28 } 29 30 } 31 32 extern "C" { 33 #endif // __cplusplus 34 35 36 bool com_android_graphics_bootanimation_flags_multidisplay(); 37 38 #ifdef __cplusplus 39 } // extern "C" 40 #endif 41 42