SF: libsurfaceflinger_unittest should skip SF ctor
This reduces the cost of constructing a SurfaceFlinger instance for each
test, but it means the tests must take care to set up all internal state
that is needed for each test.
[Test execution time reduced from 6.1 to 3.1ms]
Test: libsurfaceflinger_unittest passes on Pixel XL
Bug: 74827900
Change-Id: I7eed4fd274cae521fe0f22b655cf3343cee66342
diff --git a/services/surfaceflinger/SurfaceFlinger.h b/services/surfaceflinger/SurfaceFlinger.h
index 392acaa..db541fe 100644
--- a/services/surfaceflinger/SurfaceFlinger.h
+++ b/services/surfaceflinger/SurfaceFlinger.h
@@ -265,6 +265,9 @@
return "SurfaceFlinger";
}
+ struct SkipInitializationTag {};
+ static constexpr SkipInitializationTag SkipInitialization;
+ explicit SurfaceFlinger(SkipInitializationTag) ANDROID_API;
SurfaceFlinger() ANDROID_API;
// must be called before clients can connect