omni/kit/exec/core/unstable/IExecutionController.gen.h

File members: omni/kit/exec/core/unstable/IExecutionController.gen.h

// Copyright (c) 2022-2024, NVIDIA CORPORATION. All rights reserved.
//
// NVIDIA CORPORATION and its licensors retain all intellectual property
// and proprietary rights in and to this software, related documentation
// and any modifications thereto. Any use, reproduction, disclosure or
// distribution of this software and related documentation without an express
// license agreement from NVIDIA CORPORATION is strictly prohibited.
//
// --------- Warning: This is a build system generated file. ----------
//

#include <omni/core/Interface.h>
#include <omni/core/OmniAttr.h>
#include <omni/core/ResultError.h>

#include <functional>
#include <type_traits>
#include <utility>

#ifndef OMNI_BIND_INCLUDE_INTERFACE_IMPL

template <>
class omni::core::Generated<omni::kit::exec::core::unstable::IExecutionController_abi>
    : public omni::kit::exec::core::unstable::IExecutionController_abi
{
public:
    OMNI_PLUGIN_INTERFACE("omni::kit::exec::core::unstable::IExecutionController")

    void compile() noexcept;

    CARB_NODISCARD omni::graph::exec::unstable::Status executeDefinition(
        omni::core::ObjectParam<omni::graph::exec::unstable::IDef> execDef) noexcept;

    CARB_NODISCARD omni::graph::exec::unstable::Status execute(double currentTime,
                                                               float elapsedSecs,
                                                               double absoluteSimTime,
                                                               const omni::kit::StageUpdateSettings* updateSettings) noexcept;

    omni::kit::exec::core::unstable::IExecutionContext* getContext() noexcept;

    omni::graph::exec::unstable::IGraph* getGraph() noexcept;
};

#endif

#ifndef OMNI_BIND_INCLUDE_INTERFACE_DECL

inline void omni::core::Generated<omni::kit::exec::core::unstable::IExecutionController_abi>::compile() noexcept
{
    compile_abi();
}

inline omni::graph::exec::unstable::Status omni::core::Generated<omni::kit::exec::core::unstable::IExecutionController_abi>::
    executeDefinition(omni::core::ObjectParam<omni::graph::exec::unstable::IDef> execDef) noexcept
{
    return executeDefinition_abi(execDef.get());
}

inline omni::graph::exec::unstable::Status omni::core::Generated<omni::kit::exec::core::unstable::IExecutionController_abi>::execute(
    double currentTime, float elapsedSecs, double absoluteSimTime, const omni::kit::StageUpdateSettings* updateSettings) noexcept
{
    return execute_abi(currentTime, elapsedSecs, absoluteSimTime, updateSettings);
}

inline omni::kit::exec::core::unstable::IExecutionContext* omni::core::Generated<
    omni::kit::exec::core::unstable::IExecutionController_abi>::getContext() noexcept
{
    return getContext_abi();
}

inline omni::graph::exec::unstable::IGraph* omni::core::Generated<
    omni::kit::exec::core::unstable::IExecutionController_abi>::getGraph() noexcept
{
    return getGraph_abi();
}

#endif

#undef OMNI_BIND_INCLUDE_INTERFACE_DECL
#undef OMNI_BIND_INCLUDE_INTERFACE_IMPL