omni/platforminfo/ICpuInfo.gen.h

File members: omni/platforminfo/ICpuInfo.gen.h

// Copyright (c) 2021-2022, 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/OmniAttr.h>
#include <omni/core/Interface.h>
#include <omni/core/ResultError.h>

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

#ifndef OMNI_BIND_INCLUDE_INTERFACE_IMPL

template <>
class omni::core::Generated<omni::platforminfo::ICpuInfo_abi> : public omni::platforminfo::ICpuInfo_abi
{
public:
    OMNI_PLUGIN_INTERFACE("omni::platforminfo::ICpuInfo")

    size_t getCpuPackageCount() noexcept;

    size_t getTotalPhysicalCoreCount() noexcept;

    size_t getTotalLogicalCoreCount() noexcept;

    size_t getPhysicalCoresPerPackage() noexcept;

    size_t getLogicalCoresPerPackage() noexcept;

    bool isFeatureSupported(omni::platforminfo::CpuFeature feature) noexcept;

    const char* getPrettyName(size_t cpuIndex) noexcept;

    const char* getIdentifier(size_t cpuIndex) noexcept;

    const char* getVendor(size_t cpuIndex) noexcept;

    uint64_t getProcessorMask(size_t cpuIndex) noexcept;
};

#endif

#ifndef OMNI_BIND_INCLUDE_INTERFACE_DECL

inline size_t omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getCpuPackageCount() noexcept
{
    return getCpuPackageCount_abi();
}

inline size_t omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getTotalPhysicalCoreCount() noexcept
{
    return getTotalPhysicalCoreCount_abi();
}

inline size_t omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getTotalLogicalCoreCount() noexcept
{
    return getTotalLogicalCoreCount_abi();
}

inline size_t omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getPhysicalCoresPerPackage() noexcept
{
    return getPhysicalCoresPerPackage_abi();
}

inline size_t omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getLogicalCoresPerPackage() noexcept
{
    return getLogicalCoresPerPackage_abi();
}

inline bool omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::isFeatureSupported(
    omni::platforminfo::CpuFeature feature) noexcept
{
    return isFeatureSupported_abi(feature);
}

inline const char* omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getPrettyName(size_t cpuIndex) noexcept
{
    return getPrettyName_abi(cpuIndex);
}

inline const char* omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getIdentifier(size_t cpuIndex) noexcept
{
    return getIdentifier_abi(cpuIndex);
}

inline const char* omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getVendor(size_t cpuIndex) noexcept
{
    return getVendor_abi(cpuIndex);
}

inline uint64_t omni::core::Generated<omni::platforminfo::ICpuInfo_abi>::getProcessorMask(size_t cpuIndex) noexcept
{
    return getProcessorMask_abi(cpuIndex);
}

#endif

#undef OMNI_BIND_INCLUDE_INTERFACE_DECL
#undef OMNI_BIND_INCLUDE_INTERFACE_IMPL