
 

// This file is autogenerated. DO NOT EDIT

#pragma once
#include <robotpy_build.h>


#include <../../_impl/include/frc/interfaces/Gyro.h>





namespace rpygen {

using namespace frc;



template <typename CfgBase = EmptyTrampolineCfg>
struct PyTrampolineCfg_frc__Gyro :
    CfgBase
{
    using Base = frc::Gyro;

    using override_base_Calibrate_v = frc::Gyro;
    using override_base_Reset_v = frc::Gyro;
    using override_base_KGetAngle_v = frc::Gyro;
    using override_base_KGetRate_v = frc::Gyro;
    using override_base_KGetRotation2d_v = frc::Gyro;
};


template <typename PyTrampolineBase, typename PyTrampolineCfg>
struct PyTrampoline_frc__Gyro : PyTrampolineBase, virtual py::trampoline_self_life_support {
    using PyTrampolineBase::PyTrampolineBase;



#ifndef RPYGEN_DISABLE_Calibrate_v
    void Calibrate() override {
        using LookupBase = typename PyTrampolineCfg::Base;
        RPYBUILD_OVERRIDE_PURE_NAME(Gyro, PYBIND11_TYPE(void), LookupBase,
            "calibrate", Calibrate, );
    }
#endif

#ifndef RPYGEN_DISABLE_Reset_v
    void Reset() override {
        using LookupBase = typename PyTrampolineCfg::Base;
        RPYBUILD_OVERRIDE_PURE_NAME(Gyro, PYBIND11_TYPE(void), LookupBase,
            "reset", Reset, );
    }
#endif

#ifndef RPYGEN_DISABLE_KGetAngle_v
    double GetAngle() const override {
        using LookupBase = typename PyTrampolineCfg::Base;
        RPYBUILD_OVERRIDE_PURE_NAME(Gyro, PYBIND11_TYPE(double), LookupBase,
            "getAngle", GetAngle, );
    }
#endif

#ifndef RPYGEN_DISABLE_KGetRate_v
    double GetRate() const override {
        using LookupBase = typename PyTrampolineCfg::Base;
        RPYBUILD_OVERRIDE_PURE_NAME(Gyro, PYBIND11_TYPE(double), LookupBase,
            "getRate", GetRate, );
    }
#endif

#ifndef RPYGEN_DISABLE_KGetRotation2d_v
    Rotation2d GetRotation2d() const override {
        using LookupBase = typename PyTrampolineCfg::Base;
        using CxxCallBase = typename PyTrampolineCfg::override_base_KGetRotation2d_v;
        PYBIND11_OVERRIDE_IMPL(PYBIND11_TYPE(Rotation2d), LookupBase,
            "getRotation2d", );
        return CxxCallBase::GetRotation2d();
    }
#endif




};

}; // namespace rpygen
