return synced;
}
+void TestSyncObject::Wait()
+{
+ mTrace.PushCall("SyncObject::Wait", ""); // Trace the method
+}
+
+void TestSyncObject::ClientWait()
+{
+ mTrace.PushCall("SyncObject::ClientWait", ""); // Trace the method
+}
+
TestGraphicsSyncImplementation::TestGraphicsSyncImplementation()
{
Initialize();
#define TEST_SYNC_IMPLEMENTATION_H
/*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2024 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
public:
TestSyncObject(TraceCallStack& trace);
~TestSyncObject() override;
- bool IsSynced() override;
+ bool IsSynced() override;
+ void Wait() override;
+ void ClientWait() override;
+
bool synced;
TraceCallStack& mTrace;
};
#define DALI_TEST_GRAPHICS_SYNC_OBJECT_H_
/*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2024 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#include <dali/graphics-api/graphics-sync-object-create-info.h>
#include <dali/graphics-api/graphics-sync-object.h>
-
-#include <test-graphics-sync-impl.h>
+#include "test-graphics-sync-impl.h"
namespace Dali
{
#define DALI_INTEGRATION_GRAPHICS_SYNC_ABSTRACTION_H
/*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2024 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* can now be destroyed)
*/
virtual bool IsSynced() = 0;
+
+ /**
+ * Wait in the GPU for the synchronisation object to be signalled (but can timeout)
+ */
+ virtual void Wait() = 0;
+
+ /**
+ * Wait in the CPU for the synchronisation object to be signalled.
+ * This will block the render thread - use with caution.
+ */
+ virtual void ClientWait() = 0;
};
/**