replicant-frameworks_native/include/private/gui/SyncFeatures.h
Mathias Agopian ca08833d5e don't use compile-time configuration of libgui as much as possible
We now detect at runtime which sync features to use, which
allows us to remove a lot of the compile-time configuration
options. There  is still one option though, to disable
KHR_fence_sync on some devices (which are more efficient
without it).

- added a backdoor to get the vendor's EGL strings

the new logic is:
- use always ANDROID_native_fence_sync if available
- fallback to KHR_fence_sync if available and not disabled
  by the compile-time option
- use KHR_wait_sync if available and either of the above is
  enabled

Change-Id: I9c4b49d9ff1151faf902cc93bd53ea5f205aaabf
2013-03-29 15:33:47 -07:00

46 lines
1.3 KiB
C++

/*
* Copyright (C) 2013 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ANDROID_GUI_SYNC_FEATURES_H
#define ANDROID_GUI_SYNC_FEATURES_H
#include <utils/Singleton.h>
#include <utils/String8.h>
namespace android {
// ----------------------------------------------------------------------------
class SyncFeatures : public Singleton<SyncFeatures> {
friend class Singleton<SyncFeatures>;
bool mHasNativeFenceSync;
bool mHasFenceSync;
bool mHasWaitSync;
String8 mString;
SyncFeatures();
public:
bool useNativeFenceSync() const;
bool useFenceSync() const;
bool useWaitSync() const;
String8 toString() const;
};
// ----------------------------------------------------------------------------
}; // namespace android
#endif // ANDROID_GUI_SYNC_FEATURES_H