11/*
2- * Copyright 2019-2022 Diligent Graphics LLC
2+ * Copyright 2019-2025 Diligent Graphics LLC
33 * Copyright 2015-2019 Egor Yusov
44 *
55 * Licensed under the Apache License, Version 2.0 (the "License");
@@ -56,10 +56,12 @@ namespace Diligent
5656 void ClassName::QueryInterface (const INTERFACE_ID& IID, IObject** ppInterface) \
5757 IMPLEMENT_QUERY_INTERFACE_BODY(InterfaceID, ParentClassName)
5858
59+ // clang-format off
5960#define IMPLEMENT_QUERY_INTERFACE_IN_PLACE (InterfaceID, ParentClassName ) \
6061 virtual void DILIGENT_CALL_TYPE QueryInterface (const INTERFACE_ID& IID, IObject** ppInterface) override \
61- IMPLEMENT_QUERY_INTERFACE_BODY(InterfaceID, ParentClassName)
62-
62+ IMPLEMENT_QUERY_INTERFACE_BODY(InterfaceID, ParentClassName) \
63+ using IObject::QueryInterface;
64+ // clang-format on
6365
6466#define IMPLEMENT_QUERY_INTERFACE2_BODY (InterfaceID1, InterfaceID2, ParentClassName ) \
6567 { \
@@ -80,9 +82,12 @@ namespace Diligent
8082 void ClassName::QueryInterface (const INTERFACE_ID& IID, IObject** ppInterface) \
8183 IMPLEMENT_QUERY_INTERFACE2_BODY(InterfaceID1, InterfaceID2, ParentClassName)
8284
85+ // clang-format off
8386#define IMPLEMENT_QUERY_INTERFACE2_IN_PLACE (InterfaceID1, InterfaceID2, ParentClassName ) \
8487 virtual void DILIGENT_CALL_TYPE QueryInterface (const INTERFACE_ID& IID, IObject** ppInterface) override \
85- IMPLEMENT_QUERY_INTERFACE2_BODY(InterfaceID1, InterfaceID2, ParentClassName)
88+ IMPLEMENT_QUERY_INTERFACE2_BODY(InterfaceID1, InterfaceID2, ParentClassName) \
89+ using IObject::QueryInterface;
90+ // clang-format on
8691
8792// / Template class implementing base functionality for an object
8893template <typename BaseInterface>
0 commit comments