// <auto-generated />
#nullable enable
#pragma warning disable CS1591

using System;
using System.Diagnostics;
using System.Drawing;
using CounterStrikeSharp;
using CounterStrikeSharp.API.Modules.Events;
using CounterStrikeSharp.API.Modules.Entities;
using CounterStrikeSharp.API.Modules.Memory;
using CounterStrikeSharp.API.Modules.Utils;
using CounterStrikeSharp.API.Core.Attributes;

namespace CounterStrikeSharp.API.Core;

public partial class CSplineConstraint : CPhysConstraint
{
    public CSplineConstraint (IntPtr pointer) : base(pointer) {}

	// m_vAnchorOffsetRestore
	[SchemaMember("CSplineConstraint", "m_vAnchorOffsetRestore")]
	public Vector AnchorOffsetRestore => Schema.GetDeclaredClass<Vector>(this.Handle, "CSplineConstraint", "m_vAnchorOffsetRestore");

	// m_hSplineEntity
	[SchemaMember("CSplineConstraint", "m_hSplineEntity")]
	public CHandle<CBaseEntity> SplineEntity => Schema.GetDeclaredClass<CHandle<CBaseEntity>>(this.Handle, "CSplineConstraint", "m_hSplineEntity");

	// m_bEnableLateralConstraint
	[SchemaMember("CSplineConstraint", "m_bEnableLateralConstraint")]
	public ref bool EnableLateralConstraint => ref Schema.GetRef<bool>(this.Handle, "CSplineConstraint", "m_bEnableLateralConstraint");

	// m_bEnableVerticalConstraint
	[SchemaMember("CSplineConstraint", "m_bEnableVerticalConstraint")]
	public ref bool EnableVerticalConstraint => ref Schema.GetRef<bool>(this.Handle, "CSplineConstraint", "m_bEnableVerticalConstraint");

	// m_bEnableAngularConstraint
	[SchemaMember("CSplineConstraint", "m_bEnableAngularConstraint")]
	public ref bool EnableAngularConstraint => ref Schema.GetRef<bool>(this.Handle, "CSplineConstraint", "m_bEnableAngularConstraint");

	// m_bEnableLimit
	[SchemaMember("CSplineConstraint", "m_bEnableLimit")]
	public ref bool EnableLimit => ref Schema.GetRef<bool>(this.Handle, "CSplineConstraint", "m_bEnableLimit");

	// m_bFireEventsOnPath
	[SchemaMember("CSplineConstraint", "m_bFireEventsOnPath")]
	public ref bool FireEventsOnPath => ref Schema.GetRef<bool>(this.Handle, "CSplineConstraint", "m_bFireEventsOnPath");

	// m_flLinearFrequency
	[SchemaMember("CSplineConstraint", "m_flLinearFrequency")]
	public ref float LinearFrequency => ref Schema.GetRef<float>(this.Handle, "CSplineConstraint", "m_flLinearFrequency");

	// m_flLinarDampingRatio
	[SchemaMember("CSplineConstraint", "m_flLinarDampingRatio")]
	public ref float LinarDampingRatio => ref Schema.GetRef<float>(this.Handle, "CSplineConstraint", "m_flLinarDampingRatio");

	// m_flJointFriction
	[SchemaMember("CSplineConstraint", "m_flJointFriction")]
	public ref float JointFriction => ref Schema.GetRef<float>(this.Handle, "CSplineConstraint", "m_flJointFriction");

	// m_vPreSolveAnchorPos
	[SchemaMember("CSplineConstraint", "m_vPreSolveAnchorPos")]
	public Vector PreSolveAnchorPos => Schema.GetDeclaredClass<Vector>(this.Handle, "CSplineConstraint", "m_vPreSolveAnchorPos");

}
